diff --git a/appinfo/info.xml b/appinfo/info.xml index c543b8f18..8fed55605 100644 --- a/appinfo/info.xml +++ b/appinfo/info.xml @@ -5,7 +5,7 @@ Photos Your memories under your control Your memories under your control - 1.7.1 + 1.8.0 agpl John Molakvoæ Photos @@ -19,7 +19,7 @@ https://github.com/nextcloud/photos.git - + diff --git a/js/photos-node_modules_nextcloud_vue_dist_ncvuecomponents_js-src_views_Tags_vue.js b/js/photos-node_modules_nextcloud_vue_dist_ncvuecomponents_js-src_views_Tags_vue.js deleted file mode 100644 index d56c3d7c4..000000000 --- a/js/photos-node_modules_nextcloud_vue_dist_ncvuecomponents_js-src_views_Tags_vue.js +++ /dev/null @@ -1,1119 +0,0 @@ -(self["webpackChunkphotos"] = self["webpackChunkphotos"] || []).push([["node_modules_nextcloud_vue_dist_ncvuecomponents_js-src_views_Tags_vue"],{ - -/***/ "./node_modules/@nextcloud/vue/dist/ncvuecomponents.js": -/*!*************************************************************!*\ - !*** ./node_modules/@nextcloud/vue/dist/ncvuecomponents.js ***! - \*************************************************************/ -/***/ (() => { - -throw new Error("Module build failed: Error: ENOENT: no such file or directory, open '/home/admin/Docker/apps2/photos/node_modules/@nextcloud/vue/dist/ncvuecomponents.js'"); - -/***/ }), - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Tag.vue?vue&type=script&lang=js&": -/*!*************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Tag.vue?vue&type=script&lang=js& ***! - \*************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! vuex */ "./node_modules/vuex/dist/vuex.esm.js"); -/* harmony import */ var _services_TaggedImages__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../services/TaggedImages */ "./src/services/TaggedImages.js"); -/* harmony import */ var _utils_CancelableRequest__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/CancelableRequest */ "./src/utils/CancelableRequest.js"); -/* harmony import */ var _FolderTagPreview__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./FolderTagPreview */ "./src/components/FolderTagPreview.vue"); -/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js"); -function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } - -function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } - -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } - -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'Tag', - components: { - FolderTagPreview: _FolderTagPreview__WEBPACK_IMPORTED_MODULE_2__["default"] - }, - inheritAttrs: false, - props: { - item: { - type: Object, - required: true - } - }, - data: function data() { - return { - cancelRequest: null - }; - }, - computed: _objectSpread(_objectSpread({}, (0,vuex__WEBPACK_IMPORTED_MODULE_3__.mapGetters)(['files', 'tags'])), {}, { - // files list of the current folder - folderContent: function folderContent() { - return this.tags[this.item.injected.id].files; - }, - fileList: function fileList() { - var _this = this; - - return this.folderContent ? this.folderContent.map(function (id) { - return _this.files[id]; - }).filter(function (file) { - return !!file; - }).slice(0, 4) // only get the 4 first images - : []; - } - }), - beforeDestroy: function beforeDestroy() { - // cancel any pending requests - if (this.cancelRequest) { - this.cancelRequest('Navigated away'); - } - }, - created: function created() { - var _this2 = this; - - return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() { - var _cancelableRequest, request, cancel, files; - - return regeneratorRuntime.wrap(function _callee$(_context) { - while (1) { - switch (_context.prev = _context.next) { - case 0: - // init cancellable request - _cancelableRequest = (0,_utils_CancelableRequest__WEBPACK_IMPORTED_MODULE_1__["default"])(_services_TaggedImages__WEBPACK_IMPORTED_MODULE_0__["default"]), request = _cancelableRequest.request, cancel = _cancelableRequest.cancel; - _this2.cancelRequest = cancel; - _context.prev = 2; - _context.next = 5; - return request(_this2.item.injected.id); - - case 5: - files = _context.sent; - - _this2.$store.dispatch('updateTag', { - id: _this2.item.injected.id, - files: files - }); - - _this2.$store.dispatch('appendFiles', files); - - _context.next = 13; - break; - - case 10: - _context.prev = 10; - _context.t0 = _context["catch"](2); - - if (_context.t0.response && _context.t0.response.status) { - console.error('Failed to get folder content', _this2.item.injected.id, _context.t0.response); - } - - case 13: - _context.prev = 13; - _this2.cancelRequest = null; - return _context.finish(13); - - case 16: - case "end": - return _context.stop(); - } - } - }, _callee, null, [[2, 10, 13, 16]]); - }))(); - } -}); - -/***/ }), - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/Tags.vue?vue&type=script&lang=js&": -/*!*********************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/Tags.vue?vue&type=script&lang=js& ***! - \*********************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! vuex */ "./node_modules/vuex/dist/vuex.esm.js"); -/* harmony import */ var vue_virtual_grid__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue-virtual-grid */ "./node_modules/vue-virtual-grid/dist/vue-virtual-grid.es.js"); -/* harmony import */ var _services_SystemTags__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../services/SystemTags */ "./src/services/SystemTags.js"); -/* harmony import */ var _services_TaggedImages__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../services/TaggedImages */ "./src/services/TaggedImages.js"); -/* harmony import */ var _components_EmptyContent__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../components/EmptyContent */ "./src/components/EmptyContent.vue"); -/* harmony import */ var _components_Tag__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../components/Tag */ "./src/components/Tag.vue"); -/* harmony import */ var _components_File__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../components/File */ "./src/components/File.vue"); -/* harmony import */ var _components_Navigation__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../components/Navigation */ "./src/components/Navigation.vue"); -/* harmony import */ var _mixins_GridConfig__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../mixins/GridConfig */ "./src/mixins/GridConfig.js"); -/* harmony import */ var _utils_CancelableRequest__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../utils/CancelableRequest */ "./src/utils/CancelableRequest.js"); -/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js"); -function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } - -function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } - -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } - -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - - - - - - - - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'Tags', - components: { - VirtualGrid: vue_virtual_grid__WEBPACK_IMPORTED_MODULE_0__["default"], - EmptyContent: _components_EmptyContent__WEBPACK_IMPORTED_MODULE_3__["default"], - Navigation: _components_Navigation__WEBPACK_IMPORTED_MODULE_6__["default"] - }, - mixins: [_mixins_GridConfig__WEBPACK_IMPORTED_MODULE_7__["default"]], - props: { - rootTitle: { - type: String, - required: true - }, - path: { - type: String, - default: '' - }, - isRoot: { - type: Boolean, - default: true - } - }, - data: function data() { - return { - error: null, - cancelRequest: null, - loading: false - }; - }, - computed: _objectSpread(_objectSpread({}, (0,vuex__WEBPACK_IMPORTED_MODULE_9__.mapGetters)(['files', 'tags', 'tagsNames'])), {}, { - // current tag id from current path - tagId: function tagId() { - return this.$store.getters.tagId(this.path); - }, - // current tag - tag: function tag() { - return this.tags[this.tagId]; - }, - tagsList: function tagsList() { - var _this = this; - - return Object.values(this.tagsNames).map(function (tagsId) { - return _this.tags[tagsId]; - }); - }, - // files list of the current tag - fileList: function fileList() { - var _this2 = this; - - return this.tag && this.tag.files.map(function (id) { - return _this2.files[id]; - }).filter(function (file) { - return !!file; - }); - }, - contentList: function contentList() { - var _this3 = this; - - if (this.isRoot) { - return this.tagsList.flatMap(function (tag) { - return tag.id === '' ? [] : [{ - id: "tag-".concat(tag.id), - injected: _objectSpread({}, tag), - width: 256, - height: 256, - columnSpan: 1, - renderComponent: _components_Tag__WEBPACK_IMPORTED_MODULE_4__["default"] - }]; - }); - } - - return this.fileList.map(function (file) { - return { - id: "file-".concat(file.fileid), - injected: _objectSpread(_objectSpread({}, file), {}, { - list: _this3.fileList - }), - width: 256, - height: 256, - columnSpan: 1, - renderComponent: _components_File__WEBPACK_IMPORTED_MODULE_5__["default"] - }; - }); - }, - isEmpty: function isEmpty() { - if (this.isRoot) { - return Object.keys(this.tagsNames).length === 0; - } - - return this.fileList.length === 0; - } - }), - watch: { - path: function path() { - var _this4 = this; - - return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() { - return regeneratorRuntime.wrap(function _callee$(_context) { - while (1) { - switch (_context.prev = _context.next) { - case 0: - if (_this4.tagId) { - _context.next = 3; - break; - } - - _context.next = 3; - return _this4.fetchRootContent(); - - case 3: - // if we're not in the root, we fetch the data - if (!_this4.isRoot) { - _this4.fetchContent(); - } - - case 4: - case "end": - return _context.stop(); - } - } - }, _callee); - }))(); - } - }, - beforeDestroy: function beforeDestroy() { - // cancel any pending requests - if (this.cancelRequest) { - this.cancelRequest('Navigated away'); - } - }, - beforeMount: function beforeMount() { - var _this5 = this; - - return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() { - return regeneratorRuntime.wrap(function _callee2$(_context2) { - while (1) { - switch (_context2.prev = _context2.next) { - case 0: - if (_this5.tagId) { - _context2.next = 3; - break; - } - - _context2.next = 3; - return _this5.fetchRootContent(); - - case 3: - // if we're not in the root, we fetch the data - if (!_this5.isRoot) { - _this5.fetchContent(); - } - - case 4: - case "end": - return _context2.stop(); - } - } - }, _callee2); - }))(); - }, - methods: { - fetchRootContent: function fetchRootContent() { - var _this6 = this; - - return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee3() { - var _cancelableRequest, request, cancel, tags; - - return regeneratorRuntime.wrap(function _callee3$(_context3) { - while (1) { - switch (_context3.prev = _context3.next) { - case 0: - // cancel any pending requests - if (_this6.cancelRequest) { - _this6.cancelRequest('Changed folder'); - } // close any potential opened viewer - - - OCA.Viewer.close(); // if we don't already have some cached data let's show a loader - - if (!_this6.tags[_this6.tagId]) { - _this6.loading = true; - } - - _this6.error = null; // init cancellable request - - _cancelableRequest = (0,_utils_CancelableRequest__WEBPACK_IMPORTED_MODULE_8__["default"])(_services_SystemTags__WEBPACK_IMPORTED_MODULE_1__["default"]), request = _cancelableRequest.request, cancel = _cancelableRequest.cancel; - _this6.cancelRequest = cancel; - _context3.prev = 6; - _context3.next = 9; - return request(); - - case 9: - tags = _context3.sent; - - _this6.$store.dispatch('updateTags', tags); - - _context3.next = 17; - break; - - case 13: - _context3.prev = 13; - _context3.t0 = _context3["catch"](6); - console.error(_context3.t0); - _this6.error = true; - - case 17: - _context3.prev = 17; - // done loading - _this6.loading = false; - _this6.cancelRequest = null; - return _context3.finish(17); - - case 21: - case "end": - return _context3.stop(); - } - } - }, _callee3, null, [[6, 13, 17, 21]]); - }))(); - }, - fetchContent: function fetchContent() { - var _this7 = this; - - return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee4() { - var _cancelableRequest2, request, cancel, files; - - return regeneratorRuntime.wrap(function _callee4$(_context4) { - while (1) { - switch (_context4.prev = _context4.next) { - case 0: - // cancel any pending requests - if (_this7.cancelRequest) { - _this7.cancelRequest(); - } // close any potential opened viewer - - - OCA.Viewer.close(); // if we don't already have some cached data let's show a loader - - if (!_this7.tags[_this7.tagId]) { - _this7.loading = true; - } - - _this7.error = null; // init cancellable request - - _cancelableRequest2 = (0,_utils_CancelableRequest__WEBPACK_IMPORTED_MODULE_8__["default"])(_services_TaggedImages__WEBPACK_IMPORTED_MODULE_2__["default"]), request = _cancelableRequest2.request, cancel = _cancelableRequest2.cancel; - _this7.cancelRequest = cancel; - _context4.prev = 6; - _context4.next = 9; - return request(_this7.tagId); - - case 9: - files = _context4.sent; - - _this7.$store.dispatch('updateTag', { - id: _this7.tagId, - files: files - }); - - _this7.$store.dispatch('appendFiles', files); - - _context4.next = 18; - break; - - case 14: - _context4.prev = 14; - _context4.t0 = _context4["catch"](6); - console.error(_context4.t0); - _this7.error = true; - - case 18: - _context4.prev = 18; - // done loading - _this7.loading = false; - _this7.cancelRequest = null; - return _context4.finish(18); - - case 22: - case "end": - return _context4.stop(); - } - } - }, _callee4, null, [[6, 14, 18, 22]]); - }))(); - } - } -}); - -/***/ }), - -/***/ "./src/services/SystemTags.js": -/*!************************************!*\ - !*** ./src/services/SystemTags.js ***! - \************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* export default binding */ __WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _DavClient__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./DavClient */ "./src/services/DavClient.js"); -/* harmony import */ var _utils_fileUtils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/fileUtils */ "./src/utils/fileUtils.js"); -function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } - -function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } - -/** - * @copyright Copyright (c) 2019 John Molakvoæ - * - * @author John Molakvoæ - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ - - -/** - * List system tags - * - * @param {string} path the path relative to the user root - * @param {object} [options] optional options for axios - * @return {Array} the file list - */ - -/* harmony default export */ function __WEBPACK_DEFAULT_EXPORT__(_x) { - return _ref.apply(this, arguments); -} - -function _ref() { - _ref = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(path) { - var options, - response, - _args = arguments; - return regeneratorRuntime.wrap(function _callee$(_context) { - while (1) { - switch (_context.prev = _context.next) { - case 0: - options = _args.length > 1 && _args[1] !== undefined ? _args[1] : {}; - _context.next = 3; - return _DavClient__WEBPACK_IMPORTED_MODULE_0__["default"].getDirectoryContents('/systemtags/', Object.assign({}, { - data: "\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t", - details: true - }, options)); - - case 3: - response = _context.sent; - return _context.abrupt("return", response.data.map(function (data) { - return (0,_utils_fileUtils__WEBPACK_IMPORTED_MODULE_1__.genFileInfo)(data); - })); - - case 5: - case "end": - return _context.stop(); - } - } - }, _callee); - })); - return _ref.apply(this, arguments); -} - -/***/ }), - -/***/ "./src/services/TaggedImages.js": -/*!**************************************!*\ - !*** ./src/services/TaggedImages.js ***! - \**************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* export default binding */ __WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _utils_fileUtils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils/fileUtils */ "./src/utils/fileUtils.js"); -/* harmony import */ var _nextcloud_auth__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/auth */ "./node_modules/@nextcloud/auth/dist/index.js"); -/* harmony import */ var _DavRequest__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./DavRequest */ "./src/services/DavRequest.js"); -/* harmony import */ var _AllowedMimes__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./AllowedMimes */ "./src/services/AllowedMimes.js"); -/* harmony import */ var _DavClient__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./DavClient */ "./src/services/DavClient.js"); -function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } - -function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } - -/** - * @copyright Copyright (c) 2019 John Molakvoæ - * - * @author John Molakvoæ - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ - - - - - -/** - * Get tagged files based on provided tag id - * - * @param {number} id the tag id to filter - * @param {object} [options] optional options for axios - * @return {Array} the file list - */ - -/* harmony default export */ function __WEBPACK_DEFAULT_EXPORT__(_x) { - return _ref.apply(this, arguments); -} - -function _ref() { - _ref = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(id) { - var options, - prefixPath, - response, - _args = arguments; - return regeneratorRuntime.wrap(function _callee$(_context) { - while (1) { - switch (_context.prev = _context.next) { - case 0: - options = _args.length > 1 && _args[1] !== undefined ? _args[1] : {}; - options = Object.assign({ - method: 'REPORT', - data: "\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t".concat(_DavRequest__WEBPACK_IMPORTED_MODULE_2__.props, "\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t").concat(id, "\n\t\t\t\t\n\t\t\t"), - details: true - }, options); - prefixPath = "/files/".concat((0,_nextcloud_auth__WEBPACK_IMPORTED_MODULE_1__.getCurrentUser)().uid); - _context.next = 5; - return _DavClient__WEBPACK_IMPORTED_MODULE_4__["default"].getDirectoryContents(prefixPath, options); - - case 5: - response = _context.sent; - return _context.abrupt("return", response.data.map(function (data) { - return (0,_utils_fileUtils__WEBPACK_IMPORTED_MODULE_0__.genFileInfo)(data); - }) // filter out unwanted mime because server REPORT service only support - // hardcoded props and mime is not one of them - // https://github.com/nextcloud/server/blob/5bf3d1bb384da56adbf205752be8f840aac3b0c5/apps/dav/lib/Connector/Sabre/FilesReportPlugin.php#L274 - .filter(function (file) { - return file.mime && _AllowedMimes__WEBPACK_IMPORTED_MODULE_3__["default"].indexOf(file.mime) !== -1; - }) // remove prefix path from full file path - .map(function (data) { - return Object.assign({}, data, { - filename: data.filename.replace(prefixPath, '') - }); - })); - - case 7: - case "end": - return _context.stop(); - } - } - }, _callee); - })); - return _ref.apply(this, arguments); -} - -/***/ }), - -/***/ "./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!./src/views/Tags.vue?vue&type=style&index=0&id=730c32d3&lang=scss&scoped=true&": -/*!*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/views/Tags.vue?vue&type=style&index=0&id=730c32d3&lang=scss&scoped=true& ***! - \*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, "@charset \"UTF-8\";\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ \n *\n * @author John Molakvoæ \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 .\n *\n */\n@media (min-width: 0px) and (max-width: 400px) {\n.grid-container[data-v-730c32d3] {\n padding: 0px 8px 256px 8px;\n}\n}\n@media (min-width: 400px) and (max-width: 700px) {\n.grid-container[data-v-730c32d3] {\n padding: 0px 8px 256px 8px;\n}\n}\n@media (min-width: 700px) and (max-width: 1024px) {\n.grid-container[data-v-730c32d3] {\n padding: 0px 44px 256px 44px;\n}\n}\n@media (min-width: 1024px) and (max-width: 1280px) {\n.grid-container[data-v-730c32d3] {\n padding: 0px 44px 256px 44px;\n}\n}\n@media (min-width: 1280px) and (max-width: 1440px) {\n.grid-container[data-v-730c32d3] {\n padding: 0px 66px 256px 66px;\n}\n}\n@media (min-width: 1440px) and (max-width: 1600px) {\n.grid-container[data-v-730c32d3] {\n padding: 0px 66px 256px 66px;\n}\n}\n@media (min-width: 1600px) and (max-width: 2048px) {\n.grid-container[data-v-730c32d3] {\n padding: 0px 66px 256px 66px;\n}\n}\n@media (min-width: 2048px) and (max-width: 2560px) {\n.grid-container[data-v-730c32d3] {\n padding: 0px 88px 256px 88px;\n}\n}\n@media (min-width: 2560px) and (max-width: 3440px) {\n.grid-container[data-v-730c32d3] {\n padding: 0px 88px 256px 88px;\n}\n}\n@media (min-width: 3440px) {\n.grid-container[data-v-730c32d3] {\n padding: 0px 88px 256px 88px;\n}\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/views/Tags.vue?vue&type=style&index=0&id=730c32d3&lang=scss&scoped=true&": -/*!*************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/views/Tags.vue?vue&type=style&index=0&id=730c32d3&lang=scss&scoped=true& ***! - \*************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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_Tags_vue_vue_type_style_index_0_id_730c32d3_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../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!./Tags.vue?vue&type=style&index=0&id=730c32d3&lang=scss&scoped=true& */ "./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!./src/views/Tags.vue?vue&type=style&index=0&id=730c32d3&lang=scss&scoped=true&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_Tags_vue_vue_type_style_index_0_id_730c32d3_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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_Tags_vue_vue_type_style_index_0_id_730c32d3_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_Tags_vue_vue_type_style_index_0_id_730c32d3_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_Tags_vue_vue_type_style_index_0_id_730c32d3_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./src/components/Tag.vue": -/*!********************************!*\ - !*** ./src/components/Tag.vue ***! - \********************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _Tag_vue_vue_type_template_id_bb7ceecc___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Tag.vue?vue&type=template&id=bb7ceecc& */ "./src/components/Tag.vue?vue&type=template&id=bb7ceecc&"); -/* harmony import */ var _Tag_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Tag.vue?vue&type=script&lang=js& */ "./src/components/Tag.vue?vue&type=script&lang=js&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - - - -/* normalize component */ -; -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])( - _Tag_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _Tag_vue_vue_type_template_id_bb7ceecc___WEBPACK_IMPORTED_MODULE_0__.render, - _Tag_vue_vue_type_template_id_bb7ceecc___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - null, - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/Tag.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/views/Tags.vue": -/*!****************************!*\ - !*** ./src/views/Tags.vue ***! - \****************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _Tags_vue_vue_type_template_id_730c32d3_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Tags.vue?vue&type=template&id=730c32d3&scoped=true& */ "./src/views/Tags.vue?vue&type=template&id=730c32d3&scoped=true&"); -/* harmony import */ var _Tags_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Tags.vue?vue&type=script&lang=js& */ "./src/views/Tags.vue?vue&type=script&lang=js&"); -/* harmony import */ var _Tags_vue_vue_type_style_index_0_id_730c32d3_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Tags.vue?vue&type=style&index=0&id=730c32d3&lang=scss&scoped=true& */ "./src/views/Tags.vue?vue&type=style&index=0&id=730c32d3&lang=scss&scoped=true&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( - _Tags_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _Tags_vue_vue_type_template_id_730c32d3_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render, - _Tags_vue_vue_type_template_id_730c32d3_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - "730c32d3", - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/views/Tags.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/Tag.vue?vue&type=script&lang=js&": -/*!*********************************************************!*\ - !*** ./src/components/Tag.vue?vue&type=script&lang=js& ***! - \*********************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Tag_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tag.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Tag.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Tag_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/views/Tags.vue?vue&type=script&lang=js&": -/*!*****************************************************!*\ - !*** ./src/views/Tags.vue?vue&type=script&lang=js& ***! - \*****************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Tags_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tags.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/Tags.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Tags_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/views/Tags.vue?vue&type=style&index=0&id=730c32d3&lang=scss&scoped=true&": -/*!**************************************************************************************!*\ - !*** ./src/views/Tags.vue?vue&type=style&index=0&id=730c32d3&lang=scss&scoped=true& ***! - \**************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_Tags_vue_vue_type_style_index_0_id_730c32d3_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/style-loader/dist/cjs.js!../../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!./Tags.vue?vue&type=style&index=0&id=730c32d3&lang=scss&scoped=true& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/views/Tags.vue?vue&type=style&index=0&id=730c32d3&lang=scss&scoped=true&"); - - -/***/ }), - -/***/ "./src/components/Tag.vue?vue&type=template&id=bb7ceecc&": -/*!***************************************************************!*\ - !*** ./src/components/Tag.vue?vue&type=template&id=bb7ceecc& ***! - \***************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Tag_vue_vue_type_template_id_bb7ceecc___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Tag_vue_vue_type_template_id_bb7ceecc___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Tag_vue_vue_type_template_id_bb7ceecc___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tag.vue?vue&type=template&id=bb7ceecc& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Tag.vue?vue&type=template&id=bb7ceecc&"); - - -/***/ }), - -/***/ "./src/views/Tags.vue?vue&type=template&id=730c32d3&scoped=true&": -/*!***********************************************************************!*\ - !*** ./src/views/Tags.vue?vue&type=template&id=730c32d3&scoped=true& ***! - \***********************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Tags_vue_vue_type_template_id_730c32d3_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Tags_vue_vue_type_template_id_730c32d3_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Tags_vue_vue_type_template_id_730c32d3_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tags.vue?vue&type=template&id=730c32d3&scoped=true& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/Tags.vue?vue&type=template&id=730c32d3&scoped=true&"); - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Tag.vue?vue&type=template&id=bb7ceecc&": -/*!******************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Tag.vue?vue&type=template&id=bb7ceecc& ***! - \******************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c("FolderTagPreview", { - attrs: { - id: _vm.item.injected.id, - icon: "icon-tag", - name: _vm.item.injected.displayName, - path: _vm.item.injected.displayName, - "file-list": _vm.fileList, - }, - }) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/Tags.vue?vue&type=template&id=730c32d3&scoped=true&": -/*!**************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/Tags.vue?vue&type=template&id=730c32d3&scoped=true& ***! - \**************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _vm.error - ? _c("EmptyContent", [ - _vm._v("\n\t" + _vm._s(_vm.t("photos", "An error occurred")) + "\n"), - ]) - : !_vm.loading - ? _c( - "div", - [ - _c("Navigation", { - key: "navigation", - attrs: { - basename: _vm.path, - filename: "/" + _vm.path, - "root-title": _vm.rootTitle, - }, - }), - _vm._v(" "), - _vm.isEmpty - ? _c( - "EmptyContent", - { - key: "emptycontent", - attrs: { "illustration-name": "empty" }, - scopedSlots: _vm._u( - [ - { - key: "desc", - fn: function () { - return [ - _vm._v( - "\n\t\t\t" + - _vm._s( - _vm.t( - "photos", - "Photos with tags will show up here" - ) - ) + - "\n\t\t" - ), - ] - }, - proxy: true, - }, - ], - null, - false, - 4132175345 - ), - }, - [ - _vm._v( - "\n\t\t" + _vm._s(_vm.t("photos", "No tags yet")) + "\n\t\t" - ), - ] - ) - : _c( - "div", - { staticClass: "grid-container" }, - [ - _c("VirtualGrid", { - ref: "virtualgrid", - attrs: { - items: _vm.contentList, - "get-column-count": function () { - return _vm.gridConfig.count - }, - "get-grid-gap": function () { - return _vm.gridConfig.gap - }, - }, - }), - ], - 1 - ), - ], - 1 - ) - : _vm._e() -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }) - -}]); -//# sourceMappingURL=photos-node_modules_nextcloud_vue_dist_ncvuecomponents_js-src_views_Tags_vue.js.map?v=24ef491657d2d2a0900e \ No newline at end of file diff --git a/js/photos-node_modules_nextcloud_vue_dist_ncvuecomponents_js-src_views_Tags_vue.js.map b/js/photos-node_modules_nextcloud_vue_dist_ncvuecomponents_js-src_views_Tags_vue.js.map deleted file mode 100644 index c44c21cc0..000000000 --- a/js/photos-node_modules_nextcloud_vue_dist_ncvuecomponents_js-src_views_Tags_vue.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-node_modules_nextcloud_vue_dist_ncvuecomponents_js-src_views_Tags_vue.js?v=24ef491657d2d2a0900e","mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;ACvIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;ACpWA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;ACrEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACtFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;;;;;ACtCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;;ACvCA;;;;;;;;;;;;;;;;ACAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sources":["webpack:///photos/src/components/Tag.vue?vue&type=script&lang=js&","webpack:///photos/src/views/Tags.vue?vue&type=script&lang=js&","webpack:///photos/src/services/SystemTags.js","webpack:///photos/src/services/TaggedImages.js","webpack:///photos/src/views/Tags.vue?vue&type=style&index=0&id=730c32d3&lang=scss&scoped=true&","webpack://photos/./src/views/Tags.vue?9829","webpack:///photos/src/components/Tag.vue","webpack:///photos/src/views/Tags.vue","webpack://photos/./src/components/Tag.vue?86d1","webpack://photos/./src/views/Tags.vue?8481","webpack:///photos/src/components/Tag.vue?vue&type=template&id=bb7ceecc&","webpack:///photos/src/views/Tags.vue?vue&type=template&id=730c32d3&scoped=true&"],"sourcesContent":["function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport { mapGetters } from 'vuex';\nimport getTaggedImages from '../services/TaggedImages';\nimport cancelableRequest from '../utils/CancelableRequest';\nimport FolderTagPreview from './FolderTagPreview';\nexport default {\n name: 'Tag',\n components: {\n FolderTagPreview: FolderTagPreview\n },\n inheritAttrs: false,\n props: {\n item: {\n type: Object,\n required: true\n }\n },\n data: function data() {\n return {\n cancelRequest: null\n };\n },\n computed: _objectSpread(_objectSpread({}, mapGetters(['files', 'tags'])), {}, {\n // files list of the current folder\n folderContent: function folderContent() {\n return this.tags[this.item.injected.id].files;\n },\n fileList: function fileList() {\n var _this = this;\n\n return this.folderContent ? this.folderContent.map(function (id) {\n return _this.files[id];\n }).filter(function (file) {\n return !!file;\n }).slice(0, 4) // only get the 4 first images\n : [];\n }\n }),\n beforeDestroy: function beforeDestroy() {\n // cancel any pending requests\n if (this.cancelRequest) {\n this.cancelRequest('Navigated away');\n }\n },\n created: function created() {\n var _this2 = this;\n\n return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {\n var _cancelableRequest, request, cancel, files;\n\n return regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n // init cancellable request\n _cancelableRequest = cancelableRequest(getTaggedImages), request = _cancelableRequest.request, cancel = _cancelableRequest.cancel;\n _this2.cancelRequest = cancel;\n _context.prev = 2;\n _context.next = 5;\n return request(_this2.item.injected.id);\n\n case 5:\n files = _context.sent;\n\n _this2.$store.dispatch('updateTag', {\n id: _this2.item.injected.id,\n files: files\n });\n\n _this2.$store.dispatch('appendFiles', files);\n\n _context.next = 13;\n break;\n\n case 10:\n _context.prev = 10;\n _context.t0 = _context[\"catch\"](2);\n\n if (_context.t0.response && _context.t0.response.status) {\n console.error('Failed to get folder content', _this2.item.injected.id, _context.t0.response);\n }\n\n case 13:\n _context.prev = 13;\n _this2.cancelRequest = null;\n return _context.finish(13);\n\n case 16:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, null, [[2, 10, 13, 16]]);\n }))();\n }\n};","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport { mapGetters } from 'vuex';\nimport VirtualGrid from 'vue-virtual-grid';\nimport getSystemTags from '../services/SystemTags';\nimport getTaggedImages from '../services/TaggedImages';\nimport EmptyContent from '../components/EmptyContent';\nimport Tag from '../components/Tag';\nimport File from '../components/File';\nimport Navigation from '../components/Navigation';\nimport GridConfigMixin from '../mixins/GridConfig';\nimport cancelableRequest from '../utils/CancelableRequest';\nexport default {\n name: 'Tags',\n components: {\n VirtualGrid: VirtualGrid,\n EmptyContent: EmptyContent,\n Navigation: Navigation\n },\n mixins: [GridConfigMixin],\n props: {\n rootTitle: {\n type: String,\n required: true\n },\n path: {\n type: String,\n default: ''\n },\n isRoot: {\n type: Boolean,\n default: true\n }\n },\n data: function data() {\n return {\n error: null,\n cancelRequest: null,\n loading: false\n };\n },\n computed: _objectSpread(_objectSpread({}, mapGetters(['files', 'tags', 'tagsNames'])), {}, {\n // current tag id from current path\n tagId: function tagId() {\n return this.$store.getters.tagId(this.path);\n },\n // current tag\n tag: function tag() {\n return this.tags[this.tagId];\n },\n tagsList: function tagsList() {\n var _this = this;\n\n return Object.values(this.tagsNames).map(function (tagsId) {\n return _this.tags[tagsId];\n });\n },\n // files list of the current tag\n fileList: function fileList() {\n var _this2 = this;\n\n return this.tag && this.tag.files.map(function (id) {\n return _this2.files[id];\n }).filter(function (file) {\n return !!file;\n });\n },\n contentList: function contentList() {\n var _this3 = this;\n\n if (this.isRoot) {\n return this.tagsList.flatMap(function (tag) {\n return tag.id === '' ? [] : [{\n id: \"tag-\".concat(tag.id),\n injected: _objectSpread({}, tag),\n width: 256,\n height: 256,\n columnSpan: 1,\n renderComponent: Tag\n }];\n });\n }\n\n return this.fileList.map(function (file) {\n return {\n id: \"file-\".concat(file.fileid),\n injected: _objectSpread(_objectSpread({}, file), {}, {\n list: _this3.fileList\n }),\n width: 256,\n height: 256,\n columnSpan: 1,\n renderComponent: File\n };\n });\n },\n isEmpty: function isEmpty() {\n if (this.isRoot) {\n return Object.keys(this.tagsNames).length === 0;\n }\n\n return this.fileList.length === 0;\n }\n }),\n watch: {\n path: function path() {\n var _this4 = this;\n\n return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {\n return regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n if (_this4.tagId) {\n _context.next = 3;\n break;\n }\n\n _context.next = 3;\n return _this4.fetchRootContent();\n\n case 3:\n // if we're not in the root, we fetch the data\n if (!_this4.isRoot) {\n _this4.fetchContent();\n }\n\n case 4:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }))();\n }\n },\n beforeDestroy: function beforeDestroy() {\n // cancel any pending requests\n if (this.cancelRequest) {\n this.cancelRequest('Navigated away');\n }\n },\n beforeMount: function beforeMount() {\n var _this5 = this;\n\n return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() {\n return regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n if (_this5.tagId) {\n _context2.next = 3;\n break;\n }\n\n _context2.next = 3;\n return _this5.fetchRootContent();\n\n case 3:\n // if we're not in the root, we fetch the data\n if (!_this5.isRoot) {\n _this5.fetchContent();\n }\n\n case 4:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }))();\n },\n methods: {\n fetchRootContent: function fetchRootContent() {\n var _this6 = this;\n\n return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee3() {\n var _cancelableRequest, request, cancel, tags;\n\n return regeneratorRuntime.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n // cancel any pending requests\n if (_this6.cancelRequest) {\n _this6.cancelRequest('Changed folder');\n } // close any potential opened viewer\n\n\n OCA.Viewer.close(); // if we don't already have some cached data let's show a loader\n\n if (!_this6.tags[_this6.tagId]) {\n _this6.loading = true;\n }\n\n _this6.error = null; // init cancellable request\n\n _cancelableRequest = cancelableRequest(getSystemTags), request = _cancelableRequest.request, cancel = _cancelableRequest.cancel;\n _this6.cancelRequest = cancel;\n _context3.prev = 6;\n _context3.next = 9;\n return request();\n\n case 9:\n tags = _context3.sent;\n\n _this6.$store.dispatch('updateTags', tags);\n\n _context3.next = 17;\n break;\n\n case 13:\n _context3.prev = 13;\n _context3.t0 = _context3[\"catch\"](6);\n console.error(_context3.t0);\n _this6.error = true;\n\n case 17:\n _context3.prev = 17;\n // done loading\n _this6.loading = false;\n _this6.cancelRequest = null;\n return _context3.finish(17);\n\n case 21:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3, null, [[6, 13, 17, 21]]);\n }))();\n },\n fetchContent: function fetchContent() {\n var _this7 = this;\n\n return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee4() {\n var _cancelableRequest2, request, cancel, files;\n\n return regeneratorRuntime.wrap(function _callee4$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n // cancel any pending requests\n if (_this7.cancelRequest) {\n _this7.cancelRequest();\n } // close any potential opened viewer\n\n\n OCA.Viewer.close(); // if we don't already have some cached data let's show a loader\n\n if (!_this7.tags[_this7.tagId]) {\n _this7.loading = true;\n }\n\n _this7.error = null; // init cancellable request\n\n _cancelableRequest2 = cancelableRequest(getTaggedImages), request = _cancelableRequest2.request, cancel = _cancelableRequest2.cancel;\n _this7.cancelRequest = cancel;\n _context4.prev = 6;\n _context4.next = 9;\n return request(_this7.tagId);\n\n case 9:\n files = _context4.sent;\n\n _this7.$store.dispatch('updateTag', {\n id: _this7.tagId,\n files: files\n });\n\n _this7.$store.dispatch('appendFiles', files);\n\n _context4.next = 18;\n break;\n\n case 14:\n _context4.prev = 14;\n _context4.t0 = _context4[\"catch\"](6);\n console.error(_context4.t0);\n _this7.error = true;\n\n case 18:\n _context4.prev = 18;\n // done loading\n _this7.loading = false;\n _this7.cancelRequest = null;\n return _context4.finish(18);\n\n case 22:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _callee4, null, [[6, 14, 18, 22]]);\n }))();\n }\n }\n};","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ \n *\n * @author John Molakvoæ \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 .\n *\n */\nimport client from './DavClient';\nimport { genFileInfo } from '../utils/fileUtils';\n/**\n * List system tags\n *\n * @param {string} path the path relative to the user root\n * @param {object} [options] optional options for axios\n * @return {Array} the file list\n */\n\nexport default function (_x) {\n return _ref.apply(this, arguments);\n}\n\nfunction _ref() {\n _ref = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(path) {\n var options,\n response,\n _args = arguments;\n return regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n options = _args.length > 1 && _args[1] !== undefined ? _args[1] : {};\n _context.next = 3;\n return client.getDirectoryContents('/systemtags/', Object.assign({}, {\n data: \"\\n\\t\\t\\t\\n\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\n\\t\\t\\t\",\n details: true\n }, options));\n\n case 3:\n response = _context.sent;\n return _context.abrupt(\"return\", response.data.map(function (data) {\n return genFileInfo(data);\n }));\n\n case 5:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n return _ref.apply(this, arguments);\n}","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ \n *\n * @author John Molakvoæ \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 .\n *\n */\nimport { genFileInfo } from '../utils/fileUtils';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport { props } from './DavRequest';\nimport allowedMimes from './AllowedMimes';\nimport client from './DavClient';\n/**\n * Get tagged files based on provided tag id\n *\n * @param {number} id the tag id to filter\n * @param {object} [options] optional options for axios\n * @return {Array} the file list\n */\n\nexport default function (_x) {\n return _ref.apply(this, arguments);\n}\n\nfunction _ref() {\n _ref = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(id) {\n var options,\n prefixPath,\n response,\n _args = arguments;\n return regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n options = _args.length > 1 && _args[1] !== undefined ? _args[1] : {};\n options = Object.assign({\n method: 'REPORT',\n data: \"\\n\\t\\t\\t\\n\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\".concat(props, \"\\n\\t\\t\\t\\t\\n\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\").concat(id, \"\\n\\t\\t\\t\\t\\n\\t\\t\\t\"),\n details: true\n }, options);\n prefixPath = \"/files/\".concat(getCurrentUser().uid);\n _context.next = 5;\n return client.getDirectoryContents(prefixPath, options);\n\n case 5:\n response = _context.sent;\n return _context.abrupt(\"return\", response.data.map(function (data) {\n return genFileInfo(data);\n }) // filter out unwanted mime because server REPORT service only support\n // hardcoded props and mime is not one of them\n // https://github.com/nextcloud/server/blob/5bf3d1bb384da56adbf205752be8f840aac3b0c5/apps/dav/lib/Connector/Sabre/FilesReportPlugin.php#L274\n .filter(function (file) {\n return file.mime && allowedMimes.indexOf(file.mime) !== -1;\n }) // remove prefix path from full file path\n .map(function (data) {\n return Object.assign({}, data, {\n filename: data.filename.replace(prefixPath, '')\n });\n }));\n\n case 7:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n return _ref.apply(this, arguments);\n}","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"@charset \\\"UTF-8\\\";\\n/**\\n * @copyright Copyright (c) 2019 John Molakvoæ \\n *\\n * @author John Molakvoæ \\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 .\\n *\\n */\\n@media (min-width: 0px) and (max-width: 400px) {\\n.grid-container[data-v-730c32d3] {\\n padding: 0px 8px 256px 8px;\\n}\\n}\\n@media (min-width: 400px) and (max-width: 700px) {\\n.grid-container[data-v-730c32d3] {\\n padding: 0px 8px 256px 8px;\\n}\\n}\\n@media (min-width: 700px) and (max-width: 1024px) {\\n.grid-container[data-v-730c32d3] {\\n padding: 0px 44px 256px 44px;\\n}\\n}\\n@media (min-width: 1024px) and (max-width: 1280px) {\\n.grid-container[data-v-730c32d3] {\\n padding: 0px 44px 256px 44px;\\n}\\n}\\n@media (min-width: 1280px) and (max-width: 1440px) {\\n.grid-container[data-v-730c32d3] {\\n padding: 0px 66px 256px 66px;\\n}\\n}\\n@media (min-width: 1440px) and (max-width: 1600px) {\\n.grid-container[data-v-730c32d3] {\\n padding: 0px 66px 256px 66px;\\n}\\n}\\n@media (min-width: 1600px) and (max-width: 2048px) {\\n.grid-container[data-v-730c32d3] {\\n padding: 0px 66px 256px 66px;\\n}\\n}\\n@media (min-width: 2048px) and (max-width: 2560px) {\\n.grid-container[data-v-730c32d3] {\\n padding: 0px 88px 256px 88px;\\n}\\n}\\n@media (min-width: 2560px) and (max-width: 3440px) {\\n.grid-container[data-v-730c32d3] {\\n padding: 0px 88px 256px 88px;\\n}\\n}\\n@media (min-width: 3440px) {\\n.grid-container[data-v-730c32d3] {\\n padding: 0px 88px 256px 88px;\\n}\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./Tags.vue?vue&type=style&index=0&id=730c32d3&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./Tags.vue?vue&type=style&index=0&id=730c32d3&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Tag.vue?vue&type=template&id=bb7ceecc&\"\nimport script from \"./Tag.vue?vue&type=script&lang=js&\"\nexport * from \"./Tag.vue?vue&type=script&lang=js&\"\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\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/admin/Docker/apps2/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('bb7ceecc')) {\n api.createRecord('bb7ceecc', component.options)\n } else {\n api.reload('bb7ceecc', component.options)\n }\n module.hot.accept(\"./Tag.vue?vue&type=template&id=bb7ceecc&\", function () {\n api.rerender('bb7ceecc', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/Tag.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./Tags.vue?vue&type=template&id=730c32d3&scoped=true&\"\nimport script from \"./Tags.vue?vue&type=script&lang=js&\"\nexport * from \"./Tags.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Tags.vue?vue&type=style&index=0&id=730c32d3&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 \"730c32d3\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/admin/Docker/apps2/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('730c32d3')) {\n api.createRecord('730c32d3', component.options)\n } else {\n api.reload('730c32d3', component.options)\n }\n module.hot.accept(\"./Tags.vue?vue&type=template&id=730c32d3&scoped=true&\", function () {\n api.rerender('730c32d3', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/views/Tags.vue\"\nexport default component.exports","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tag.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!./Tag.vue?vue&type=script&lang=js&\"","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tags.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!./Tags.vue?vue&type=script&lang=js&\"","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"FolderTagPreview\", {\n attrs: {\n id: _vm.item.injected.id,\n icon: \"icon-tag\",\n name: _vm.item.injected.displayName,\n path: _vm.item.injected.displayName,\n \"file-list\": _vm.fileList,\n },\n })\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _vm.error\n ? _c(\"EmptyContent\", [\n _vm._v(\"\\n\\t\" + _vm._s(_vm.t(\"photos\", \"An error occurred\")) + \"\\n\"),\n ])\n : !_vm.loading\n ? _c(\n \"div\",\n [\n _c(\"Navigation\", {\n key: \"navigation\",\n attrs: {\n basename: _vm.path,\n filename: \"/\" + _vm.path,\n \"root-title\": _vm.rootTitle,\n },\n }),\n _vm._v(\" \"),\n _vm.isEmpty\n ? _c(\n \"EmptyContent\",\n {\n key: \"emptycontent\",\n attrs: { \"illustration-name\": \"empty\" },\n scopedSlots: _vm._u(\n [\n {\n key: \"desc\",\n fn: function () {\n return [\n _vm._v(\n \"\\n\\t\\t\\t\" +\n _vm._s(\n _vm.t(\n \"photos\",\n \"Photos with tags will show up here\"\n )\n ) +\n \"\\n\\t\\t\"\n ),\n ]\n },\n proxy: true,\n },\n ],\n null,\n false,\n 4132175345\n ),\n },\n [\n _vm._v(\n \"\\n\\t\\t\" + _vm._s(_vm.t(\"photos\", \"No tags yet\")) + \"\\n\\t\\t\"\n ),\n ]\n )\n : _c(\n \"div\",\n { staticClass: \"grid-container\" },\n [\n _c(\"VirtualGrid\", {\n ref: \"virtualgrid\",\n attrs: {\n items: _vm.contentList,\n \"get-column-count\": function () {\n return _vm.gridConfig.count\n },\n \"get-grid-gap\": function () {\n return _vm.gridConfig.gap\n },\n },\n }),\n ],\n 1\n ),\n ],\n 1\n )\n : _vm._e()\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-node_modules_vue-material-design-icons_AccountMultiplePlus_vue-node_modules_vue-material-desi-62d528.js b/js/photos-node_modules_vue-material-design-icons_AccountMultiplePlus_vue-node_modules_vue-material-desi-62d528.js deleted file mode 100644 index 989ffed67..000000000 --- a/js/photos-node_modules_vue-material-design-icons_AccountMultiplePlus_vue-node_modules_vue-material-desi-62d528.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkphotos=self.webpackChunkphotos||[]).push([["node_modules_vue-material-design-icons_AccountMultiplePlus_vue-node_modules_vue-material-desi-62d528"],{35032:(t,n,e)=>{e.d(n,{Z:()=>r});var i=e(87537),a=e.n(i),o=e(23645),l=e.n(o)()(a());l.push([t.id,".album-picker[data-v-c27aa5aa]{padding:32px;padding-top:16px}.album-picker h2[data-v-c27aa5aa]{display:flex;align-items:center;height:60px}.album-picker h2 .loading-icon[data-v-c27aa5aa]{margin-left:32px}.album-picker .albums-container[data-v-c27aa5aa]{min-height:150px;max-height:350px;overflow-x:scroll;padding:2px}.album-picker .albums-container .album[data-v-c27aa5aa] .list-item{padding:8px 16px;box-sizing:border-box}.album-picker .albums-container .album[data-v-c27aa5aa]:not(:last-child){margin-bottom:16px}.album-picker .albums-container .album__image[data-v-c27aa5aa]{width:40px;height:40px;object-fit:none;border-radius:var(--border-radius)}.album-picker .albums-container .album__image--placeholder[data-v-c27aa5aa]{background:var(--color-primary-light)}.album-picker .albums-container .album__image--placeholder[data-v-c27aa5aa] .material-design-icon{width:100%;height:100%}.album-picker .albums-container .album__image--placeholder[data-v-c27aa5aa] .material-design-icon .material-design-icon__svg{fill:var(--color-primary)}.album-picker .new-album-button[data-v-c27aa5aa]{margin-top:32px}","",{version:3,sources:["webpack://./src/components/Albums/AlbumPicker.vue"],names:[],mappings:"AA6HA,+BACC,YAAA,CACA,gBAAA,CAEA,kCACC,YAAA,CACA,kBAAA,CACA,WAAA,CAEA,gDACC,gBAAA,CAIF,iDACC,gBAAA,CACA,gBAAA,CACA,iBAAA,CACA,WAAA,CAIC,oEACC,gBAAA,CACA,qBAAA,CAGD,yEACC,kBAAA,CAGD,+DACC,UAAA,CACA,WAAA,CACA,eAAA,CACA,kCAAA,CAEA,4EACC,qCAAA,CAEA,mGACC,UAAA,CACA,WAAA,CAEA,8HACC,yBAAA,CAQN,iDACC,eAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.album-picker {\n\tpadding: 32px;\n\tpadding-top: 16px;\n\n\th2 {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\theight: 60px;\n\n\t\t.loading-icon {\n\t\t\tmargin-left: 32px;\n\t\t}\n\t}\n\n\t.albums-container {\n\t\tmin-height: 150px;\n\t\tmax-height: 350px;\n\t\toverflow-x: scroll;\n\t\tpadding: 2px;\n\n\t\t.album {\n\n\t\t\t::v-deep .list-item {\n\t\t\t\tpadding: 8px 16px;\n\t\t\t\tbox-sizing: border-box;\n\t\t\t}\n\n\t\t\t&:not(:last-child) {\n\t\t\t\tmargin-bottom: 16px;\n\t\t\t}\n\n\t\t\t&__image {\n\t\t\t\twidth: 40px;\n\t\t\t\theight: 40px;\n\t\t\t\tobject-fit: none;\n\t\t\t\tborder-radius: var(--border-radius);\n\n\t\t\t\t&--placeholder {\n\t\t\t\t\tbackground: var(--color-primary-light);\n\n\t\t\t\t\t::v-deep .material-design-icon {\n\t\t\t\t\t\twidth: 100%;\n\t\t\t\t\t\theight: 100%;\n\n\t\t\t\t\t\t.material-design-icon__svg {\n\t\t\t\t\t\t\tfill: var(--color-primary);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t.new-album-button {\n\t\tmargin-top: 32px;\n\t}\n}\n'],sourceRoot:""}]);const r=l},91323:(t,n,e)=>{e.d(n,{Z:()=>r});var i=e(87537),a=e.n(i),o=e(23645),l=e.n(o)()(a());l.push([t.id,".timeline[data-v-565548e9]{display:flex;flex-direction:column}.timeline__header[data-v-565548e9]{display:flex;min-height:60px;box-sizing:content-box;align-items:center;position:-webkit-sticky;position:sticky;width:100%;height:60px;z-index:3;background:var(--color-main-background);padding:8px 64px 0px 64px}@media only screen and (max-width: 1200px){.timeline__header[data-v-565548e9]{padding:0 48px}}.timeline__header>*[data-v-565548e9]{margin-right:8px}.timeline__header .loader[data-v-565548e9]{margin-left:16px}.timeline__file-list[data-v-565548e9]{padding:0 64px}@media only screen and (max-width: 1200px){.timeline__file-list[data-v-565548e9]{padding:0 4px}}.timeline__file-list[data-v-565548e9] .files-list-viewer__section-header{top:0}.timeline__file-list .section-header[data-v-565548e9]{padding:24px 0 16px 0}","",{version:3,sources:["webpack://./src/views/Timeline.vue"],names:[],mappings:"AA6QA,2BACC,YAAA,CACA,qBAAA,CAEA,mCACC,YAAA,CACA,eAAA,CACA,sBAAA,CACA,kBAAA,CACA,uBAAA,CAAA,eAAA,CACA,UAAA,CACA,WAAA,CACA,SAAA,CACA,uCAAA,CACA,yBAAA,CAEA,2CAZD,mCAaE,cAAA,CAAA,CAGD,qCACC,gBAAA,CAGD,2CACC,gBAAA,CAIF,sCACC,cAAA,CAEA,2CAHD,sCAIE,aAAA,CAAA,CAGD,0EACC,KAAA,CAGD,sDACC,qBAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.timeline {\n\tdisplay: flex;\n\tflex-direction: column;\n\n\t&__header {\n\t\tdisplay: flex;\n\t\tmin-height: 60px;\n\t\tbox-sizing: content-box;\n\t\talign-items: center;\n\t\tposition: sticky;\n\t\twidth: 100%;\n\t\theight: 60px;\n\t\tz-index: 3;\n\t\tbackground: var(--color-main-background);\n\t\tpadding: 8px 64px 0px 64px;\n\n\t\t@media only screen and (max-width: 1200px) {\n\t\t\tpadding: 0 48px;\n\t\t}\n\n\t\t& > * {\n\t\t\tmargin-right: 8px;\n\t\t}\n\n\t\t.loader {\n\t\t\tmargin-left: 16px;\n\t\t}\n\t}\n\n\t&__file-list {\n\t\tpadding: 0 64px;\n\n\t\t@media only screen and (max-width: 1200px) {\n\t\t\tpadding: 0 4px;\n\t\t}\n\n\t\t::v-deep .files-list-viewer__section-header {\n\t\t\ttop: 0;\n\t\t}\n\n\t\t.section-header {\n\t\t\tpadding: 24px 0 16px 0;\n\t\t}\n\t}\n}\n'],sourceRoot:""}]);const r=l},94878:(t,n,e)=>{e.d(n,{Z:()=>a});const i={name:"AccountMultiplePlusIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const a=(0,e(51900).Z)(i,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("span",t._b({staticClass:"material-design-icon account-multiple-plus-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(n){return t.$emit("click",n)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M19 17V19H7V17S7 13 13 13 19 17 19 17M16 8A3 3 0 1 0 13 11A3 3 0 0 0 16 8M19.2 13.06A5.6 5.6 0 0 1 21 17V19H24V17S24 13.55 19.2 13.06M18 5A2.91 2.91 0 0 0 17.11 5.14A5 5 0 0 1 17.11 10.86A2.91 2.91 0 0 0 18 11A3 3 0 0 0 18 5M8 10H5V7H3V10H0V12H3V15H5V12H8Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports},47987:(t,n,e)=>{e.d(n,{Z:()=>a});const i={name:"ContentCopyIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const a=(0,e(51900).Z)(i,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("span",t._b({staticClass:"material-design-icon content-copy-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(n){return t.$emit("click",n)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports},33691:(t,n,e)=>{e.d(n,{Z:()=>a});const i={name:"DeleteIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const a=(0,e(51900).Z)(i,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("span",t._b({staticClass:"material-design-icon delete-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(n){return t.$emit("click",n)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M19,4H15.5L14.5,3H9.5L8.5,4H5V6H19M6,19A2,2 0 0,0 8,21H16A2,2 0 0,0 18,19V7H6V19Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports},2470:(t,n,e)=>{e.d(n,{Z:()=>a});const i={name:"DownloadIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const a=(0,e(51900).Z)(i,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("span",t._b({staticClass:"material-design-icon download-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(n){return t.$emit("click",n)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M5,20H19V18H5M19,9H15V3H9V9H5L12,16L19,9Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports},55683:(t,n,e)=>{e.d(n,{Z:()=>a});const i={name:"EarthIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const a=(0,e(51900).Z)(i,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("span",t._b({staticClass:"material-design-icon earth-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(n){return t.$emit("click",n)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M17.9,17.39C17.64,16.59 16.89,16 16,16H15V13A1,1 0 0,0 14,12H8V10H10A1,1 0 0,0 11,9V7H13A2,2 0 0,0 15,5V4.59C17.93,5.77 20,8.64 20,12C20,14.08 19.2,15.97 17.9,17.39M11,19.93C7.05,19.44 4,16.08 4,12C4,11.38 4.08,10.78 4.21,10.21L9,15V16A2,2 0 0,0 11,18M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports},36288:(t,n,e)=>{e.d(n,{Z:()=>a});const i={name:"ImageMultipleIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const a=(0,e(51900).Z)(i,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("span",t._b({staticClass:"material-design-icon image-multiple-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(n){return t.$emit("click",n)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M22,16V4A2,2 0 0,0 20,2H8A2,2 0 0,0 6,4V16A2,2 0 0,0 8,18H20A2,2 0 0,0 22,16M11,12L13.03,14.71L16,11L20,16H8M2,6V20A2,2 0 0,0 4,22H18V20H4V6"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports},38530:(t,n,e)=>{e.d(n,{Z:()=>a});const i={name:"MagnifyIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const a=(0,e(51900).Z)(i,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("span",t._b({staticClass:"material-design-icon magnify-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(n){return t.$emit("click",n)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M9.5,3A6.5,6.5 0 0,1 16,9.5C16,11.11 15.41,12.59 14.44,13.73L14.71,14H15.5L20.5,19L19,20.5L14,15.5V14.71L13.73,14.44C12.59,15.41 11.11,16 9.5,16A6.5,6.5 0 0,1 3,9.5A6.5,6.5 0 0,1 9.5,3M9.5,5C7,5 5,7 5,9.5C5,12 7,14 9.5,14C12,14 14,12 14,9.5C14,7 12,5 9.5,5Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports},40502:(t,n,e)=>{e.d(n,{Z:()=>a});const i={name:"PlusIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const a=(0,e(51900).Z)(i,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("span",t._b({staticClass:"material-design-icon plus-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(n){return t.$emit("click",n)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports},75400:(t,n,e)=>{e.d(n,{Z:()=>a});const i={name:"SendIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const a=(0,e(51900).Z)(i,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("span",t._b({staticClass:"material-design-icon send-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(n){return t.$emit("click",n)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M2,21L23,12L2,3V10L17,12L2,14V21Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports},60627:(t,n,e)=>{e.d(n,{Z:()=>m});var i=e(20629),a=e(75760),o=e(33476);function l(t,n,e,i,a,o,l){try{var r=t[o](l),s=r.value}catch(t){return void e(t)}r.done?n(s):Promise.resolve(s).then(i,a)}function r(t){return function(){var n=this,e=arguments;return new Promise((function(i,a){var o=t.apply(n,e);function r(t){l(o,i,a,r,s,"next",t)}function s(t){l(o,i,a,r,s,"throw",t)}r(void 0)}))}}function s(t,n){var e=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);n&&(i=i.filter((function(n){return Object.getOwnPropertyDescriptor(t,n).enumerable}))),e.push.apply(e,i)}return e}function c(t){for(var n=1;n{e.r(n),e.d(n,{default:()=>K});var i=e(20629),a=e(40502),o=e(33691);const l={name:"PlusBoxMultipleIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var r=e(51900);const s=(0,r.Z)(l,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("span",t._b({staticClass:"material-design-icon plus-box-multiple-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(n){return t.$emit("click",n)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M19,11H15V15H13V11H9V9H13V5H15V9H19M20,2H8A2,2 0 0,0 6,4V16A2,2 0 0,0 8,18H20A2,2 0 0,0 22,16V4A2,2 0 0,0 20,2M4,6H2V20A2,2 0 0,0 4,22H18V20H4V6Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports;const c={name:"FileUploadIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const u=(0,r.Z)(c,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("span",t._b({staticClass:"material-design-icon file-upload-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(n){return t.$emit("click",n)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M14,2H6A2,2 0 0,0 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2M13.5,16V19H10.5V16H8L12,12L16,16H13.5M13,9V3.5L18.5,9H13Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports;var d=e(2470),m=e(33476),p=e(80351),A=e.n(p),g=e(3301),f=e(66951),h=e(28391),b=e(98171),C=e(90122),v=e(39448),_=e(4260),x=e(36288),y=e(79753),k=e(12945);const w={name:"AlbumPicker",components:{Plus:a.Z,ImageMultiple:x.Z,NcButton:m.NcButton,NcListItem:m.NcListItem,NcLoadingIcon:m.NcLoadingIcon,AlbumForm:_.Z},filters:{toCoverUrl:function(t){return(0,y.generateUrl)("/apps/photos/api/v1/preview/".concat(t,"?x=",64,"&y=",64))}},mixins:[k.Z],data:function(){return{showAlbumCreationForm:!1}},methods:{albumCreatedHandler:function(){this.showAlbumCreationForm=!1,this.fetchAlbums()},pickAlbum:function(t){this.$emit("album-picked",t)}}};var H=e(93379),F=e.n(H),V=e(7795),Z=e.n(V),M=e(90569),B=e.n(M),N=e(3565),S=e.n(N),I=e(19216),P=e.n(I),z=e(44589),O=e.n(z),E=e(35032),T={};T.styleTagTransform=O(),T.setAttributes=S(),T.insert=B().bind(null,"head"),T.domAPI=Z(),T.insertStyleElement=P();F()(E.Z,T);E.Z&&E.Z.locals&&E.Z.locals;const $=(0,r.Z)(w,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return t.showAlbumCreationForm?e("AlbumForm",{attrs:{"display-back-button":!0,title:t.t("photos","New album")},on:{back:function(n){t.showAlbumCreationForm=!1},done:t.albumCreatedHandler}}):e("div",{staticClass:"album-picker"},[e("h2",[t._v("\n\t\t"+t._s(t.t("photos","Add to Album"))+"\n\t\t"),t.loadingAlbums?e("NcLoadingIcon",{staticClass:"loading-icon"}):t._e()],1),t._v(" "),e("ul",{staticClass:"albums-container"},t._l(t.albums,(function(n){return e("NcListItem",{key:n.basename,staticClass:"album",attrs:{title:n.basename,"aria-label":t.t("photos","Add selection to album {ablumName}",{albumName:n.basename})},on:{click:function(e){return t.pickAlbum(n.basename)}}},[e("template",{slot:"icon"},[-1!==n.lastPhoto?e("img",{staticClass:"album__image",attrs:{src:t._f("toCoverUrl")(n.lastPhoto)}}):e("div",{staticClass:"album__image album__image--placeholder"},[e("ImageMultiple",{attrs:{size:32}})],1)]),t._v(" "),e("template",{slot:"subtitle"},[t._v("\n\t\t\t\t"+t._s(t.n("photos","%n item","%n photos and videos",n.nbItems))+"\n\t\t\t\t")])],2)})),1),t._v(" "),e("NcButton",{staticClass:"new-album-button",attrs:{"aria-label":t.t("photos","Create a new album."),type:"tertiary"},on:{click:function(n){t.showAlbumCreationForm=!0}},scopedSlots:t._u([{key:"icon",fn:function(){return[e("Plus")]},proxy:!0}],null,!1,1489515321)},[t._v("\n\t\t"+t._s(t.t("photos","Create new album"))+"\n\t")])],1)}),[],!1,null,"c27aa5aa",null).exports;var L=e(60627),D=e(17288);function j(t,n,e,i,a,o,l){try{var r=t[o](l),s=r.value}catch(t){return void e(t)}r.done?n(s):Promise.resolve(s).then(i,a)}function W(t){return function(){var n=this,e=arguments;return new Promise((function(i,a){var o=t.apply(n,e);function l(t){j(o,i,a,l,r,"next",t)}function r(t){j(o,i,a,l,r,"throw",t)}l(void 0)}))}}function Y(t,n){var e=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);n&&(i=i.filter((function(n){return Object.getOwnPropertyDescriptor(t,n).enumerable}))),e.push.apply(e,i)}return e}function R(t){for(var n=1;n0?e("NcLoadingIcon",{key:"loader",attrs:{size:32}}):t._e()],2),t._v(" "),e("FilesListViewer",{ref:"filesListViewer",staticClass:"timeline__file-list",attrs:{"container-element":t.appContent,"file-ids-by-section":t.fileIdsByMonth,sections:t.monthsList,loading:t.loadingFiles,"base-height":t.isMobile?120:200,"empty-message":t.t("photos","No photos in here")},on:{"need-content":t.getContent},scopedSlots:t._u([{key:"default",fn:function(n){var i=n.file,a=n.visibility;return[i.sectionHeader?e("h3",{staticClass:"section-header",attrs:{id:"file-picker-section-header-"+i.id}},[e("b",[t._v(t._s(t._f("dateMonth")(i.id)))]),t._v("\n\t\t\t\t"+t._s(t._f("dateYear")(i.id))+"\n\t\t\t")]):e("File",{attrs:{file:t.files[i.id],"allow-selection":!0,selected:!0===t.selection[i.id],visibility:a,semaphore:t.semaphore},on:{click:t.openViewer,"select-toggled":t.onFileSelectToggle}})]}}])}),t._v(" "),t.showAlbumCreationForm?e("NcModal",{key:"albumCreationForm",attrs:{"close-button-contained":!1,title:t.t("photos","New album")},on:{close:function(n){t.showAlbumCreationForm=!1}}},[e("AlbumForm",{on:{done:function(n){t.showAlbumCreationForm=!1}}})],1):t._e(),t._v(" "),t.showAlbumPicker?e("NcModal",{key:"albumPicker",attrs:{"close-button-contained":!1,title:t.t("photos","Add to album")},on:{close:function(n){t.showAlbumPicker=!1}}},[e("AlbumPicker",{on:{"album-picked":t.addSelectionToAlbum}})],1):t._e()],1)}),[],!1,null,"565548e9",null).exports}}]); -//# sourceMappingURL=photos-node_modules_vue-material-design-icons_AccountMultiplePlus_vue-node_modules_vue-material-desi-62d528.js.map?v=27a52a5da55ee91db415 \ No newline at end of file diff --git a/js/photos-node_modules_vue-material-design-icons_AccountMultiplePlus_vue-node_modules_vue-material-desi-62d528.js.map b/js/photos-node_modules_vue-material-design-icons_AccountMultiplePlus_vue-node_modules_vue-material-desi-62d528.js.map deleted file mode 100644 index 91bc5cec3..000000000 --- a/js/photos-node_modules_vue-material-design-icons_AccountMultiplePlus_vue-node_modules_vue-material-desi-62d528.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-node_modules_vue-material-design-icons_AccountMultiplePlus_vue-node_modules_vue-material-desi-62d528.js?v=27a52a5da55ee91db415","mappings":"uPAGIA,E,MAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,qlCAAslC,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,qDAAqD,MAAQ,GAAG,SAAW,6SAA6S,eAAiB,CAAC,sxDAAs2D,WAAa,MAEv5G,S,sECJIH,E,MAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,uzBAAwzB,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,sCAAsC,MAAQ,GAAG,SAAW,gSAAgS,eAAiB,CAAC,k1DAAk6D,WAAa,MAEzpG,S,mCCaA,MCpBuH,EDoBvH,CACEC,KAAM,0BACNC,MAAO,CAAC,SACRC,MAAO,CACLC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,E,SAAA,GACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,kDAAkDC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,qQAAqQ,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GACnyB,IDUpB,EACA,KACA,KACA,MAI8B,O,mCEEhC,MCpB+G,EDoB/G,CACEzB,KAAM,kBACNC,MAAO,CAAC,SACRC,MAAO,CACLC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,E,SAAA,GACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,yCAAyCC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,+HAA+H,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GACppB,IDUpB,EACA,KACA,KACA,MAI8B,O,mCEEhC,MCpB0G,EDoB1G,CACEzB,KAAM,aACNC,MAAO,CAAC,SACRC,MAAO,CACLC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,E,SAAA,GACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,mCAAmCC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,sFAAsF,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GACrmB,IDUpB,EACA,KACA,KACA,MAI8B,O,kCEEhC,MCpB4G,EDoB5G,CACEzB,KAAM,eACNC,MAAO,CAAC,SACRC,MAAO,CACLC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,E,SAAA,GACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,qCAAqCC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,8CAA8C,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GAC/jB,IDUpB,EACA,KACA,KACA,MAI8B,O,mCEEhC,MCpByG,EDoBzG,CACEzB,KAAM,YACNC,MAAO,CAAC,SACRC,MAAO,CACLC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,E,SAAA,GACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,kCAAkCC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,4UAA4U,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GAC11B,IDUpB,EACA,KACA,KACA,MAI8B,O,mCEEhC,MCpBiH,EDoBjH,CACEzB,KAAM,oBACNC,MAAO,CAAC,SACRC,MAAO,CACLC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,E,SAAA,GACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,2CAA2CC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,iJAAiJ,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GACxqB,IDUpB,EACA,KACA,KACA,MAI8B,O,mCEEhC,MCpB2G,EDoB3G,CACEzB,KAAM,cACNC,MAAO,CAAC,SACRC,MAAO,CACLC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,E,SAAA,GACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,oCAAoCC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,sQAAsQ,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GACtxB,IDUpB,EACA,KACA,KACA,MAI8B,O,mCEEhC,MCpBwG,EDoBxG,CACEzB,KAAM,WACNC,MAAO,CAAC,SACRC,MAAO,CACLC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,E,SAAA,GACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,iCAAiCC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,8CAA8C,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GAC3jB,IDUpB,EACA,KACA,KACA,MAI8B,O,mCEEhC,MCpBwG,EDoBxG,CACEzB,KAAM,WACNC,MAAO,CAAC,SACRC,MAAO,CACLC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,E,SAAA,GACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,iCAAiCC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,sCAAsC,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GACnjB,IDUpB,EACA,KACA,KACA,MAI8B,O,mCElBhC,I,ohCC4CA,MC5CqL,ED4CrL,CACA,sBACA,YACA,eACA,iCAGA,OACA,iBACA,WACA,cAIA,iBACA,SACA,WAFA,IAMA,wBANA,WAMA,WAEA,+EACA,IAGA,gBACA,SACA,4BAFA,IAKA,kBALA,WAKA,0JACA,sEADA,4CAEA,EAEA,oBATA,WASA,0JACA,sEADA,4CAEA,KE/DA,SAXgB,E,SAAA,GACd,GHRW,WAAa,IAAIf,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAQF,EAA2B,wBAAEI,EAAG,iBAAiB,CAACI,MAAM,CAAC,qBAAoB,EAAK,aAAaR,EAAIgB,EAAE,SAAU,+BAA+BP,GAAG,CAAC,MAAQT,EAAIiB,oBAAoB,CAACjB,EAAIa,GAAG,OAAOb,EAAIc,GAAGd,EAAIgB,EAAE,SAAU,+BAA+B,QAAQZ,EAAG,OAAO,CAACI,MAAM,CAAC,KAAO,QAAQU,KAAK,UAAU,GAAGd,EAAG,iBAAiB,CAACI,MAAM,CAAC,qBAAoB,EAAK,aAAaR,EAAIgB,EAAE,SAAU,oCAAoCP,GAAG,CAAC,MAAQT,EAAImB,sBAAsB,CAACnB,EAAIa,GAAG,OAAOb,EAAIc,GAAGd,EAAIgB,EAAE,SAAU,oCAAoC,QAAQZ,EAAG,OAAO,CAACI,MAAM,CAAC,KAAO,QAAQU,KAAK,UAAU,EAAE,GAC7pB,IGUpB,EACA,KACA,KACA,MAI8B,O,gDClBhC,I,iCCoBA,MCpBmH,EDoBnH,CACE5B,KAAM,sBACNC,MAAO,CAAC,SACRC,MAAO,CACLC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,M,eEff,SAXgB,OACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,8CAA8CC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,sJAAsJ,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GAChrB,IDUpB,EACA,KACA,KACA,MAI8B,QEEhC,MCpB8G,EDoB9G,CACEzB,KAAM,iBACNC,MAAO,CAAC,SACRC,MAAO,CACLC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,OACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,wCAAwCC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,gIAAgI,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GACppB,IDUpB,EACA,KACA,KACA,MAI8B,Q,yJE4DhC,MC9EkL,ED8ElL,CACA,mBAEA,YACA,SACA,kBACA,oBACA,wBACA,8BACA,eAGA,SAKA,WALA,SAKA,GACA,mFACA,GAGA,QACA,KAGA,KA1BA,WA2BA,OACA,yBAEA,EAEA,SACA,oBADA,WAEA,8BACA,kBACA,EAEA,UANA,SAMA,GACA,4BACA,I,qIE3GIK,EAAU,CAAC,EAEfA,EAAQC,kBAAoB,IAC5BD,EAAQE,cAAgB,IAElBF,EAAQG,OAAS,SAAc,KAAM,QAE3CH,EAAQI,OAAS,IACjBJ,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKJ,KAAW,YAAiB,WCPlD,SAXgB,OACd,GCTW,WAAa,IAAIpB,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAASF,EAAI0B,sBAAu1CtB,EAAG,YAAY,CAACI,MAAM,CAAC,uBAAsB,EAAK,MAAQR,EAAIgB,EAAE,SAAU,cAAcP,GAAG,CAAC,KAAO,SAASC,GAAQV,EAAI0B,uBAAwB,CAAK,EAAE,KAAO1B,EAAI2B,uBAAl+CvB,EAAG,MAAM,CAACG,YAAY,gBAAgB,CAACH,EAAG,KAAK,CAACJ,EAAIa,GAAG,SAASb,EAAIc,GAAGd,EAAIgB,EAAE,SAAU,iBAAiB,UAAWhB,EAAiB,cAAEI,EAAG,gBAAgB,CAACG,YAAY,iBAAiBP,EAAIe,MAAM,GAAGf,EAAIa,GAAG,KAAKT,EAAG,KAAK,CAACG,YAAY,oBAAoBP,EAAI4B,GAAI5B,EAAU,QAAE,SAAS6B,GAAO,OAAOzB,EAAG,aAAa,CAAC0B,IAAID,EAAME,SAASxB,YAAY,QAAQC,MAAM,CAAC,MAAQqB,EAAME,SAAS,aAAa/B,EAAIgB,EAAE,SAAU,qCAAsC,CAACgB,UAAWH,EAAME,YAAYtB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIiC,UAAUJ,EAAME,SAAS,IAAI,CAAC3B,EAAG,WAAW,CAACc,KAAK,QAAQ,EAAuB,IAArBW,EAAMK,UAAkB9B,EAAG,MAAM,CAACG,YAAY,eAAeC,MAAM,CAAC,IAAMR,EAAImC,GAAG,aAAPnC,CAAqB6B,EAAMK,cAAc9B,EAAG,MAAM,CAACG,YAAY,0CAA0C,CAACH,EAAG,gBAAgB,CAACI,MAAM,CAAC,KAAO,OAAO,KAAKR,EAAIa,GAAG,KAAKT,EAAG,WAAW,CAACc,KAAK,YAAY,CAAClB,EAAIa,GAAG,aAAab,EAAIc,GAAGd,EAAIoC,EAAE,SAAU,UAAW,uBAAwBP,EAAMQ,UAAU,iBAAiB,EAAE,IAAG,GAAGrC,EAAIa,GAAG,KAAKT,EAAG,WAAW,CAACG,YAAY,mBAAmBC,MAAM,CAAC,aAAaR,EAAIgB,EAAE,SAAU,uBAAuB,KAAO,YAAYP,GAAG,CAAC,MAAQ,SAASC,GAAQV,EAAI0B,uBAAwB,CAAI,GAAGY,YAAYtC,EAAIuC,GAAG,CAAC,CAACT,IAAI,OAAOU,GAAG,WAAW,MAAO,CAACpC,EAAG,QAAQ,EAAEqC,OAAM,IAAO,MAAK,EAAM,aAAa,CAACzC,EAAIa,GAAG,SAASb,EAAIc,GAAGd,EAAIgB,EAAE,SAAU,qBAAqB,WAAW,EAA2L,GAC/lD,IDWpB,EACA,KACA,WACA,MAI8B,Q,6gCEgIhC,MCnJyK,EDmJzK,CACA,gBACA,YACA,WACA,aACA,kBACA,aACA,SACA,8BACA,gCACA,kBACA,sBACA,gCACA,oBACA,cACA,cACA,oBACA,SACA,mBACA,oBAIA,SAIA,UAJA,SAIA,GACA,qCACA,EAIA,SAVA,SAUA,GACA,qCACA,GAGA,QACA,IACA,IACA,IACA,YAGA,iBA7CA,SA6CA,OACA,qBACA,GACA,EAEA,OACA,eACA,aACA,YAEA,WACA,WACA,iCAEA,WACA,aACA,aAIA,KAjEA,WAkEA,OACA,eACA,yBACA,mBACA,sDAEA,EAEA,eACA,SACA,WAIA,gBACA,4CADA,IAGA,WAHA,WAIA,oBACA,yBACA,yBACA,kCAEA,EAEA,WAXA,SAWA,cACA,gBACA,iBACA,gBACA,qFACA,mRACA,mBAEA,EAEA,aArBA,WAuBA,EAEA,oBAzBA,SAyBA,oJACA,qBADA,SAEA,gEAFA,4CAGA,EAEA,gBA9BA,WA8BA,uJAEA,oBACA,oBACA,8EAJA,SAKA,iBALA,4CAMA,K,eE5PI,EAAU,CAAC,EAEf,EAAQK,kBAAoB,IAC5B,EAAQC,cAAgB,IAElB,EAAQC,OAAS,SAAc,KAAM,QAE3C,EAAQC,OAAS,IACjB,EAAQC,mBAAqB,IAEhB,IAAI,IAAS,GAKJ,KAAW,YAAiB,WCPlD,SAXgB,OACd,GjBTW,WAAa,IAAIzB,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAQF,EAAsB,mBAAEI,EAAG,iBAAiB,CAACJ,EAAIa,GAAG,OAAOb,EAAIc,GAAGd,EAAIgB,EAAE,SAAU,sBAAsB,QAAQZ,EAAG,MAAM,CAACG,YAAY,YAAY,CAACH,EAAG,MAAM,CAACG,YAAY,oBAAoB,CAAiC,IAA/BP,EAAI0C,gBAAgBC,OAAcvC,EAAG,YAAY,CAACI,MAAM,CAAC,eAAc,EAAK,cAAa,EAAK,aAAaR,EAAIgB,EAAE,SAAU,OAAO,SAAU,IAAO,CAACZ,EAAG,OAAO,CAACI,MAAM,CAAC,KAAO,QAAQU,KAAK,SAASlB,EAAIa,GAAG,KAAKT,EAAG,iBAAiB,CAACI,MAAM,CAAC,qBAAoB,GAAMC,GAAG,CAAC,MAAQT,EAAI4C,eAAe,CAAC5C,EAAIa,GAAG,aAAab,EAAIc,GAAGd,EAAIgB,EAAE,SAAU,iBAAiB,cAAcZ,EAAG,aAAa,CAACI,MAAM,CAAC,KAAO,QAAQU,KAAK,UAAU,GAAGlB,EAAIa,GAAG,KAAKT,EAAG,iBAAiB,CAACI,MAAM,CAAC,qBAAoB,EAAK,aAAaR,EAAIgB,EAAE,SAAU,uBAAuBP,GAAG,CAAC,MAAQ,SAASC,GAAQV,EAAI0B,uBAAwB,CAAI,IAAI,CAAC1B,EAAIa,GAAG,aAAab,EAAIc,GAAGd,EAAIgB,EAAE,SAAU,qBAAqB,cAAcZ,EAAG,kBAAkB,CAACI,MAAM,CAAC,KAAO,QAAQU,KAAK,UAAU,IAAI,GAAG,CAACd,EAAG,WAAW,CAACI,MAAM,CAAC,qBAAoB,EAAK,KAAO,UAAU,aAAaR,EAAIgB,EAAE,SAAU,8BAA8BP,GAAG,CAAC,MAAQ,SAASC,GAAQV,EAAI6C,iBAAkB,CAAI,GAAGP,YAAYtC,EAAIuC,GAAG,CAAC,CAACT,IAAI,OAAOU,GAAG,WAAW,MAAO,CAACpC,EAAG,OAAO,CAACI,MAAM,CAAC,KAAO,QAAQU,KAAK,SAAS,EAAEuB,OAAM,MAAS,CAACzC,EAAIa,GAAG,aAAab,EAAIc,GAAGd,EAAIgB,EAAE,SAAU,iBAAiB,cAAchB,EAAIa,GAAG,KAAKT,EAAG,YAAY,CAACI,MAAM,CAAC,aAAaR,EAAIgB,EAAE,SAAU,uBAAuB,CAACZ,EAAG,iBAAiB,CAACI,MAAM,CAAC,oBAAoBR,EAAI0C,gBAAgB,MAAQ1C,EAAIgB,EAAE,SAAU,6BAA6B,CAACZ,EAAG,WAAW,CAACI,MAAM,CAAC,KAAO,QAAQU,KAAK,UAAU,GAAGlB,EAAIa,GAAG,KAAKT,EAAG,iBAAiB,CAACI,MAAM,CAAC,oBAAoBR,EAAI0C,mBAAmB1C,EAAIa,GAAG,KAAKT,EAAG,iBAAiB,CAACI,MAAM,CAAC,qBAAoB,EAAK,aAAaR,EAAIgB,EAAE,SAAU,qBAAqBP,GAAG,CAAC,MAAQT,EAAI8C,kBAAkB,CAAC9C,EAAIa,GAAG,eAAeb,EAAIc,GAAGd,EAAIgB,EAAE,SAAU,qBAAqB,gBAAgBZ,EAAG,SAAS,CAACI,MAAM,CAAC,KAAO,QAAQU,KAAK,UAAU,IAAI,IAAIlB,EAAIa,GAAG,KAAMb,EAAI+C,aAAe,EAAG3C,EAAG,gBAAgB,CAAC0B,IAAI,SAAStB,MAAM,CAAC,KAAO,MAAMR,EAAIe,MAAM,GAAGf,EAAIa,GAAG,KAAKT,EAAG,kBAAkB,CAAC4C,IAAI,kBAAkBzC,YAAY,sBAAsBC,MAAM,CAAC,oBAAoBR,EAAIiD,WAAW,sBAAsBjD,EAAIkD,eAAe,SAAWlD,EAAImD,WAAW,QAAUnD,EAAIoD,aAAa,cAAcpD,EAAIqD,SAAW,IAAM,IAAI,gBAAgBrD,EAAIgB,EAAE,SAAU,sBAAsBP,GAAG,CAAC,eAAeT,EAAIsD,YAAYhB,YAAYtC,EAAIuC,GAAG,CAAC,CAACT,IAAI,UAAUU,GAAG,SAASQ,GAC1/E,IAAIO,EAAOP,EAAIO,KACXC,EAAaR,EAAIQ,WACrB,MAAO,CAAED,EAAkB,cAAEnD,EAAG,KAAK,CAACG,YAAY,iBAAiBC,MAAM,CAAC,GAAM,8BAAiC+C,EAAO,KAAK,CAACnD,EAAG,IAAI,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAImC,GAAG,YAAPnC,CAAoBuD,EAAKlE,QAAQW,EAAIa,GAAG,aAAab,EAAIc,GAAGd,EAAImC,GAAG,WAAPnC,CAAmBuD,EAAKlE,KAAK,cAAce,EAAG,OAAO,CAACI,MAAM,CAAC,KAAOR,EAAIyD,MAAMF,EAAKlE,IAAI,mBAAkB,EAAK,UAAsC,IAA3BW,EAAI0D,UAAUH,EAAKlE,IAAa,WAAamE,EAAW,UAAYxD,EAAI2D,WAAWlD,GAAG,CAAC,MAAQT,EAAI4D,WAAW,iBAAiB5D,EAAI6D,sBAAsB,OAAO7D,EAAIa,GAAG,KAAMb,EAAyB,sBAAEI,EAAG,UAAU,CAAC0B,IAAI,oBAAoBtB,MAAM,CAAC,0BAAyB,EAAM,MAAQR,EAAIgB,EAAE,SAAU,cAAcP,GAAG,CAAC,MAAQ,SAASC,GAAQV,EAAI0B,uBAAwB,CAAK,IAAI,CAACtB,EAAG,YAAY,CAACK,GAAG,CAAC,KAAO,SAASC,GAAQV,EAAI0B,uBAAwB,CAAK,MAAM,GAAG1B,EAAIe,KAAKf,EAAIa,GAAG,KAAMb,EAAmB,gBAAEI,EAAG,UAAU,CAAC0B,IAAI,cAActB,MAAM,CAAC,0BAAyB,EAAM,MAAQR,EAAIgB,EAAE,SAAU,iBAAiBP,GAAG,CAAC,MAAQ,SAASC,GAAQV,EAAI6C,iBAAkB,CAAK,IAAI,CAACzC,EAAG,cAAc,CAACK,GAAG,CAAC,eAAeT,EAAI8D,wBAAwB,GAAG9D,EAAIe,MAAM,EAAE,GAC7iC,IiBQpB,EACA,KACA,WACA,MAI8B,O","sources":["webpack:///photos/src/components/Albums/AlbumPicker.vue?vue&type=style&index=0&id=c27aa5aa&lang=scss&scoped=true&","webpack:///photos/src/views/Timeline.vue?vue&type=style&index=0&id=565548e9&lang=scss&scoped=true&","webpack:///photos/node_modules/vue-material-design-icons/AccountMultiplePlus.vue","webpack:///photos/node_modules/vue-material-design-icons/AccountMultiplePlus.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/AccountMultiplePlus.vue?e9b5","webpack:///photos/node_modules/vue-material-design-icons/AccountMultiplePlus.vue?vue&type=template&id=7e4925e6&","webpack:///photos/node_modules/vue-material-design-icons/ContentCopy.vue","webpack:///photos/node_modules/vue-material-design-icons/ContentCopy.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/ContentCopy.vue?c47c","webpack:///photos/node_modules/vue-material-design-icons/ContentCopy.vue?vue&type=template&id=00bbfaf7&","webpack:///photos/node_modules/vue-material-design-icons/Delete.vue","webpack:///photos/node_modules/vue-material-design-icons/Delete.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/Delete.vue?92e1","webpack:///photos/node_modules/vue-material-design-icons/Delete.vue?vue&type=template&id=458c7ecb&","webpack:///photos/node_modules/vue-material-design-icons/Download.vue","webpack:///photos/node_modules/vue-material-design-icons/Download.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/Download.vue?b226","webpack:///photos/node_modules/vue-material-design-icons/Download.vue?vue&type=template&id=67aea606&","webpack:///photos/node_modules/vue-material-design-icons/Earth.vue","webpack:///photos/node_modules/vue-material-design-icons/Earth.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/Earth.vue?d380","webpack:///photos/node_modules/vue-material-design-icons/Earth.vue?vue&type=template&id=3a17232e&","webpack:///photos/node_modules/vue-material-design-icons/ImageMultiple.vue","webpack:///photos/node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/ImageMultiple.vue?126d","webpack:///photos/node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=template&id=21a95e74&","webpack:///photos/node_modules/vue-material-design-icons/Magnify.vue","webpack:///photos/node_modules/vue-material-design-icons/Magnify.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/Magnify.vue?0775","webpack:///photos/node_modules/vue-material-design-icons/Magnify.vue?vue&type=template&id=d480a606&","webpack:///photos/node_modules/vue-material-design-icons/Plus.vue","webpack:///photos/node_modules/vue-material-design-icons/Plus.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/Plus.vue?80b4","webpack:///photos/node_modules/vue-material-design-icons/Plus.vue?vue&type=template&id=968bec46&","webpack:///photos/node_modules/vue-material-design-icons/Send.vue","webpack:///photos/node_modules/vue-material-design-icons/Send.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/Send.vue?0295","webpack:///photos/node_modules/vue-material-design-icons/Send.vue?vue&type=template&id=46f29e66&","webpack:///photos/src/components/Actions/ActionFavorite.vue?vue&type=template&id=16c16c0a&","webpack:///photos/src/components/Actions/ActionFavorite.vue","webpack:///photos/src/components/Actions/ActionFavorite.vue?vue&type=script&lang=js&","webpack://photos/./src/components/Actions/ActionFavorite.vue?4be4","webpack:///photos/src/views/Timeline.vue?vue&type=template&id=565548e9&scoped=true&","webpack:///photos/node_modules/vue-material-design-icons/PlusBoxMultiple.vue","webpack:///photos/node_modules/vue-material-design-icons/PlusBoxMultiple.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/PlusBoxMultiple.vue?d86c","webpack:///photos/node_modules/vue-material-design-icons/PlusBoxMultiple.vue?vue&type=template&id=5764b316&","webpack:///photos/node_modules/vue-material-design-icons/FileUpload.vue","webpack:///photos/node_modules/vue-material-design-icons/FileUpload.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/FileUpload.vue?c468","webpack:///photos/node_modules/vue-material-design-icons/FileUpload.vue?vue&type=template&id=f8a185ea&","webpack:///photos/src/components/Albums/AlbumPicker.vue","webpack:///photos/src/components/Albums/AlbumPicker.vue?vue&type=script&lang=js&","webpack://photos/./src/components/Albums/AlbumPicker.vue?910d","webpack://photos/./src/components/Albums/AlbumPicker.vue?0644","webpack:///photos/src/components/Albums/AlbumPicker.vue?vue&type=template&id=c27aa5aa&scoped=true&","webpack:///photos/src/views/Timeline.vue","webpack:///photos/src/views/Timeline.vue?vue&type=script&lang=js&","webpack://photos/./src/views/Timeline.vue?d78b","webpack://photos/./src/views/Timeline.vue?2f21"],"sourcesContent":["// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".album-picker[data-v-c27aa5aa]{padding:32px;padding-top:16px}.album-picker h2[data-v-c27aa5aa]{display:flex;align-items:center;height:60px}.album-picker h2 .loading-icon[data-v-c27aa5aa]{margin-left:32px}.album-picker .albums-container[data-v-c27aa5aa]{min-height:150px;max-height:350px;overflow-x:scroll;padding:2px}.album-picker .albums-container .album[data-v-c27aa5aa] .list-item{padding:8px 16px;box-sizing:border-box}.album-picker .albums-container .album[data-v-c27aa5aa]:not(:last-child){margin-bottom:16px}.album-picker .albums-container .album__image[data-v-c27aa5aa]{width:40px;height:40px;object-fit:none;border-radius:var(--border-radius)}.album-picker .albums-container .album__image--placeholder[data-v-c27aa5aa]{background:var(--color-primary-light)}.album-picker .albums-container .album__image--placeholder[data-v-c27aa5aa] .material-design-icon{width:100%;height:100%}.album-picker .albums-container .album__image--placeholder[data-v-c27aa5aa] .material-design-icon .material-design-icon__svg{fill:var(--color-primary)}.album-picker .new-album-button[data-v-c27aa5aa]{margin-top:32px}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/Albums/AlbumPicker.vue\"],\"names\":[],\"mappings\":\"AA6HA,+BACC,YAAA,CACA,gBAAA,CAEA,kCACC,YAAA,CACA,kBAAA,CACA,WAAA,CAEA,gDACC,gBAAA,CAIF,iDACC,gBAAA,CACA,gBAAA,CACA,iBAAA,CACA,WAAA,CAIC,oEACC,gBAAA,CACA,qBAAA,CAGD,yEACC,kBAAA,CAGD,+DACC,UAAA,CACA,WAAA,CACA,eAAA,CACA,kCAAA,CAEA,4EACC,qCAAA,CAEA,mGACC,UAAA,CACA,WAAA,CAEA,8HACC,yBAAA,CAQN,iDACC,eAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.album-picker {\\n\\tpadding: 32px;\\n\\tpadding-top: 16px;\\n\\n\\th2 {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\theight: 60px;\\n\\n\\t\\t.loading-icon {\\n\\t\\t\\tmargin-left: 32px;\\n\\t\\t}\\n\\t}\\n\\n\\t.albums-container {\\n\\t\\tmin-height: 150px;\\n\\t\\tmax-height: 350px;\\n\\t\\toverflow-x: scroll;\\n\\t\\tpadding: 2px;\\n\\n\\t\\t.album {\\n\\n\\t\\t\\t::v-deep .list-item {\\n\\t\\t\\t\\tpadding: 8px 16px;\\n\\t\\t\\t\\tbox-sizing: border-box;\\n\\t\\t\\t}\\n\\n\\t\\t\\t&:not(:last-child) {\\n\\t\\t\\t\\tmargin-bottom: 16px;\\n\\t\\t\\t}\\n\\n\\t\\t\\t&__image {\\n\\t\\t\\t\\twidth: 40px;\\n\\t\\t\\t\\theight: 40px;\\n\\t\\t\\t\\tobject-fit: none;\\n\\t\\t\\t\\tborder-radius: var(--border-radius);\\n\\n\\t\\t\\t\\t&--placeholder {\\n\\t\\t\\t\\t\\tbackground: var(--color-primary-light);\\n\\n\\t\\t\\t\\t\\t::v-deep .material-design-icon {\\n\\t\\t\\t\\t\\t\\twidth: 100%;\\n\\t\\t\\t\\t\\t\\theight: 100%;\\n\\n\\t\\t\\t\\t\\t\\t.material-design-icon__svg {\\n\\t\\t\\t\\t\\t\\t\\tfill: var(--color-primary);\\n\\t\\t\\t\\t\\t\\t}\\n\\t\\t\\t\\t\\t}\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t.new-album-button {\\n\\t\\tmargin-top: 32px;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".timeline[data-v-565548e9]{display:flex;flex-direction:column}.timeline__header[data-v-565548e9]{display:flex;min-height:60px;box-sizing:content-box;align-items:center;position:-webkit-sticky;position:sticky;width:100%;height:60px;z-index:3;background:var(--color-main-background);padding:8px 64px 0px 64px}@media only screen and (max-width: 1200px){.timeline__header[data-v-565548e9]{padding:0 48px}}.timeline__header>*[data-v-565548e9]{margin-right:8px}.timeline__header .loader[data-v-565548e9]{margin-left:16px}.timeline__file-list[data-v-565548e9]{padding:0 64px}@media only screen and (max-width: 1200px){.timeline__file-list[data-v-565548e9]{padding:0 4px}}.timeline__file-list[data-v-565548e9] .files-list-viewer__section-header{top:0}.timeline__file-list .section-header[data-v-565548e9]{padding:24px 0 16px 0}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/views/Timeline.vue\"],\"names\":[],\"mappings\":\"AA6QA,2BACC,YAAA,CACA,qBAAA,CAEA,mCACC,YAAA,CACA,eAAA,CACA,sBAAA,CACA,kBAAA,CACA,uBAAA,CAAA,eAAA,CACA,UAAA,CACA,WAAA,CACA,SAAA,CACA,uCAAA,CACA,yBAAA,CAEA,2CAZD,mCAaE,cAAA,CAAA,CAGD,qCACC,gBAAA,CAGD,2CACC,gBAAA,CAIF,sCACC,cAAA,CAEA,2CAHD,sCAIE,aAAA,CAAA,CAGD,0EACC,KAAA,CAGD,sDACC,qBAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.timeline {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\n\\t&__header {\\n\\t\\tdisplay: flex;\\n\\t\\tmin-height: 60px;\\n\\t\\tbox-sizing: content-box;\\n\\t\\talign-items: center;\\n\\t\\tposition: sticky;\\n\\t\\twidth: 100%;\\n\\t\\theight: 60px;\\n\\t\\tz-index: 3;\\n\\t\\tbackground: var(--color-main-background);\\n\\t\\tpadding: 8px 64px 0px 64px;\\n\\n\\t\\t@media only screen and (max-width: 1200px) {\\n\\t\\t\\tpadding: 0 48px;\\n\\t\\t}\\n\\n\\t\\t& > * {\\n\\t\\t\\tmargin-right: 8px;\\n\\t\\t}\\n\\n\\t\\t.loader {\\n\\t\\t\\tmargin-left: 16px;\\n\\t\\t}\\n\\t}\\n\\n\\t&__file-list {\\n\\t\\tpadding: 0 64px;\\n\\n\\t\\t@media only screen and (max-width: 1200px) {\\n\\t\\t\\tpadding: 0 4px;\\n\\t\\t}\\n\\n\\t\\t::v-deep .files-list-viewer__section-header {\\n\\t\\t\\ttop: 0;\\n\\t\\t}\\n\\n\\t\\t.section-header {\\n\\t\\t\\tpadding: 24px 0 16px 0;\\n\\t\\t}\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./AccountMultiplePlus.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./AccountMultiplePlus.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AccountMultiplePlus.vue?vue&type=template&id=7e4925e6&\"\nimport script from \"./AccountMultiplePlus.vue?vue&type=script&lang=js&\"\nexport * from \"./AccountMultiplePlus.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon account-multiple-plus-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M19 17V19H7V17S7 13 13 13 19 17 19 17M16 8A3 3 0 1 0 13 11A3 3 0 0 0 16 8M19.2 13.06A5.6 5.6 0 0 1 21 17V19H24V17S24 13.55 19.2 13.06M18 5A2.91 2.91 0 0 0 17.11 5.14A5 5 0 0 1 17.11 10.86A2.91 2.91 0 0 0 18 11A3 3 0 0 0 18 5M8 10H5V7H3V10H0V12H3V15H5V12H8Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ContentCopy.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ContentCopy.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ContentCopy.vue?vue&type=template&id=00bbfaf7&\"\nimport script from \"./ContentCopy.vue?vue&type=script&lang=js&\"\nexport * from \"./ContentCopy.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon content-copy-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Delete.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Delete.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Delete.vue?vue&type=template&id=458c7ecb&\"\nimport script from \"./Delete.vue?vue&type=script&lang=js&\"\nexport * from \"./Delete.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon delete-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M19,4H15.5L14.5,3H9.5L8.5,4H5V6H19M6,19A2,2 0 0,0 8,21H16A2,2 0 0,0 18,19V7H6V19Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Download.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Download.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Download.vue?vue&type=template&id=67aea606&\"\nimport script from \"./Download.vue?vue&type=script&lang=js&\"\nexport * from \"./Download.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon download-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M5,20H19V18H5M19,9H15V3H9V9H5L12,16L19,9Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Earth.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Earth.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Earth.vue?vue&type=template&id=3a17232e&\"\nimport script from \"./Earth.vue?vue&type=script&lang=js&\"\nexport * from \"./Earth.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon earth-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M17.9,17.39C17.64,16.59 16.89,16 16,16H15V13A1,1 0 0,0 14,12H8V10H10A1,1 0 0,0 11,9V7H13A2,2 0 0,0 15,5V4.59C17.93,5.77 20,8.64 20,12C20,14.08 19.2,15.97 17.9,17.39M11,19.93C7.05,19.44 4,16.08 4,12C4,11.38 4.08,10.78 4.21,10.21L9,15V16A2,2 0 0,0 11,18M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ImageMultiple.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ImageMultiple.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ImageMultiple.vue?vue&type=template&id=21a95e74&\"\nimport script from \"./ImageMultiple.vue?vue&type=script&lang=js&\"\nexport * from \"./ImageMultiple.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon image-multiple-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M22,16V4A2,2 0 0,0 20,2H8A2,2 0 0,0 6,4V16A2,2 0 0,0 8,18H20A2,2 0 0,0 22,16M11,12L13.03,14.71L16,11L20,16H8M2,6V20A2,2 0 0,0 4,22H18V20H4V6\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Magnify.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Magnify.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Magnify.vue?vue&type=template&id=d480a606&\"\nimport script from \"./Magnify.vue?vue&type=script&lang=js&\"\nexport * from \"./Magnify.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon magnify-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M9.5,3A6.5,6.5 0 0,1 16,9.5C16,11.11 15.41,12.59 14.44,13.73L14.71,14H15.5L20.5,19L19,20.5L14,15.5V14.71L13.73,14.44C12.59,15.41 11.11,16 9.5,16A6.5,6.5 0 0,1 3,9.5A6.5,6.5 0 0,1 9.5,3M9.5,5C7,5 5,7 5,9.5C5,12 7,14 9.5,14C12,14 14,12 14,9.5C14,7 12,5 9.5,5Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Plus.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Plus.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Plus.vue?vue&type=template&id=968bec46&\"\nimport script from \"./Plus.vue?vue&type=script&lang=js&\"\nexport * from \"./Plus.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon plus-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Send.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Send.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Send.vue?vue&type=template&id=46f29e66&\"\nimport script from \"./Send.vue?vue&type=script&lang=js&\"\nexport * from \"./Send.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon send-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M2,21L23,12L2,3V10L17,12L2,14V21Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.shouldFavoriteSelection)?_c('NcActionButton',{attrs:{\"close-after-click\":true,\"aria-label\":_vm.t('photos', 'Mark selection as favorite')},on:{\"click\":_vm.favoriteSelection}},[_vm._v(\"\\n\\t\"+_vm._s(_vm.t('photos', 'Add selection to favorites'))+\"\\n\\t\"),_c('Star',{attrs:{\"slot\":\"icon\"},slot:\"icon\"})],1):_c('NcActionButton',{attrs:{\"close-after-click\":true,\"aria-label\":_vm.t('photos', 'Remove selection from favorites')},on:{\"click\":_vm.unFavoriteSelection}},[_vm._v(\"\\n\\t\"+_vm._s(_vm.t('photos', 'Remove selection from favorites'))+\"\\n\\t\"),_c('Star',{attrs:{\"slot\":\"icon\"},slot:\"icon\"})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActionFavorite.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!./ActionFavorite.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ActionFavorite.vue?vue&type=template&id=16c16c0a&\"\nimport script from \"./ActionFavorite.vue?vue&type=script&lang=js&\"\nexport * from \"./ActionFavorite.vue?vue&type=script&lang=js&\"\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 (_vm.errorFetchingFiles)?_c('NcEmptyContent',[_vm._v(\"\\n\\t\"+_vm._s(_vm.t('photos', 'An error occurred'))+\"\\n\")]):_c('div',{staticClass:\"timeline\"},[_c('div',{staticClass:\"timeline__header\"},[(_vm.selectedFileIds.length === 0)?_c('NcActions',{attrs:{\"force-title\":true,\"force-menu\":true,\"menu-title\":_vm.t('photos', 'Add'),\"primary\":true}},[_c('Plus',{attrs:{\"slot\":\"icon\"},slot:\"icon\"}),_vm._v(\" \"),_c('NcActionButton',{attrs:{\"close-after-click\":true},on:{\"click\":_vm.openUploader}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('photos', 'Upload media'))+\"\\n\\t\\t\\t\\t\"),_c('FileUpload',{attrs:{\"slot\":\"icon\"},slot:\"icon\"})],1),_vm._v(\" \"),_c('NcActionButton',{attrs:{\"close-after-click\":true,\"aria-label\":_vm.t('photos', 'Create a new album')},on:{\"click\":function($event){_vm.showAlbumCreationForm = true}}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('photos', 'Create new album'))+\"\\n\\t\\t\\t\\t\"),_c('PlusBoxMultiple',{attrs:{\"slot\":\"icon\"},slot:\"icon\"})],1)],1):[_c('NcButton',{attrs:{\"close-after-click\":true,\"type\":\"primary\",\"aria-label\":_vm.t('photos', 'Add selection to an album')},on:{\"click\":function($event){_vm.showAlbumPicker = true}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Plus',{attrs:{\"slot\":\"icon\"},slot:\"icon\"})]},proxy:true}])},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('photos', 'Add to album'))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('NcActions',{attrs:{\"aria-label\":_vm.t('photos', 'Open actions menu')}},[_c('ActionDownload',{attrs:{\"selected-file-ids\":_vm.selectedFileIds,\"title\":_vm.t('photos', 'Download selected files')}},[_c('Download',{attrs:{\"slot\":\"icon\"},slot:\"icon\"})],1),_vm._v(\" \"),_c('ActionFavorite',{attrs:{\"selected-file-ids\":_vm.selectedFileIds}}),_vm._v(\" \"),_c('NcActionButton',{attrs:{\"close-after-click\":true,\"aria-label\":_vm.t('photos', 'Delete selection')},on:{\"click\":_vm.deleteSelection}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('photos', 'Delete selection'))+\"\\n\\t\\t\\t\\t\\t\"),_c('Delete',{attrs:{\"slot\":\"icon\"},slot:\"icon\"})],1)],1)],_vm._v(\" \"),(_vm.loadingCount > 0)?_c('NcLoadingIcon',{key:\"loader\",attrs:{\"size\":32}}):_vm._e()],2),_vm._v(\" \"),_c('FilesListViewer',{ref:\"filesListViewer\",staticClass:\"timeline__file-list\",attrs:{\"container-element\":_vm.appContent,\"file-ids-by-section\":_vm.fileIdsByMonth,\"sections\":_vm.monthsList,\"loading\":_vm.loadingFiles,\"base-height\":_vm.isMobile ? 120 : 200,\"empty-message\":_vm.t('photos', 'No photos in here')},on:{\"need-content\":_vm.getContent},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar file = ref.file;\nvar visibility = ref.visibility;\nreturn [(file.sectionHeader)?_c('h3',{staticClass:\"section-header\",attrs:{\"id\":(\"file-picker-section-header-\" + (file.id))}},[_c('b',[_vm._v(_vm._s(_vm._f(\"dateMonth\")(file.id)))]),_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm._f(\"dateYear\")(file.id))+\"\\n\\t\\t\\t\")]):_c('File',{attrs:{\"file\":_vm.files[file.id],\"allow-selection\":true,\"selected\":_vm.selection[file.id] === true,\"visibility\":visibility,\"semaphore\":_vm.semaphore},on:{\"click\":_vm.openViewer,\"select-toggled\":_vm.onFileSelectToggle}})]}}])}),_vm._v(\" \"),(_vm.showAlbumCreationForm)?_c('NcModal',{key:\"albumCreationForm\",attrs:{\"close-button-contained\":false,\"title\":_vm.t('photos', 'New album')},on:{\"close\":function($event){_vm.showAlbumCreationForm = false}}},[_c('AlbumForm',{on:{\"done\":function($event){_vm.showAlbumCreationForm = false}}})],1):_vm._e(),_vm._v(\" \"),(_vm.showAlbumPicker)?_c('NcModal',{key:\"albumPicker\",attrs:{\"close-button-contained\":false,\"title\":_vm.t('photos', 'Add to album')},on:{\"close\":function($event){_vm.showAlbumPicker = false}}},[_c('AlbumPicker',{on:{\"album-picked\":_vm.addSelectionToAlbum}})],1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./PlusBoxMultiple.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./PlusBoxMultiple.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./PlusBoxMultiple.vue?vue&type=template&id=5764b316&\"\nimport script from \"./PlusBoxMultiple.vue?vue&type=script&lang=js&\"\nexport * from \"./PlusBoxMultiple.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon plus-box-multiple-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M19,11H15V15H13V11H9V9H13V5H15V9H19M20,2H8A2,2 0 0,0 6,4V16A2,2 0 0,0 8,18H20A2,2 0 0,0 22,16V4A2,2 0 0,0 20,2M4,6H2V20A2,2 0 0,0 4,22H18V20H4V6Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./FileUpload.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./FileUpload.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./FileUpload.vue?vue&type=template&id=f8a185ea&\"\nimport script from \"./FileUpload.vue?vue&type=script&lang=js&\"\nexport * from \"./FileUpload.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon file-upload-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M14,2H6A2,2 0 0,0 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2M13.5,16V19H10.5V16H8L12,12L16,16H13.5M13,9V3.5L18.5,9H13Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AlbumPicker.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!./AlbumPicker.vue?vue&type=script&lang=js&\"","\n import API from \"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./AlbumPicker.vue?vue&type=style&index=0&id=c27aa5aa&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./AlbumPicker.vue?vue&type=style&index=0&id=c27aa5aa&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./AlbumPicker.vue?vue&type=template&id=c27aa5aa&scoped=true&\"\nimport script from \"./AlbumPicker.vue?vue&type=script&lang=js&\"\nexport * from \"./AlbumPicker.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AlbumPicker.vue?vue&type=style&index=0&id=c27aa5aa&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 \"c27aa5aa\",\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 (!_vm.showAlbumCreationForm)?_c('div',{staticClass:\"album-picker\"},[_c('h2',[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('photos', 'Add to Album'))+\"\\n\\t\\t\"),(_vm.loadingAlbums)?_c('NcLoadingIcon',{staticClass:\"loading-icon\"}):_vm._e()],1),_vm._v(\" \"),_c('ul',{staticClass:\"albums-container\"},_vm._l((_vm.albums),function(album){return _c('NcListItem',{key:album.basename,staticClass:\"album\",attrs:{\"title\":album.basename,\"aria-label\":_vm.t('photos', 'Add selection to album {ablumName}', {albumName: album.basename})},on:{\"click\":function($event){return _vm.pickAlbum(album.basename)}}},[_c('template',{slot:\"icon\"},[(album.lastPhoto !== -1)?_c('img',{staticClass:\"album__image\",attrs:{\"src\":_vm._f(\"toCoverUrl\")(album.lastPhoto)}}):_c('div',{staticClass:\"album__image album__image--placeholder\"},[_c('ImageMultiple',{attrs:{\"size\":32}})],1)]),_vm._v(\" \"),_c('template',{slot:\"subtitle\"},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.n('photos', '%n item', '%n photos and videos', album.nbItems))+\"\\n\\t\\t\\t\\t\")])],2)}),1),_vm._v(\" \"),_c('NcButton',{staticClass:\"new-album-button\",attrs:{\"aria-label\":_vm.t('photos', 'Create a new album.'),\"type\":\"tertiary\"},on:{\"click\":function($event){_vm.showAlbumCreationForm = true}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Plus')]},proxy:true}],null,false,1489515321)},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('photos', 'Create new album'))+\"\\n\\t\")])],1):_c('AlbumForm',{attrs:{\"display-back-button\":true,\"title\":_vm.t('photos', 'New album')},on:{\"back\":function($event){_vm.showAlbumCreationForm = false},\"done\":_vm.albumCreatedHandler}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\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&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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=565548e9&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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=565548e9&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Timeline.vue?vue&type=template&id=565548e9&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=565548e9&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 \"565548e9\",\n null\n \n)\n\nexport default component.exports"],"names":["___CSS_LOADER_EXPORT___","push","module","id","name","emits","props","title","type","String","fillColor","default","size","Number","_vm","this","_h","$createElement","_c","_self","_b","staticClass","attrs","on","$event","$emit","$attrs","_v","_s","_e","t","favoriteSelection","slot","unFavoriteSelection","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","showAlbumCreationForm","albumCreatedHandler","_l","album","key","basename","albumName","pickAlbum","lastPhoto","_f","n","nbItems","scopedSlots","_u","fn","proxy","selectedFileIds","length","openUploader","showAlbumPicker","deleteSelection","loadingCount","ref","appContent","fileIdsByMonth","monthsList","loadingFiles","isMobile","getContent","file","visibility","files","selection","semaphore","openViewer","onFileSelectToggle","addSelectionToAlbum"],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-node_modules_vue-material-design-icons_AccountMultiplePlus_vue-node_modules_vue-material-desi-664d11.js b/js/photos-node_modules_vue-material-design-icons_AccountMultiplePlus_vue-node_modules_vue-material-desi-664d11.js deleted file mode 100644 index dd836c961..000000000 --- a/js/photos-node_modules_vue-material-design-icons_AccountMultiplePlus_vue-node_modules_vue-material-desi-664d11.js +++ /dev/null @@ -1,1880 +0,0 @@ -"use strict"; -(self["webpackChunkphotos"] = self["webpackChunkphotos"] || []).push([["node_modules_vue-material-design-icons_AccountMultiplePlus_vue-node_modules_vue-material-desi-664d11"],{ - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Actions/ActionFavorite.vue?vue&type=script&lang=js&": -/*!********************************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Actions/ActionFavorite.vue?vue&type=script&lang=js& ***! - \********************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! vuex */ "./node_modules/vuex/dist/vuex.esm.js"); -/* harmony import */ var vue_material_design_icons_Star__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue-material-design-icons/Star */ "./node_modules/vue-material-design-icons/Star.vue"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/vue */ "./node_modules/@nextcloud/vue/dist/ncvuecomponents.js"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue__WEBPACK_IMPORTED_MODULE_1__); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'ActionFavorite', - components: { - Star: vue_material_design_icons_Star__WEBPACK_IMPORTED_MODULE_0__["default"], - NcActionButton: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_1__.NcActionButton - }, - props: { - selectedFileIds: { - type: Array, - required: true - } - }, - computed: { ...(0,vuex__WEBPACK_IMPORTED_MODULE_2__.mapGetters)(['files']), - - /** @return {boolean} */ - shouldFavoriteSelection() { - // Favorite all selection if at least one file is not in the favorites. - return this.selectedFileIds.some(fileId => this.files[fileId].favorite === 0); - } - - }, - methods: { ...(0,vuex__WEBPACK_IMPORTED_MODULE_2__.mapActions)(['toggleFavoriteForFiles']), - - async favoriteSelection() { - await this.toggleFavoriteForFiles({ - fileIds: this.selectedFileIds, - favoriteState: 1 - }); - }, - - async unFavoriteSelection() { - await this.toggleFavoriteForFiles({ - fileIds: this.selectedFileIds, - favoriteState: 0 - }); - } - - } -}); - -/***/ }), - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/AlbumContent.vue?vue&type=script&lang=js&": -/*!*****************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/AlbumContent.vue?vue&type=script&lang=js& ***! - \*****************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! vuex */ "./node_modules/vuex/dist/vuex.esm.js"); -/* harmony import */ var vue_material_design_icons_MapMarker__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue-material-design-icons/MapMarker */ "./node_modules/vue-material-design-icons/MapMarker.vue"); -/* harmony import */ var vue_material_design_icons_ShareVariant__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! vue-material-design-icons/ShareVariant */ "./node_modules/vue-material-design-icons/ShareVariant.vue"); -/* harmony import */ var vue_material_design_icons_Plus__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! vue-material-design-icons/Plus */ "./node_modules/vue-material-design-icons/Plus.vue"); -/* harmony import */ var vue_material_design_icons_Pencil__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! vue-material-design-icons/Pencil */ "./node_modules/vue-material-design-icons/Pencil.vue"); -/* harmony import */ var vue_material_design_icons_Delete__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! vue-material-design-icons/Delete */ "./node_modules/vue-material-design-icons/Delete.vue"); -/* harmony import */ var vue_material_design_icons_ImagePlus__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! vue-material-design-icons/ImagePlus */ "./node_modules/vue-material-design-icons/ImagePlus.vue"); -/* harmony import */ var vue_material_design_icons_Close__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! vue-material-design-icons/Close */ "./node_modules/vue-material-design-icons/Close.vue"); -/* harmony import */ var vue_material_design_icons_Download__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! vue-material-design-icons/Download */ "./node_modules/vue-material-design-icons/Download.vue"); -/* harmony import */ var vue_material_design_icons_DownloadMultiple__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! vue-material-design-icons/DownloadMultiple */ "./node_modules/vue-material-design-icons/DownloadMultiple.vue"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @nextcloud/vue */ "./node_modules/@nextcloud/vue/dist/ncvuecomponents.js"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue__WEBPACK_IMPORTED_MODULE_9__); -/* harmony import */ var _nextcloud_auth__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @nextcloud/auth */ "./node_modules/@nextcloud/auth/dist/index.esm.js"); -/* harmony import */ var _nextcloud_router__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @nextcloud/router */ "./node_modules/@nextcloud/router/dist/index.js"); -/* harmony import */ var _mixins_FetchAlbumsMixin_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../mixins/FetchAlbumsMixin.js */ "./src/mixins/FetchAlbumsMixin.js"); -/* harmony import */ var _mixins_FetchFilesMixin_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../mixins/FetchFilesMixin.js */ "./src/mixins/FetchFilesMixin.js"); -/* harmony import */ var _mixins_AbortControllerMixin_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../mixins/AbortControllerMixin.js */ "./src/mixins/AbortControllerMixin.js"); -/* harmony import */ var _components_HeaderNavigation_vue__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../components/HeaderNavigation.vue */ "./src/components/HeaderNavigation.vue"); -/* harmony import */ var _components_FilesPicker_vue__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../components/FilesPicker.vue */ "./src/components/FilesPicker.vue"); -/* harmony import */ var _components_Collection_CollectionContent_vue__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../components/Collection/CollectionContent.vue */ "./src/components/Collection/CollectionContent.vue"); -/* harmony import */ var _components_Actions_ActionFavorite_vue__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../components/Actions/ActionFavorite.vue */ "./src/components/Actions/ActionFavorite.vue"); -/* harmony import */ var _components_Actions_ActionDownload_vue__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../components/Actions/ActionDownload.vue */ "./src/components/Actions/ActionDownload.vue"); -/* harmony import */ var _components_Albums_CollaboratorsSelectionForm_vue__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ../components/Albums/CollaboratorsSelectionForm.vue */ "./src/components/Albums/CollaboratorsSelectionForm.vue"); -/* harmony import */ var _components_Albums_AlbumForm_vue__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ../components/Albums/AlbumForm.vue */ "./src/components/Albums/AlbumForm.vue"); -/* harmony import */ var _services_logger_js__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ../services/logger.js */ "./src/services/logger.js"); -/* harmony import */ var _services_DavClient_js__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ../services/DavClient.js */ "./src/services/DavClient.js"); -/* harmony import */ var _services_DavRequest_js__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ../services/DavRequest.js */ "./src/services/DavRequest.js"); -/* harmony import */ var _utils_fileUtils_js__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! ../utils/fileUtils.js */ "./src/utils/fileUtils.js"); -/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js"); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - - - - - - - - - - - - - - - - - - - - - - - - - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'AlbumContent', - components: { - MapMarker: vue_material_design_icons_MapMarker__WEBPACK_IMPORTED_MODULE_0__["default"], - ShareVariant: vue_material_design_icons_ShareVariant__WEBPACK_IMPORTED_MODULE_1__["default"], - Plus: vue_material_design_icons_Plus__WEBPACK_IMPORTED_MODULE_2__["default"], - Pencil: vue_material_design_icons_Pencil__WEBPACK_IMPORTED_MODULE_3__["default"], - Close: vue_material_design_icons_Close__WEBPACK_IMPORTED_MODULE_6__["default"], - Delete: vue_material_design_icons_Delete__WEBPACK_IMPORTED_MODULE_4__["default"], - Download: vue_material_design_icons_Download__WEBPACK_IMPORTED_MODULE_7__["default"], - DownloadMultiple: vue_material_design_icons_DownloadMultiple__WEBPACK_IMPORTED_MODULE_8__["default"], - FilesPicker: _components_FilesPicker_vue__WEBPACK_IMPORTED_MODULE_16__["default"], - HeaderNavigation: _components_HeaderNavigation_vue__WEBPACK_IMPORTED_MODULE_15__["default"], - ImagePlus: vue_material_design_icons_ImagePlus__WEBPACK_IMPORTED_MODULE_5__["default"], - NcEmptyContent: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_9__.NcEmptyContent, - NcActions: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_9__.NcActions, - NcActionButton: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_9__.NcActionButton, - NcButton: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_9__.NcButton, - NcModal: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_9__.NcModal, - NcLoadingIcon: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_9__.NcLoadingIcon, - NcActionSeparator: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_9__.NcActionSeparator, - CollectionContent: _components_Collection_CollectionContent_vue__WEBPACK_IMPORTED_MODULE_17__["default"], - ActionFavorite: _components_Actions_ActionFavorite_vue__WEBPACK_IMPORTED_MODULE_18__["default"], - ActionDownload: _components_Actions_ActionDownload_vue__WEBPACK_IMPORTED_MODULE_19__["default"], - AlbumForm: _components_Albums_AlbumForm_vue__WEBPACK_IMPORTED_MODULE_21__["default"], - CollaboratorsSelectionForm: _components_Albums_CollaboratorsSelectionForm_vue__WEBPACK_IMPORTED_MODULE_20__["default"] - }, - mixins: [_mixins_AbortControllerMixin_js__WEBPACK_IMPORTED_MODULE_14__["default"], _mixins_FetchAlbumsMixin_js__WEBPACK_IMPORTED_MODULE_12__["default"], _mixins_FetchFilesMixin_js__WEBPACK_IMPORTED_MODULE_13__["default"], _mixins_AbortControllerMixin_js__WEBPACK_IMPORTED_MODULE_14__["default"], _nextcloud_vue__WEBPACK_IMPORTED_MODULE_9__.isMobile], - props: { - albumName: { - type: String, - default: '/' - } - }, - - data() { - return { - showAddPhotosModal: false, - showManageCollaboratorView: false, - showEditAlbumForm: false, - loadingAddCollaborators: false - }; - }, - - computed: { ...(0,vuex__WEBPACK_IMPORTED_MODULE_26__.mapGetters)(['albumsFiles']), - - /** - * @return {object} The album information for the current albumName. - */ - album() { - return this.albums[this.albumName] || {}; - }, - - /** - * @return {string[]} The list of files for the current albumName. - */ - albumFileIds() { - return this.albumsFiles[this.albumName] || []; - }, - - /** - * @return {boolean} Whether sharing is enabled. - */ - sharingEnabled() { - return OC.Share !== undefined; - } - - }, - watch: { - album() { - this.fetchAlbumContent(); - } - - }, - methods: { ...(0,vuex__WEBPACK_IMPORTED_MODULE_26__.mapActions)(['appendFiles', 'deleteAlbum', 'addFilesToAlbum', 'removeFilesFromAlbum', 'updateAlbum']), - - async fetchAlbumContent() { - if (this.loadingFiles || this.showEditAlbumForm) { - return []; - } - - const semaphoreSymbol = await this.semaphore.acquire(() => 0, 'fetchFiles'); - const fetchSemaphoreSymbol = await this.fetchSemaphore.acquire(); - - try { - this.errorFetchingFiles = null; - this.loadingFiles = true; - this.semaphoreSymbol = semaphoreSymbol; - const response = await _services_DavClient_js__WEBPACK_IMPORTED_MODULE_23__["default"].getDirectoryContents(`/photos/${(0,_nextcloud_auth__WEBPACK_IMPORTED_MODULE_10__.getCurrentUser)()?.uid}/albums/${this.albumName}`, { - data: _services_DavRequest_js__WEBPACK_IMPORTED_MODULE_24__["default"], - details: true, - signal: this.abortController.signal - }); - const fetchedFiles = response.data.map(file => (0,_utils_fileUtils_js__WEBPACK_IMPORTED_MODULE_25__.genFileInfo)(file)) // For the Viewer. - .map(file => ({ ...file, - source: (0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_11__.generateRemoteUrl)(`dav${file.filename}`) - })); - const fileIds = fetchedFiles.map(file => file.fileid).map(fileId => fileId.toString()); - this.appendFiles(fetchedFiles); - - if (fetchedFiles.length > 0) { - await this.$store.commit('addFilesToAlbum', { - albumName: this.albumName, - fileIdsToAdd: fileIds - }); - } - - _services_logger_js__WEBPACK_IMPORTED_MODULE_22__["default"].debug(`[AlbumContent] Fetched ${fileIds.length} new files: `, fileIds); - } catch (error) { - if (error.response?.status === 404) { - this.errorFetchingFiles = 404; - } else if (error.code === 'ERR_CANCELED') { - return; - } else { - this.errorFetchingFiles = error; - } // cancelled request, moving on... - - - _services_logger_js__WEBPACK_IMPORTED_MODULE_22__["default"].error('Error fetching album files'); - console.error(error); - } finally { - this.loadingFiles = false; - this.semaphore.release(semaphoreSymbol); - this.fetchSemaphore.release(fetchSemaphoreSymbol); - } - - return []; - }, - - redirectToNewName(_ref) { - let { - album - } = _ref; - this.showEditAlbumForm = false; - - if (this.album.basename !== album.basename) { - this.$router.push({ - name: 'albums', - params: { - path: album.basename - } - }); - } - }, - - async handleFilesPicked(fileIds) { - this.showAddPhotosModal = false; - await this.addFilesToAlbum({ - albumName: this.albumName, - fileIdsToAdd: fileIds - }); // Re-fetch album content to have the proper filenames. - - await this.fetchAlbumContent(); - }, - - async handleRemoveFilesFromAlbum(fileIds) { - this.$refs.collectionContent.onUncheckFiles(fileIds); - await this.removeFilesFromAlbum({ - albumName: this.albumName, - fileIdsToRemove: fileIds - }); - }, - - async handleDeleteAlbum() { - await this.deleteAlbum({ - albumName: this.albumName - }); - this.$router.push('/albums'); - }, - - async handleSetCollaborators(collaborators) { - try { - this.loadingAddCollaborators = true; - this.showManageCollaboratorView = false; - await this.updateAlbum({ - albumName: this.albumName, - properties: { - collaborators - } - }); - } catch (error) { - _services_logger_js__WEBPACK_IMPORTED_MODULE_22__["default"].error(error); - } finally { - this.loadingAddCollaborators = false; - } - } - - } -}); - -/***/ }), - -/***/ "./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!./src/views/AlbumContent.vue?vue&type=style&index=0&id=36505f44&lang=scss&scoped=true&": -/*!*****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/views/AlbumContent.vue?vue&type=style&index=0&id=36505f44&lang=scss&scoped=true& ***! - \*****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".album__title[data-v-36505f44] {\n width: 100%;\n}\n.album__name[data-v-36505f44] {\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.album__location[data-v-36505f44] {\n margin-left: -4px;\n display: flex;\n color: var(--color-text-lighter);\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/views/AlbumContent.vue?vue&type=style&index=0&id=36505f44&lang=scss&scoped=true&": -/*!*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/views/AlbumContent.vue?vue&type=style&index=0&id=36505f44&lang=scss&scoped=true& ***! - \*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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_AlbumContent_vue_vue_type_style_index_0_id_36505f44_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../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!./AlbumContent.vue?vue&type=style&index=0&id=36505f44&lang=scss&scoped=true& */ "./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!./src/views/AlbumContent.vue?vue&type=style&index=0&id=36505f44&lang=scss&scoped=true&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_AlbumContent_vue_vue_type_style_index_0_id_36505f44_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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_AlbumContent_vue_vue_type_style_index_0_id_36505f44_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_AlbumContent_vue_vue_type_style_index_0_id_36505f44_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_AlbumContent_vue_vue_type_style_index_0_id_36505f44_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/AccountMultiplePlus.vue": -/*!************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/AccountMultiplePlus.vue ***! - \************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _AccountMultiplePlus_vue_vue_type_template_id_46cc78ca___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./AccountMultiplePlus.vue?vue&type=template&id=46cc78ca& */ "./node_modules/vue-material-design-icons/AccountMultiplePlus.vue?vue&type=template&id=46cc78ca&"); -/* harmony import */ var _AccountMultiplePlus_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./AccountMultiplePlus.vue?vue&type=script&lang=js& */ "./node_modules/vue-material-design-icons/AccountMultiplePlus.vue?vue&type=script&lang=js&"); -/* harmony import */ var _vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - - - -/* normalize component */ -; -var component = (0,_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])( - _AccountMultiplePlus_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _AccountMultiplePlus_vue_vue_type_template_id_46cc78ca___WEBPACK_IMPORTED_MODULE_0__.render, - _AccountMultiplePlus_vue_vue_type_template_id_46cc78ca___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - null, - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "node_modules/vue-material-design-icons/AccountMultiplePlus.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/AccountMultiplePlus.vue?vue&type=script&lang=js&": -/*!************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/AccountMultiplePlus.vue?vue&type=script&lang=js& ***! - \************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: "AccountMultiplePlusIcon", - emits: ['click'], - props: { - title: { - type: String, - }, - fillColor: { - type: String, - default: "currentColor" - }, - size: { - type: Number, - default: 24 - } - } -}); - - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/Magnify.vue": -/*!************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/Magnify.vue ***! - \************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _Magnify_vue_vue_type_template_id_1d382cb6___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Magnify.vue?vue&type=template&id=1d382cb6& */ "./node_modules/vue-material-design-icons/Magnify.vue?vue&type=template&id=1d382cb6&"); -/* harmony import */ var _Magnify_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Magnify.vue?vue&type=script&lang=js& */ "./node_modules/vue-material-design-icons/Magnify.vue?vue&type=script&lang=js&"); -/* harmony import */ var _vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - - - -/* normalize component */ -; -var component = (0,_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])( - _Magnify_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _Magnify_vue_vue_type_template_id_1d382cb6___WEBPACK_IMPORTED_MODULE_0__.render, - _Magnify_vue_vue_type_template_id_1d382cb6___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - null, - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "node_modules/vue-material-design-icons/Magnify.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Magnify.vue?vue&type=script&lang=js&": -/*!************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Magnify.vue?vue&type=script&lang=js& ***! - \************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: "MagnifyIcon", - emits: ['click'], - props: { - title: { - type: String, - }, - fillColor: { - type: String, - default: "currentColor" - }, - size: { - type: Number, - default: 24 - } - } -}); - - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/Send.vue": -/*!*********************************************************!*\ - !*** ./node_modules/vue-material-design-icons/Send.vue ***! - \*********************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _Send_vue_vue_type_template_id_5d635c98___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Send.vue?vue&type=template&id=5d635c98& */ "./node_modules/vue-material-design-icons/Send.vue?vue&type=template&id=5d635c98&"); -/* harmony import */ var _Send_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Send.vue?vue&type=script&lang=js& */ "./node_modules/vue-material-design-icons/Send.vue?vue&type=script&lang=js&"); -/* harmony import */ var _vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - - - -/* normalize component */ -; -var component = (0,_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])( - _Send_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _Send_vue_vue_type_template_id_5d635c98___WEBPACK_IMPORTED_MODULE_0__.render, - _Send_vue_vue_type_template_id_5d635c98___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - null, - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "node_modules/vue-material-design-icons/Send.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Send.vue?vue&type=script&lang=js&": -/*!*********************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Send.vue?vue&type=script&lang=js& ***! - \*********************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: "SendIcon", - emits: ['click'], - props: { - title: { - type: String, - }, - fillColor: { - type: String, - default: "currentColor" - }, - size: { - type: Number, - default: 24 - } - } -}); - - -/***/ }), - -/***/ "./src/components/Actions/ActionFavorite.vue": -/*!***************************************************!*\ - !*** ./src/components/Actions/ActionFavorite.vue ***! - \***************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _ActionFavorite_vue_vue_type_template_id_607ef4d8___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./ActionFavorite.vue?vue&type=template&id=607ef4d8& */ "./src/components/Actions/ActionFavorite.vue?vue&type=template&id=607ef4d8&"); -/* harmony import */ var _ActionFavorite_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./ActionFavorite.vue?vue&type=script&lang=js& */ "./src/components/Actions/ActionFavorite.vue?vue&type=script&lang=js&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - - - -/* normalize component */ -; -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])( - _ActionFavorite_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _ActionFavorite_vue_vue_type_template_id_607ef4d8___WEBPACK_IMPORTED_MODULE_0__.render, - _ActionFavorite_vue_vue_type_template_id_607ef4d8___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - null, - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/Actions/ActionFavorite.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/views/AlbumContent.vue": -/*!************************************!*\ - !*** ./src/views/AlbumContent.vue ***! - \************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _AlbumContent_vue_vue_type_template_id_36505f44_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./AlbumContent.vue?vue&type=template&id=36505f44&scoped=true& */ "./src/views/AlbumContent.vue?vue&type=template&id=36505f44&scoped=true&"); -/* harmony import */ var _AlbumContent_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./AlbumContent.vue?vue&type=script&lang=js& */ "./src/views/AlbumContent.vue?vue&type=script&lang=js&"); -/* harmony import */ var _AlbumContent_vue_vue_type_style_index_0_id_36505f44_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./AlbumContent.vue?vue&type=style&index=0&id=36505f44&lang=scss&scoped=true& */ "./src/views/AlbumContent.vue?vue&type=style&index=0&id=36505f44&lang=scss&scoped=true&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( - _AlbumContent_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _AlbumContent_vue_vue_type_template_id_36505f44_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render, - _AlbumContent_vue_vue_type_template_id_36505f44_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - "36505f44", - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/views/AlbumContent.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/Actions/ActionFavorite.vue?vue&type=script&lang=js&": -/*!****************************************************************************!*\ - !*** ./src/components/Actions/ActionFavorite.vue?vue&type=script&lang=js& ***! - \****************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_ActionFavorite_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActionFavorite.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Actions/ActionFavorite.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_ActionFavorite_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/views/AlbumContent.vue?vue&type=script&lang=js&": -/*!*************************************************************!*\ - !*** ./src/views/AlbumContent.vue?vue&type=script&lang=js& ***! - \*************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_AlbumContent_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AlbumContent.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/AlbumContent.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_AlbumContent_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/views/AlbumContent.vue?vue&type=style&index=0&id=36505f44&lang=scss&scoped=true&": -/*!**********************************************************************************************!*\ - !*** ./src/views/AlbumContent.vue?vue&type=style&index=0&id=36505f44&lang=scss&scoped=true& ***! - \**********************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_AlbumContent_vue_vue_type_style_index_0_id_36505f44_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/style-loader/dist/cjs.js!../../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!./AlbumContent.vue?vue&type=style&index=0&id=36505f44&lang=scss&scoped=true& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/views/AlbumContent.vue?vue&type=style&index=0&id=36505f44&lang=scss&scoped=true&"); - - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/AccountMultiplePlus.vue?vue&type=script&lang=js&": -/*!*************************************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/AccountMultiplePlus.vue?vue&type=script&lang=js& ***! - \*************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _vue_loader_lib_index_js_vue_loader_options_AccountMultiplePlus_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/index.js??vue-loader-options!./AccountMultiplePlus.vue?vue&type=script&lang=js& */ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/AccountMultiplePlus.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_vue_loader_lib_index_js_vue_loader_options_AccountMultiplePlus_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/AccountMultiplePlus.vue?vue&type=template&id=46cc78ca&": -/*!*******************************************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/AccountMultiplePlus.vue?vue&type=template&id=46cc78ca& ***! - \*******************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_AccountMultiplePlus_vue_vue_type_template_id_46cc78ca___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_AccountMultiplePlus_vue_vue_type_template_id_46cc78ca___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_AccountMultiplePlus_vue_vue_type_template_id_46cc78ca___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../vue-loader/lib/index.js??vue-loader-options!./AccountMultiplePlus.vue?vue&type=template&id=46cc78ca& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/AccountMultiplePlus.vue?vue&type=template&id=46cc78ca&"); - - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/Magnify.vue?vue&type=script&lang=js&": -/*!*************************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/Magnify.vue?vue&type=script&lang=js& ***! - \*************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _vue_loader_lib_index_js_vue_loader_options_Magnify_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/index.js??vue-loader-options!./Magnify.vue?vue&type=script&lang=js& */ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Magnify.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_vue_loader_lib_index_js_vue_loader_options_Magnify_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/Magnify.vue?vue&type=template&id=1d382cb6&": -/*!*******************************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/Magnify.vue?vue&type=template&id=1d382cb6& ***! - \*******************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_Magnify_vue_vue_type_template_id_1d382cb6___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_Magnify_vue_vue_type_template_id_1d382cb6___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_Magnify_vue_vue_type_template_id_1d382cb6___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../vue-loader/lib/index.js??vue-loader-options!./Magnify.vue?vue&type=template&id=1d382cb6& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Magnify.vue?vue&type=template&id=1d382cb6&"); - - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/Send.vue?vue&type=script&lang=js&": -/*!**********************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/Send.vue?vue&type=script&lang=js& ***! - \**********************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _vue_loader_lib_index_js_vue_loader_options_Send_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/index.js??vue-loader-options!./Send.vue?vue&type=script&lang=js& */ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Send.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_vue_loader_lib_index_js_vue_loader_options_Send_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/Send.vue?vue&type=template&id=5d635c98&": -/*!****************************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/Send.vue?vue&type=template&id=5d635c98& ***! - \****************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_Send_vue_vue_type_template_id_5d635c98___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_Send_vue_vue_type_template_id_5d635c98___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_Send_vue_vue_type_template_id_5d635c98___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../vue-loader/lib/index.js??vue-loader-options!./Send.vue?vue&type=template&id=5d635c98& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Send.vue?vue&type=template&id=5d635c98&"); - - -/***/ }), - -/***/ "./src/components/Actions/ActionFavorite.vue?vue&type=template&id=607ef4d8&": -/*!**********************************************************************************!*\ - !*** ./src/components/Actions/ActionFavorite.vue?vue&type=template&id=607ef4d8& ***! - \**********************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_ActionFavorite_vue_vue_type_template_id_607ef4d8___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_ActionFavorite_vue_vue_type_template_id_607ef4d8___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_ActionFavorite_vue_vue_type_template_id_607ef4d8___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActionFavorite.vue?vue&type=template&id=607ef4d8& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Actions/ActionFavorite.vue?vue&type=template&id=607ef4d8&"); - - -/***/ }), - -/***/ "./src/views/AlbumContent.vue?vue&type=template&id=36505f44&scoped=true&": -/*!*******************************************************************************!*\ - !*** ./src/views/AlbumContent.vue?vue&type=template&id=36505f44&scoped=true& ***! - \*******************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_AlbumContent_vue_vue_type_template_id_36505f44_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_AlbumContent_vue_vue_type_template_id_36505f44_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_AlbumContent_vue_vue_type_template_id_36505f44_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AlbumContent.vue?vue&type=template&id=36505f44&scoped=true& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/AlbumContent.vue?vue&type=template&id=36505f44&scoped=true&"); - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/AccountMultiplePlus.vue?vue&type=template&id=46cc78ca&": -/*!**********************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/AccountMultiplePlus.vue?vue&type=template&id=46cc78ca& ***! - \**********************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c( - "span", - _vm._b( - { - staticClass: "material-design-icon account-multiple-plus-icon", - attrs: { - "aria-hidden": !_vm.title, - "aria-label": _vm.title, - role: "img", - }, - on: { - click: function ($event) { - return _vm.$emit("click", $event) - }, - }, - }, - "span", - _vm.$attrs, - false - ), - [ - _c( - "svg", - { - staticClass: "material-design-icon__svg", - attrs: { - fill: _vm.fillColor, - width: _vm.size, - height: _vm.size, - viewBox: "0 0 24 24", - }, - }, - [ - _c( - "path", - { - attrs: { - d: "M19 17V19H7V17S7 13 13 13 19 17 19 17M16 8A3 3 0 1 0 13 11A3 3 0 0 0 16 8M19.2 13.06A5.6 5.6 0 0 1 21 17V19H24V17S24 13.55 19.2 13.06M18 5A2.91 2.91 0 0 0 17.11 5.14A5 5 0 0 1 17.11 10.86A2.91 2.91 0 0 0 18 11A3 3 0 0 0 18 5M8 10H5V7H3V10H0V12H3V15H5V12H8Z", - }, - }, - [_vm.title ? _c("title", [_vm._v(_vm._s(_vm.title))]) : _vm._e()] - ), - ] - ), - ] - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Magnify.vue?vue&type=template&id=1d382cb6&": -/*!**********************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Magnify.vue?vue&type=template&id=1d382cb6& ***! - \**********************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c( - "span", - _vm._b( - { - staticClass: "material-design-icon magnify-icon", - attrs: { - "aria-hidden": !_vm.title, - "aria-label": _vm.title, - role: "img", - }, - on: { - click: function ($event) { - return _vm.$emit("click", $event) - }, - }, - }, - "span", - _vm.$attrs, - false - ), - [ - _c( - "svg", - { - staticClass: "material-design-icon__svg", - attrs: { - fill: _vm.fillColor, - width: _vm.size, - height: _vm.size, - viewBox: "0 0 24 24", - }, - }, - [ - _c( - "path", - { - attrs: { - d: "M9.5,3A6.5,6.5 0 0,1 16,9.5C16,11.11 15.41,12.59 14.44,13.73L14.71,14H15.5L20.5,19L19,20.5L14,15.5V14.71L13.73,14.44C12.59,15.41 11.11,16 9.5,16A6.5,6.5 0 0,1 3,9.5A6.5,6.5 0 0,1 9.5,3M9.5,5C7,5 5,7 5,9.5C5,12 7,14 9.5,14C12,14 14,12 14,9.5C14,7 12,5 9.5,5Z", - }, - }, - [_vm.title ? _c("title", [_vm._v(_vm._s(_vm.title))]) : _vm._e()] - ), - ] - ), - ] - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Send.vue?vue&type=template&id=5d635c98&": -/*!*******************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Send.vue?vue&type=template&id=5d635c98& ***! - \*******************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c( - "span", - _vm._b( - { - staticClass: "material-design-icon send-icon", - attrs: { - "aria-hidden": !_vm.title, - "aria-label": _vm.title, - role: "img", - }, - on: { - click: function ($event) { - return _vm.$emit("click", $event) - }, - }, - }, - "span", - _vm.$attrs, - false - ), - [ - _c( - "svg", - { - staticClass: "material-design-icon__svg", - attrs: { - fill: _vm.fillColor, - width: _vm.size, - height: _vm.size, - viewBox: "0 0 24 24", - }, - }, - [ - _c("path", { attrs: { d: "M2,21L23,12L2,3V10L17,12L2,14V21Z" } }, [ - _vm.title ? _c("title", [_vm._v(_vm._s(_vm.title))]) : _vm._e(), - ]), - ] - ), - ] - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Actions/ActionFavorite.vue?vue&type=template&id=607ef4d8&": -/*!*************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Actions/ActionFavorite.vue?vue&type=template&id=607ef4d8& ***! - \*************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _vm.shouldFavoriteSelection - ? _c( - "NcActionButton", - { - attrs: { - "close-after-click": true, - "aria-label": _vm.t("photos", "Mark selection as favorite"), - }, - on: { click: _vm.favoriteSelection }, - }, - [ - _vm._v( - "\n\t" + - _vm._s(_vm.t("photos", "Add selection to favorites")) + - "\n\t" - ), - _c("Star", { attrs: { slot: "icon" }, slot: "icon" }), - ], - 1 - ) - : _c( - "NcActionButton", - { - attrs: { - "close-after-click": true, - "aria-label": _vm.t("photos", "Remove selection from favorites"), - }, - on: { click: _vm.unFavoriteSelection }, - }, - [ - _vm._v( - "\n\t" + - _vm._s(_vm.t("photos", "Remove selection from favorites")) + - "\n\t" - ), - _c("Star", { attrs: { slot: "icon" }, slot: "icon" }), - ], - 1 - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/AlbumContent.vue?vue&type=template&id=36505f44&scoped=true&": -/*!**********************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/AlbumContent.vue?vue&type=template&id=36505f44&scoped=true& ***! - \**********************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c( - "div", - [ - true - ? _c( - "CollectionContent", - { - ref: "collectionContent", - attrs: { - collection: _vm.album, - "collection-file-ids": _vm.albumFileIds, - semaphore: _vm.semaphore, - loading: _vm.loadingAlbums || _vm.loadingFiles, - error: _vm.errorFetchingAlbums || _vm.errorFetchingFiles, - }, - scopedSlots: _vm._u( - [ - { - key: "header", - fn: function (ref) { - var selectedFileIds = ref.selectedFileIds - return _c( - "HeaderNavigation", - { - key: "navigation", - attrs: { - loading: _vm.loadingFiles, - params: { albumName: _vm.albumName }, - path: "/" + _vm.albumName, - title: _vm.albumName, - }, - on: { refresh: _vm.fetchAlbumContent }, - }, - [ - _vm.album.location !== "" - ? _c( - "div", - { - staticClass: "album__location", - attrs: { slot: "subtitle" }, - slot: "subtitle", - }, - [ - _c("MapMarker"), - _vm._v( - _vm._s(_vm.album.location) + "\n\t\t\t" - ), - ], - 1 - ) - : _vm._e(), - _vm._v(" "), - _vm.album !== undefined - ? _c( - "template", - { slot: "right" }, - [ - _vm.album.nbItems !== 0 - ? _c("NcButton", { - attrs: { - type: "tertiary", - "aria-label": _vm.t( - "photos", - "Add photos to this album" - ), - }, - on: { - click: function ($event) { - _vm.showAddPhotosModal = true - }, - }, - scopedSlots: _vm._u( - [ - { - key: "icon", - fn: function () { - return [_c("Plus")] - }, - proxy: true, - }, - ], - null, - true - ), - }) - : _vm._e(), - _vm._v(" "), - _vm.sharingEnabled - ? _c( - "NcButton", - { - attrs: { - type: "tertiary", - "aria-label": _vm.t( - "photos", - "Manage collaborators for this album" - ), - }, - on: { - click: function ($event) { - _vm.showManageCollaboratorView = true - }, - }, - }, - [ - _c("ShareVariant", { - attrs: { slot: "icon" }, - slot: "icon", - }), - ], - 1 - ) - : _vm._e(), - _vm._v(" "), - _c( - "NcActions", - { - attrs: { - "aria-label": _vm.t( - "photos", - "Open actions menu" - ), - }, - }, - [ - _c( - "NcActionButton", - { - attrs: { - "close-after-click": true, - "aria-label": _vm.t( - "photos", - "Edit album details" - ), - }, - on: { - click: function ($event) { - _vm.showEditAlbumForm = true - }, - }, - }, - [ - _vm._v( - "\n\t\t\t\t\t\t" + - _vm._s( - _vm.t( - "photos", - "Edit album details" - ) - ) + - "\n\t\t\t\t\t\t" - ), - _c("Pencil", { - attrs: { slot: "icon" }, - slot: "icon", - }), - ], - 1 - ), - _vm._v(" "), - _vm.albumFileIds.length > 0 - ? _c( - "ActionDownload", - { - attrs: { - "selected-file-ids": - _vm.albumFileIds, - title: _vm.t( - "photos", - "Download all files in album" - ), - }, - }, - [ - _c("DownloadMultiple", { - attrs: { slot: "icon" }, - slot: "icon", - }), - ], - 1 - ) - : _vm._e(), - _vm._v(" "), - _c( - "NcActionButton", - { - attrs: { "close-after-click": true }, - on: { click: _vm.handleDeleteAlbum }, - }, - [ - _vm._v( - "\n\t\t\t\t\t\t" + - _vm._s( - _vm.t("photos", "Delete album") - ) + - "\n\t\t\t\t\t\t" - ), - _c("Delete", { - attrs: { slot: "icon" }, - slot: "icon", - }), - ], - 1 - ), - _vm._v(" "), - selectedFileIds.length > 0 - ? [ - _c("NcActionSeparator"), - _vm._v(" "), - _c( - "ActionDownload", - { - attrs: { - "selected-file-ids": - selectedFileIds, - title: _vm.t( - "photos", - "Download selected files" - ), - }, - }, - [ - _c("Download", { - attrs: { slot: "icon" }, - slot: "icon", - }), - ], - 1 - ), - _vm._v(" "), - _c("ActionFavorite", { - attrs: { - "selected-file-ids": - selectedFileIds, - }, - }), - _vm._v(" "), - _c( - "NcActionButton", - { - attrs: { - "close-after-click": true, - }, - on: { - click: function ($event) { - return _vm.handleRemoveFilesFromAlbum( - selectedFileIds - ) - }, - }, - }, - [ - _vm._v( - "\n\t\t\t\t\t\t\t" + - _vm._s( - _vm.t( - "photos", - "Remove selection from album" - ) - ) + - "\n\t\t\t\t\t\t\t" - ), - _c("Close", { - attrs: { slot: "icon" }, - slot: "icon", - }), - ], - 1 - ), - ] - : _vm._e(), - ], - 2 - ), - ], - 1 - ) - : _vm._e(), - ], - 2 - ) - }, - }, - ], - null, - false, - 3267126009 - ), - }, - [ - _vm._v(" "), - _vm.album !== undefined && - _vm.album.nbItems === 0 && - !(_vm.loadingFiles || _vm.loadingAlbums) - ? _c( - "NcEmptyContent", - { - staticClass: "album__empty", - attrs: { - slot: "empty-content", - title: _vm.t( - "photos", - "This album doesn't have any photos or videos yet!" - ), - }, - slot: "empty-content", - }, - [ - _c("ImagePlus", { - attrs: { slot: "icon" }, - slot: "icon", - }), - _vm._v(" "), - _c( - "NcButton", - { - staticClass: "album__empty__button", - attrs: { - slot: "action", - type: "primary", - "aria-label": _vm.t( - "photos", - "Add photos to this album" - ), - }, - on: { - click: function ($event) { - _vm.showAddPhotosModal = true - }, - }, - slot: "action", - }, - [ - _c("Plus", { attrs: { slot: "icon" }, slot: "icon" }), - _vm._v( - "\n\t\t\t\t" + - _vm._s(_vm.t("photos", "Add")) + - "\n\t\t\t" - ), - ], - 1 - ), - ], - 1 - ) - : _vm._e(), - ], - 1 - ) - : 0, - _vm._v(" "), - _vm.showAddPhotosModal - ? _c( - "NcModal", - { - attrs: { - size: "large", - title: _vm.t("photos", "Add photos to the album"), - }, - on: { - close: function ($event) { - _vm.showAddPhotosModal = false - }, - }, - }, - [ - _c("FilesPicker", { - attrs: { - destination: _vm.album.basename, - "blacklist-ids": _vm.albumFileIds, - }, - on: { "files-picked": _vm.handleFilesPicked }, - }), - ], - 1 - ) - : _vm._e(), - _vm._v(" "), - _vm.showManageCollaboratorView - ? _c( - "NcModal", - { - attrs: { title: _vm.t("photos", "Manager collaborators") }, - on: { - close: function ($event) { - _vm.showManageCollaboratorView = false - }, - }, - }, - [ - _c("CollaboratorsSelectionForm", { - attrs: { - "album-name": _vm.album.basename, - collaborators: _vm.album.collaborators, - "public-link": _vm.album.publicLink, - }, - scopedSlots: _vm._u( - [ - { - key: "default", - fn: function (ref) { - var collaborators = ref.collaborators - return [ - _c( - "NcButton", - { - attrs: { - "aria-label": _vm.t( - "photos", - "Save collaborators for this album." - ), - type: "primary", - disabled: _vm.loadingAddCollaborators, - }, - on: { - click: function ($event) { - return _vm.handleSetCollaborators( - collaborators - ) - }, - }, - scopedSlots: _vm._u( - [ - { - key: "icon", - fn: function () { - return [ - _vm.loadingAddCollaborators - ? _c("NcLoadingIcon") - : _vm._e(), - ] - }, - proxy: true, - }, - ], - null, - true - ), - }, - [ - _vm._v( - "\n\t\t\t\t\t" + - _vm._s(_vm.t("photos", "Save")) + - "\n\t\t\t\t" - ), - ] - ), - ] - }, - }, - ], - null, - false, - 4058924180 - ), - }), - ], - 1 - ) - : _vm._e(), - _vm._v(" "), - _vm.showEditAlbumForm - ? _c( - "NcModal", - { - attrs: { title: _vm.t("photos", "Edit album details") }, - on: { - close: function ($event) { - _vm.showEditAlbumForm = false - }, - }, - }, - [ - _c("AlbumForm", { - attrs: { album: _vm.album }, - on: { done: _vm.redirectToNewName }, - }), - ], - 1 - ) - : _vm._e(), - ], - 1 - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }) - -}]); -//# sourceMappingURL=photos-node_modules_vue-material-design-icons_AccountMultiplePlus_vue-node_modules_vue-material-desi-664d11.js.map?v=850297fa412d93d3def8 \ No newline at end of file diff --git a/js/photos-node_modules_vue-material-design-icons_AccountMultiplePlus_vue-node_modules_vue-material-desi-664d11.js.map b/js/photos-node_modules_vue-material-design-icons_AccountMultiplePlus_vue-node_modules_vue-material-desi-664d11.js.map deleted file mode 100644 index d56dcab39..000000000 --- a/js/photos-node_modules_vue-material-design-icons_AccountMultiplePlus_vue-node_modules_vue-material-desi-664d11.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-node_modules_vue-material-design-icons_AccountMultiplePlus_vue-node_modules_vue-material-desi-664d11.js?v=850297fa412d93d3def8","mappings":";;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC/EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;ACrXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;ACtCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;ACpCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;ACtCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;ACpCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;ACtCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;ACpCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;;;;ACtCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;ACvCA;;;;;;;;;;;;;;;ACAA;;;;;;;;;;;;;;;;;;;;;;;;;;;AEAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AEAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AEAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AIAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;ACrDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;ACrDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;AC/CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;AC9CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sources":["webpack:///photos/src/components/Actions/ActionFavorite.vue?vue&type=script&lang=js&","webpack:///photos/src/views/AlbumContent.vue?vue&type=script&lang=js&","webpack:///photos/src/views/AlbumContent.vue?vue&type=style&index=0&id=36505f44&lang=scss&scoped=true&","webpack://photos/./src/views/AlbumContent.vue?ca7c","webpack:///photos/node_modules/vue-material-design-icons/AccountMultiplePlus.vue","webpack:///photos/node_modules/vue-material-design-icons/AccountMultiplePlus.vue?vue&type=script&lang=js&","webpack:///photos/node_modules/vue-material-design-icons/Magnify.vue","webpack:///photos/node_modules/vue-material-design-icons/Magnify.vue?vue&type=script&lang=js&","webpack:///photos/node_modules/vue-material-design-icons/Send.vue","webpack:///photos/node_modules/vue-material-design-icons/Send.vue?vue&type=script&lang=js&","webpack:///photos/src/components/Actions/ActionFavorite.vue","webpack:///photos/src/views/AlbumContent.vue","webpack://photos/./src/components/Actions/ActionFavorite.vue?d6b8","webpack://photos/./src/views/AlbumContent.vue?fe3a","webpack://photos/./src/views/AlbumContent.vue?17f8","webpack://photos/./node_modules/vue-material-design-icons/AccountMultiplePlus.vue?c084","webpack:///photos/node_modules/vue-material-design-icons/AccountMultiplePlus.vue?vue&type=template&id=46cc78ca&","webpack://photos/./node_modules/vue-material-design-icons/Magnify.vue?26f5","webpack:///photos/node_modules/vue-material-design-icons/Magnify.vue?vue&type=template&id=1d382cb6&","webpack://photos/./node_modules/vue-material-design-icons/Send.vue?0716","webpack:///photos/node_modules/vue-material-design-icons/Send.vue?vue&type=template&id=5d635c98&","webpack:///photos/src/components/Actions/ActionFavorite.vue?vue&type=template&id=607ef4d8&","webpack:///photos/src/views/AlbumContent.vue?vue&type=template&id=36505f44&scoped=true&","webpack://photos/./node_modules/vue-material-design-icons/AccountMultiplePlus.vue?482d","webpack://photos/./node_modules/vue-material-design-icons/Magnify.vue?e8ba","webpack://photos/./node_modules/vue-material-design-icons/Send.vue?6021","webpack://photos/./src/components/Actions/ActionFavorite.vue?7016","webpack://photos/./src/views/AlbumContent.vue?7861"],"sourcesContent":["//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport { mapActions, mapGetters } from 'vuex';\nimport Star from 'vue-material-design-icons/Star';\nimport { NcActionButton } from '@nextcloud/vue';\nexport default {\n name: 'ActionFavorite',\n components: {\n Star,\n NcActionButton\n },\n props: {\n selectedFileIds: {\n type: Array,\n required: true\n }\n },\n computed: { ...mapGetters(['files']),\n\n /** @return {boolean} */\n shouldFavoriteSelection() {\n // Favorite all selection if at least one file is not in the favorites.\n return this.selectedFileIds.some(fileId => this.files[fileId].favorite === 0);\n }\n\n },\n methods: { ...mapActions(['toggleFavoriteForFiles']),\n\n async favoriteSelection() {\n await this.toggleFavoriteForFiles({\n fileIds: this.selectedFileIds,\n favoriteState: 1\n });\n },\n\n async unFavoriteSelection() {\n await this.toggleFavoriteForFiles({\n fileIds: this.selectedFileIds,\n favoriteState: 0\n });\n }\n\n }\n};","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport { mapActions, mapGetters } from 'vuex';\nimport MapMarker from 'vue-material-design-icons/MapMarker';\nimport ShareVariant from 'vue-material-design-icons/ShareVariant';\nimport Plus from 'vue-material-design-icons/Plus';\nimport Pencil from 'vue-material-design-icons/Pencil';\nimport Delete from 'vue-material-design-icons/Delete';\nimport ImagePlus from 'vue-material-design-icons/ImagePlus';\nimport Close from 'vue-material-design-icons/Close';\nimport Download from 'vue-material-design-icons/Download';\nimport DownloadMultiple from 'vue-material-design-icons/DownloadMultiple';\nimport { NcActions, NcActionButton, NcButton, NcModal, NcEmptyContent, NcActionSeparator, NcLoadingIcon, isMobile } from '@nextcloud/vue';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport { generateRemoteUrl } from '@nextcloud/router';\nimport FetchAlbumsMixin from '../mixins/FetchAlbumsMixin.js';\nimport FetchFilesMixin from '../mixins/FetchFilesMixin.js';\nimport AbortControllerMixin from '../mixins/AbortControllerMixin.js';\nimport HeaderNavigation from '../components/HeaderNavigation.vue';\nimport FilesPicker from '../components/FilesPicker.vue';\nimport CollectionContent from '../components/Collection/CollectionContent.vue';\nimport ActionFavorite from '../components/Actions/ActionFavorite.vue';\nimport ActionDownload from '../components/Actions/ActionDownload.vue';\nimport CollaboratorsSelectionForm from '../components/Albums/CollaboratorsSelectionForm.vue';\nimport AlbumForm from '../components/Albums/AlbumForm.vue';\nimport logger from '../services/logger.js';\nimport client from '../services/DavClient.js';\nimport DavRequest from '../services/DavRequest.js';\nimport { genFileInfo } from '../utils/fileUtils.js';\nexport default {\n name: 'AlbumContent',\n components: {\n MapMarker,\n ShareVariant,\n Plus,\n Pencil,\n Close,\n Delete,\n Download,\n DownloadMultiple,\n FilesPicker,\n HeaderNavigation,\n ImagePlus,\n NcEmptyContent,\n NcActions,\n NcActionButton,\n NcButton,\n NcModal,\n NcLoadingIcon,\n NcActionSeparator,\n CollectionContent,\n ActionFavorite,\n ActionDownload,\n AlbumForm,\n CollaboratorsSelectionForm\n },\n mixins: [AbortControllerMixin, FetchAlbumsMixin, FetchFilesMixin, AbortControllerMixin, isMobile],\n props: {\n albumName: {\n type: String,\n default: '/'\n }\n },\n\n data() {\n return {\n showAddPhotosModal: false,\n showManageCollaboratorView: false,\n showEditAlbumForm: false,\n loadingAddCollaborators: false\n };\n },\n\n computed: { ...mapGetters(['albumsFiles']),\n\n /**\n * @return {object} The album information for the current albumName.\n */\n album() {\n return this.albums[this.albumName] || {};\n },\n\n /**\n * @return {string[]} The list of files for the current albumName.\n */\n albumFileIds() {\n return this.albumsFiles[this.albumName] || [];\n },\n\n /**\n * @return {boolean} Whether sharing is enabled.\n */\n sharingEnabled() {\n return OC.Share !== undefined;\n }\n\n },\n watch: {\n album() {\n this.fetchAlbumContent();\n }\n\n },\n methods: { ...mapActions(['appendFiles', 'deleteAlbum', 'addFilesToAlbum', 'removeFilesFromAlbum', 'updateAlbum']),\n\n async fetchAlbumContent() {\n if (this.loadingFiles || this.showEditAlbumForm) {\n return [];\n }\n\n const semaphoreSymbol = await this.semaphore.acquire(() => 0, 'fetchFiles');\n const fetchSemaphoreSymbol = await this.fetchSemaphore.acquire();\n\n try {\n this.errorFetchingFiles = null;\n this.loadingFiles = true;\n this.semaphoreSymbol = semaphoreSymbol;\n const response = await client.getDirectoryContents(`/photos/${getCurrentUser()?.uid}/albums/${this.albumName}`, {\n data: DavRequest,\n details: true,\n signal: this.abortController.signal\n });\n const fetchedFiles = response.data.map(file => genFileInfo(file)) // For the Viewer.\n .map(file => ({ ...file,\n source: generateRemoteUrl(`dav${file.filename}`)\n }));\n const fileIds = fetchedFiles.map(file => file.fileid).map(fileId => fileId.toString());\n this.appendFiles(fetchedFiles);\n\n if (fetchedFiles.length > 0) {\n await this.$store.commit('addFilesToAlbum', {\n albumName: this.albumName,\n fileIdsToAdd: fileIds\n });\n }\n\n logger.debug(`[AlbumContent] Fetched ${fileIds.length} new files: `, fileIds);\n } catch (error) {\n if (error.response?.status === 404) {\n this.errorFetchingFiles = 404;\n } else if (error.code === 'ERR_CANCELED') {\n return;\n } else {\n this.errorFetchingFiles = error;\n } // cancelled request, moving on...\n\n\n logger.error('Error fetching album files');\n console.error(error);\n } finally {\n this.loadingFiles = false;\n this.semaphore.release(semaphoreSymbol);\n this.fetchSemaphore.release(fetchSemaphoreSymbol);\n }\n\n return [];\n },\n\n redirectToNewName(_ref) {\n let {\n album\n } = _ref;\n this.showEditAlbumForm = false;\n\n if (this.album.basename !== album.basename) {\n this.$router.push({\n name: 'albums',\n params: {\n path: album.basename\n }\n });\n }\n },\n\n async handleFilesPicked(fileIds) {\n this.showAddPhotosModal = false;\n await this.addFilesToAlbum({\n albumName: this.albumName,\n fileIdsToAdd: fileIds\n }); // Re-fetch album content to have the proper filenames.\n\n await this.fetchAlbumContent();\n },\n\n async handleRemoveFilesFromAlbum(fileIds) {\n this.$refs.collectionContent.onUncheckFiles(fileIds);\n await this.removeFilesFromAlbum({\n albumName: this.albumName,\n fileIdsToRemove: fileIds\n });\n },\n\n async handleDeleteAlbum() {\n await this.deleteAlbum({\n albumName: this.albumName\n });\n this.$router.push('/albums');\n },\n\n async handleSetCollaborators(collaborators) {\n try {\n this.loadingAddCollaborators = true;\n this.showManageCollaboratorView = false;\n await this.updateAlbum({\n albumName: this.albumName,\n properties: {\n collaborators\n }\n });\n } catch (error) {\n logger.error(error);\n } finally {\n this.loadingAddCollaborators = false;\n }\n }\n\n }\n};","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".album__title[data-v-36505f44] {\\n width: 100%;\\n}\\n.album__name[data-v-36505f44] {\\n overflow: hidden;\\n white-space: nowrap;\\n text-overflow: ellipsis;\\n}\\n.album__location[data-v-36505f44] {\\n margin-left: -4px;\\n display: flex;\\n color: var(--color-text-lighter);\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./AlbumContent.vue?vue&type=style&index=0&id=36505f44&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./AlbumContent.vue?vue&type=style&index=0&id=36505f44&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./AccountMultiplePlus.vue?vue&type=template&id=46cc78ca&\"\nimport script from \"./AccountMultiplePlus.vue?vue&type=script&lang=js&\"\nexport * from \"./AccountMultiplePlus.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/louis/workspace/nextcloud/apps/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('46cc78ca')) {\n api.createRecord('46cc78ca', component.options)\n } else {\n api.reload('46cc78ca', component.options)\n }\n module.hot.accept(\"./AccountMultiplePlus.vue?vue&type=template&id=46cc78ca&\", function () {\n api.rerender('46cc78ca', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"node_modules/vue-material-design-icons/AccountMultiplePlus.vue\"\nexport default component.exports","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nexport default {\n name: \"AccountMultiplePlusIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n","import { render, staticRenderFns } from \"./Magnify.vue?vue&type=template&id=1d382cb6&\"\nimport script from \"./Magnify.vue?vue&type=script&lang=js&\"\nexport * from \"./Magnify.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/louis/workspace/nextcloud/apps/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('1d382cb6')) {\n api.createRecord('1d382cb6', component.options)\n } else {\n api.reload('1d382cb6', component.options)\n }\n module.hot.accept(\"./Magnify.vue?vue&type=template&id=1d382cb6&\", function () {\n api.rerender('1d382cb6', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"node_modules/vue-material-design-icons/Magnify.vue\"\nexport default component.exports","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nexport default {\n name: \"MagnifyIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n","import { render, staticRenderFns } from \"./Send.vue?vue&type=template&id=5d635c98&\"\nimport script from \"./Send.vue?vue&type=script&lang=js&\"\nexport * from \"./Send.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/louis/workspace/nextcloud/apps/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('5d635c98')) {\n api.createRecord('5d635c98', component.options)\n } else {\n api.reload('5d635c98', component.options)\n }\n module.hot.accept(\"./Send.vue?vue&type=template&id=5d635c98&\", function () {\n api.rerender('5d635c98', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"node_modules/vue-material-design-icons/Send.vue\"\nexport default component.exports","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nexport default {\n name: \"SendIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n","import { render, staticRenderFns } from \"./ActionFavorite.vue?vue&type=template&id=607ef4d8&\"\nimport script from \"./ActionFavorite.vue?vue&type=script&lang=js&\"\nexport * from \"./ActionFavorite.vue?vue&type=script&lang=js&\"\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\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/louis/workspace/nextcloud/apps/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('607ef4d8')) {\n api.createRecord('607ef4d8', component.options)\n } else {\n api.reload('607ef4d8', component.options)\n }\n module.hot.accept(\"./ActionFavorite.vue?vue&type=template&id=607ef4d8&\", function () {\n api.rerender('607ef4d8', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/Actions/ActionFavorite.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./AlbumContent.vue?vue&type=template&id=36505f44&scoped=true&\"\nimport script from \"./AlbumContent.vue?vue&type=script&lang=js&\"\nexport * from \"./AlbumContent.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AlbumContent.vue?vue&type=style&index=0&id=36505f44&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 \"36505f44\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/louis/workspace/nextcloud/apps/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('36505f44')) {\n api.createRecord('36505f44', component.options)\n } else {\n api.reload('36505f44', component.options)\n }\n module.hot.accept(\"./AlbumContent.vue?vue&type=template&id=36505f44&scoped=true&\", function () {\n api.rerender('36505f44', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/views/AlbumContent.vue\"\nexport default component.exports","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActionFavorite.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!./ActionFavorite.vue?vue&type=script&lang=js&\"","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AlbumContent.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!./AlbumContent.vue?vue&type=script&lang=js&\"","export * from \"-!../../node_modules/style-loader/dist/cjs.js!../../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!./AlbumContent.vue?vue&type=style&index=0&id=36505f44&lang=scss&scoped=true&\"","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./AccountMultiplePlus.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./AccountMultiplePlus.vue?vue&type=script&lang=js&\"","export * from \"-!../vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../vue-loader/lib/index.js??vue-loader-options!./AccountMultiplePlus.vue?vue&type=template&id=46cc78ca&\"","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Magnify.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Magnify.vue?vue&type=script&lang=js&\"","export * from \"-!../vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../vue-loader/lib/index.js??vue-loader-options!./Magnify.vue?vue&type=template&id=1d382cb6&\"","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Send.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Send.vue?vue&type=script&lang=js&\"","export * from \"-!../vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../vue-loader/lib/index.js??vue-loader-options!./Send.vue?vue&type=template&id=5d635c98&\"","export * from \"-!../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActionFavorite.vue?vue&type=template&id=607ef4d8&\"","export * from \"-!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AlbumContent.vue?vue&type=template&id=36505f44&scoped=true&\"","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"span\",\n _vm._b(\n {\n staticClass: \"material-design-icon account-multiple-plus-icon\",\n attrs: {\n \"aria-hidden\": !_vm.title,\n \"aria-label\": _vm.title,\n role: \"img\",\n },\n on: {\n click: function ($event) {\n return _vm.$emit(\"click\", $event)\n },\n },\n },\n \"span\",\n _vm.$attrs,\n false\n ),\n [\n _c(\n \"svg\",\n {\n staticClass: \"material-design-icon__svg\",\n attrs: {\n fill: _vm.fillColor,\n width: _vm.size,\n height: _vm.size,\n viewBox: \"0 0 24 24\",\n },\n },\n [\n _c(\n \"path\",\n {\n attrs: {\n d: \"M19 17V19H7V17S7 13 13 13 19 17 19 17M16 8A3 3 0 1 0 13 11A3 3 0 0 0 16 8M19.2 13.06A5.6 5.6 0 0 1 21 17V19H24V17S24 13.55 19.2 13.06M18 5A2.91 2.91 0 0 0 17.11 5.14A5 5 0 0 1 17.11 10.86A2.91 2.91 0 0 0 18 11A3 3 0 0 0 18 5M8 10H5V7H3V10H0V12H3V15H5V12H8Z\",\n },\n },\n [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()]\n ),\n ]\n ),\n ]\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"span\",\n _vm._b(\n {\n staticClass: \"material-design-icon magnify-icon\",\n attrs: {\n \"aria-hidden\": !_vm.title,\n \"aria-label\": _vm.title,\n role: \"img\",\n },\n on: {\n click: function ($event) {\n return _vm.$emit(\"click\", $event)\n },\n },\n },\n \"span\",\n _vm.$attrs,\n false\n ),\n [\n _c(\n \"svg\",\n {\n staticClass: \"material-design-icon__svg\",\n attrs: {\n fill: _vm.fillColor,\n width: _vm.size,\n height: _vm.size,\n viewBox: \"0 0 24 24\",\n },\n },\n [\n _c(\n \"path\",\n {\n attrs: {\n d: \"M9.5,3A6.5,6.5 0 0,1 16,9.5C16,11.11 15.41,12.59 14.44,13.73L14.71,14H15.5L20.5,19L19,20.5L14,15.5V14.71L13.73,14.44C12.59,15.41 11.11,16 9.5,16A6.5,6.5 0 0,1 3,9.5A6.5,6.5 0 0,1 9.5,3M9.5,5C7,5 5,7 5,9.5C5,12 7,14 9.5,14C12,14 14,12 14,9.5C14,7 12,5 9.5,5Z\",\n },\n },\n [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()]\n ),\n ]\n ),\n ]\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"span\",\n _vm._b(\n {\n staticClass: \"material-design-icon send-icon\",\n attrs: {\n \"aria-hidden\": !_vm.title,\n \"aria-label\": _vm.title,\n role: \"img\",\n },\n on: {\n click: function ($event) {\n return _vm.$emit(\"click\", $event)\n },\n },\n },\n \"span\",\n _vm.$attrs,\n false\n ),\n [\n _c(\n \"svg\",\n {\n staticClass: \"material-design-icon__svg\",\n attrs: {\n fill: _vm.fillColor,\n width: _vm.size,\n height: _vm.size,\n viewBox: \"0 0 24 24\",\n },\n },\n [\n _c(\"path\", { attrs: { d: \"M2,21L23,12L2,3V10L17,12L2,14V21Z\" } }, [\n _vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e(),\n ]),\n ]\n ),\n ]\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _vm.shouldFavoriteSelection\n ? _c(\n \"NcActionButton\",\n {\n attrs: {\n \"close-after-click\": true,\n \"aria-label\": _vm.t(\"photos\", \"Mark selection as favorite\"),\n },\n on: { click: _vm.favoriteSelection },\n },\n [\n _vm._v(\n \"\\n\\t\" +\n _vm._s(_vm.t(\"photos\", \"Add selection to favorites\")) +\n \"\\n\\t\"\n ),\n _c(\"Star\", { attrs: { slot: \"icon\" }, slot: \"icon\" }),\n ],\n 1\n )\n : _c(\n \"NcActionButton\",\n {\n attrs: {\n \"close-after-click\": true,\n \"aria-label\": _vm.t(\"photos\", \"Remove selection from favorites\"),\n },\n on: { click: _vm.unFavoriteSelection },\n },\n [\n _vm._v(\n \"\\n\\t\" +\n _vm._s(_vm.t(\"photos\", \"Remove selection from favorites\")) +\n \"\\n\\t\"\n ),\n _c(\"Star\", { attrs: { slot: \"icon\" }, slot: \"icon\" }),\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n [\n true\n ? _c(\n \"CollectionContent\",\n {\n ref: \"collectionContent\",\n attrs: {\n collection: _vm.album,\n \"collection-file-ids\": _vm.albumFileIds,\n semaphore: _vm.semaphore,\n loading: _vm.loadingAlbums || _vm.loadingFiles,\n error: _vm.errorFetchingAlbums || _vm.errorFetchingFiles,\n },\n scopedSlots: _vm._u(\n [\n {\n key: \"header\",\n fn: function (ref) {\n var selectedFileIds = ref.selectedFileIds\n return _c(\n \"HeaderNavigation\",\n {\n key: \"navigation\",\n attrs: {\n loading: _vm.loadingFiles,\n params: { albumName: _vm.albumName },\n path: \"/\" + _vm.albumName,\n title: _vm.albumName,\n },\n on: { refresh: _vm.fetchAlbumContent },\n },\n [\n _vm.album.location !== \"\"\n ? _c(\n \"div\",\n {\n staticClass: \"album__location\",\n attrs: { slot: \"subtitle\" },\n slot: \"subtitle\",\n },\n [\n _c(\"MapMarker\"),\n _vm._v(\n _vm._s(_vm.album.location) + \"\\n\\t\\t\\t\"\n ),\n ],\n 1\n )\n : _vm._e(),\n _vm._v(\" \"),\n _vm.album !== undefined\n ? _c(\n \"template\",\n { slot: \"right\" },\n [\n _vm.album.nbItems !== 0\n ? _c(\"NcButton\", {\n attrs: {\n type: \"tertiary\",\n \"aria-label\": _vm.t(\n \"photos\",\n \"Add photos to this album\"\n ),\n },\n on: {\n click: function ($event) {\n _vm.showAddPhotosModal = true\n },\n },\n scopedSlots: _vm._u(\n [\n {\n key: \"icon\",\n fn: function () {\n return [_c(\"Plus\")]\n },\n proxy: true,\n },\n ],\n null,\n true\n ),\n })\n : _vm._e(),\n _vm._v(\" \"),\n _vm.sharingEnabled\n ? _c(\n \"NcButton\",\n {\n attrs: {\n type: \"tertiary\",\n \"aria-label\": _vm.t(\n \"photos\",\n \"Manage collaborators for this album\"\n ),\n },\n on: {\n click: function ($event) {\n _vm.showManageCollaboratorView = true\n },\n },\n },\n [\n _c(\"ShareVariant\", {\n attrs: { slot: \"icon\" },\n slot: \"icon\",\n }),\n ],\n 1\n )\n : _vm._e(),\n _vm._v(\" \"),\n _c(\n \"NcActions\",\n {\n attrs: {\n \"aria-label\": _vm.t(\n \"photos\",\n \"Open actions menu\"\n ),\n },\n },\n [\n _c(\n \"NcActionButton\",\n {\n attrs: {\n \"close-after-click\": true,\n \"aria-label\": _vm.t(\n \"photos\",\n \"Edit album details\"\n ),\n },\n on: {\n click: function ($event) {\n _vm.showEditAlbumForm = true\n },\n },\n },\n [\n _vm._v(\n \"\\n\\t\\t\\t\\t\\t\\t\" +\n _vm._s(\n _vm.t(\n \"photos\",\n \"Edit album details\"\n )\n ) +\n \"\\n\\t\\t\\t\\t\\t\\t\"\n ),\n _c(\"Pencil\", {\n attrs: { slot: \"icon\" },\n slot: \"icon\",\n }),\n ],\n 1\n ),\n _vm._v(\" \"),\n _vm.albumFileIds.length > 0\n ? _c(\n \"ActionDownload\",\n {\n attrs: {\n \"selected-file-ids\":\n _vm.albumFileIds,\n title: _vm.t(\n \"photos\",\n \"Download all files in album\"\n ),\n },\n },\n [\n _c(\"DownloadMultiple\", {\n attrs: { slot: \"icon\" },\n slot: \"icon\",\n }),\n ],\n 1\n )\n : _vm._e(),\n _vm._v(\" \"),\n _c(\n \"NcActionButton\",\n {\n attrs: { \"close-after-click\": true },\n on: { click: _vm.handleDeleteAlbum },\n },\n [\n _vm._v(\n \"\\n\\t\\t\\t\\t\\t\\t\" +\n _vm._s(\n _vm.t(\"photos\", \"Delete album\")\n ) +\n \"\\n\\t\\t\\t\\t\\t\\t\"\n ),\n _c(\"Delete\", {\n attrs: { slot: \"icon\" },\n slot: \"icon\",\n }),\n ],\n 1\n ),\n _vm._v(\" \"),\n selectedFileIds.length > 0\n ? [\n _c(\"NcActionSeparator\"),\n _vm._v(\" \"),\n _c(\n \"ActionDownload\",\n {\n attrs: {\n \"selected-file-ids\":\n selectedFileIds,\n title: _vm.t(\n \"photos\",\n \"Download selected files\"\n ),\n },\n },\n [\n _c(\"Download\", {\n attrs: { slot: \"icon\" },\n slot: \"icon\",\n }),\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\"ActionFavorite\", {\n attrs: {\n \"selected-file-ids\":\n selectedFileIds,\n },\n }),\n _vm._v(\" \"),\n _c(\n \"NcActionButton\",\n {\n attrs: {\n \"close-after-click\": true,\n },\n on: {\n click: function ($event) {\n return _vm.handleRemoveFilesFromAlbum(\n selectedFileIds\n )\n },\n },\n },\n [\n _vm._v(\n \"\\n\\t\\t\\t\\t\\t\\t\\t\" +\n _vm._s(\n _vm.t(\n \"photos\",\n \"Remove selection from album\"\n )\n ) +\n \"\\n\\t\\t\\t\\t\\t\\t\\t\"\n ),\n _c(\"Close\", {\n attrs: { slot: \"icon\" },\n slot: \"icon\",\n }),\n ],\n 1\n ),\n ]\n : _vm._e(),\n ],\n 2\n ),\n ],\n 1\n )\n : _vm._e(),\n ],\n 2\n )\n },\n },\n ],\n null,\n false,\n 3267126009\n ),\n },\n [\n _vm._v(\" \"),\n _vm.album !== undefined &&\n _vm.album.nbItems === 0 &&\n !(_vm.loadingFiles || _vm.loadingAlbums)\n ? _c(\n \"NcEmptyContent\",\n {\n staticClass: \"album__empty\",\n attrs: {\n slot: \"empty-content\",\n title: _vm.t(\n \"photos\",\n \"This album doesn't have any photos or videos yet!\"\n ),\n },\n slot: \"empty-content\",\n },\n [\n _c(\"ImagePlus\", {\n attrs: { slot: \"icon\" },\n slot: \"icon\",\n }),\n _vm._v(\" \"),\n _c(\n \"NcButton\",\n {\n staticClass: \"album__empty__button\",\n attrs: {\n slot: \"action\",\n type: \"primary\",\n \"aria-label\": _vm.t(\n \"photos\",\n \"Add photos to this album\"\n ),\n },\n on: {\n click: function ($event) {\n _vm.showAddPhotosModal = true\n },\n },\n slot: \"action\",\n },\n [\n _c(\"Plus\", { attrs: { slot: \"icon\" }, slot: \"icon\" }),\n _vm._v(\n \"\\n\\t\\t\\t\\t\" +\n _vm._s(_vm.t(\"photos\", \"Add\")) +\n \"\\n\\t\\t\\t\"\n ),\n ],\n 1\n ),\n ],\n 1\n )\n : _vm._e(),\n ],\n 1\n )\n : _vm._e(),\n _vm._v(\" \"),\n _vm.showAddPhotosModal\n ? _c(\n \"NcModal\",\n {\n attrs: {\n size: \"large\",\n title: _vm.t(\"photos\", \"Add photos to the album\"),\n },\n on: {\n close: function ($event) {\n _vm.showAddPhotosModal = false\n },\n },\n },\n [\n _c(\"FilesPicker\", {\n attrs: {\n destination: _vm.album.basename,\n \"blacklist-ids\": _vm.albumFileIds,\n },\n on: { \"files-picked\": _vm.handleFilesPicked },\n }),\n ],\n 1\n )\n : _vm._e(),\n _vm._v(\" \"),\n _vm.showManageCollaboratorView\n ? _c(\n \"NcModal\",\n {\n attrs: { title: _vm.t(\"photos\", \"Manager collaborators\") },\n on: {\n close: function ($event) {\n _vm.showManageCollaboratorView = false\n },\n },\n },\n [\n _c(\"CollaboratorsSelectionForm\", {\n attrs: {\n \"album-name\": _vm.album.basename,\n collaborators: _vm.album.collaborators,\n \"public-link\": _vm.album.publicLink,\n },\n scopedSlots: _vm._u(\n [\n {\n key: \"default\",\n fn: function (ref) {\n var collaborators = ref.collaborators\n return [\n _c(\n \"NcButton\",\n {\n attrs: {\n \"aria-label\": _vm.t(\n \"photos\",\n \"Save collaborators for this album.\"\n ),\n type: \"primary\",\n disabled: _vm.loadingAddCollaborators,\n },\n on: {\n click: function ($event) {\n return _vm.handleSetCollaborators(\n collaborators\n )\n },\n },\n scopedSlots: _vm._u(\n [\n {\n key: \"icon\",\n fn: function () {\n return [\n _vm.loadingAddCollaborators\n ? _c(\"NcLoadingIcon\")\n : _vm._e(),\n ]\n },\n proxy: true,\n },\n ],\n null,\n true\n ),\n },\n [\n _vm._v(\n \"\\n\\t\\t\\t\\t\\t\" +\n _vm._s(_vm.t(\"photos\", \"Save\")) +\n \"\\n\\t\\t\\t\\t\"\n ),\n ]\n ),\n ]\n },\n },\n ],\n null,\n false,\n 4058924180\n ),\n }),\n ],\n 1\n )\n : _vm._e(),\n _vm._v(\" \"),\n _vm.showEditAlbumForm\n ? _c(\n \"NcModal\",\n {\n attrs: { title: _vm.t(\"photos\", \"Edit album details\") },\n on: {\n close: function ($event) {\n _vm.showEditAlbumForm = false\n },\n },\n },\n [\n _c(\"AlbumForm\", {\n attrs: { album: _vm.album },\n on: { done: _vm.redirectToNewName },\n }),\n ],\n 1\n )\n : _vm._e(),\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-node_modules_vue-material-design-icons_AccountMultiplePlus_vue-node_modules_vue-material-desi-852b15.js b/js/photos-node_modules_vue-material-design-icons_AccountMultiplePlus_vue-node_modules_vue-material-desi-852b15.js deleted file mode 100644 index 8e903da5a..000000000 --- a/js/photos-node_modules_vue-material-design-icons_AccountMultiplePlus_vue-node_modules_vue-material-desi-852b15.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkphotos=self.webpackChunkphotos||[]).push([["node_modules_vue-material-design-icons_AccountMultiplePlus_vue-node_modules_vue-material-desi-852b15"],{6179:(n,t,e)=>{e.d(t,{Z:()=>s});var i=e(87537),o=e.n(i),r=e(23645),a=e.n(r)()(o());a.push([n.id,":root{--photos-navigation-height: 64px;--photos-navigation-spacing: calc((var(--photos-navigation-height) - 44px) / 2)}button.app-navigation-toggle{top:0 !important;right:calc(var(--photos-navigation-height)*-1) !important;margin:var(--photos-navigation-spacing) !important}","",{version:3,sources:["webpack://./src/components/HeaderNavigation.vue"],names:[],mappings:"AAgLA,MACC,gCAAA,CAEA,+EAAA,CAID,6BAEC,gBAAA,CACA,yDAAA,CACA,kDAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n:root {\n\t--photos-navigation-height: 64px;\n\t// header height - button size\n\t--photos-navigation-spacing: calc((var(--photos-navigation-height) - 44px) / 2);\n}\n\n// Properly position the navigation toggle button\nbutton.app-navigation-toggle {\n\t// App-navigation have a 4px margin top\n\ttop: 0 !important;\n\tright: calc(var(--photos-navigation-height) * -1) !important;\n\tmargin: var(--photos-navigation-spacing) !important;\n}\n\n'],sourceRoot:""}]);const s=a},84827:(n,t,e)=>{e.d(t,{Z:()=>s});var i=e(87537),o=e.n(i),r=e(23645),a=e.n(r)()(o());a.push([n.id,".photos-navigation[data-v-b9975c76]{position:-webkit-sticky;position:sticky;z-index:20;top:0;display:flex;align-items:center;width:100%;height:var(--photos-navigation-height);min-height:var(--photos-navigation-height);padding:0 var(--photos-navigation-height);background:var(--color-main-background)}.photos-navigation__back[data-v-b9975c76]{position:absolute;left:0;margin:var(--photos-navigation-spacing) !important}.photos-navigation__title[data-v-b9975c76]{overflow:hidden;margin:0;margin-right:calc(2*var(--photos-navigation-spacing));cursor:pointer;white-space:nowrap;text-overflow:ellipsis}.photos-navigation__loader[data-v-b9975c76]{margin-left:32px}.photos-navigation__content-right[data-v-b9975c76]{display:flex;align-items:center;justify-content:center;margin-left:auto}","",{version:3,sources:["webpack://./src/components/HeaderNavigation.vue"],names:[],mappings:"AAiMA,oCACC,uBAAA,CAAA,eAAA,CACA,UAAA,CACA,KAAA,CACA,YAAA,CACA,kBAAA,CACA,UAAA,CACA,sCAAA,CACA,0CAAA,CACA,yCAAA,CACA,uCAAA,CAEA,0CAEC,iBAAA,CACA,MAAA,CACA,kDAAA,CAGD,2CACC,eAAA,CACA,QAAA,CACA,qDAAA,CACA,cAAA,CACA,kBAAA,CACA,sBAAA,CAGD,4CACC,gBAAA,CAGD,mDACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,gBAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.photos-navigation {\n\tposition: sticky;\n\tz-index: 20;\n\ttop: 0;\n\tdisplay: flex;\n\talign-items: center;\n\twidth: 100%;\n\theight: var(--photos-navigation-height);\n\tmin-height: var(--photos-navigation-height);\n\tpadding: 0 var(--photos-navigation-height);\n\tbackground: var(--color-main-background);\n\n\t&__back {\n\t\t// Above the navigation menu\n\t\tposition: absolute;\n\t\tleft: 0;\n\t\tmargin: var(--photos-navigation-spacing) !important;\n\t}\n\n\t&__title {\n\t\toverflow: hidden;\n\t\tmargin: 0;\n\t\tmargin-right: calc(2 * var(--photos-navigation-spacing));\n\t\tcursor: pointer;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t}\n\n\t&__loader {\n\t\tmargin-left: 32px;\n\t}\n\n\t&__content-right {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\tmargin-left: auto;\n\t}\n}\n\n'],sourceRoot:""}]);const s=a},86011:(n,t,e)=>{e.d(t,{Z:()=>s});var i=e(87537),o=e.n(i),r=e(23645),a=e.n(r)()(o());a.push([n.id,".vs-container[data-v-7d847354]{overflow-y:scroll;height:100%}.vs-rows-container[data-v-7d847354]{box-sizing:border-box}","",{version:3,sources:["webpack://./src/components/VirtualScrolling.vue"],names:[],mappings:"AAkTA,+BACC,iBAAA,CACA,WAAA,CAGD,oCACC,qBAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.vs-container {\n\toverflow-y: scroll;\n\theight: 100%;\n}\n\n.vs-rows-container {\n\tbox-sizing: border-box;\n}\n'],sourceRoot:""}]);const s=a},96215:(n,t,e)=>{e.d(t,{Z:()=>s});var i=e(87537),o=e.n(i),r=e(23645),a=e.n(r)()(o());a.push([n.id,".albums-list[data-v-4debaaff]{display:flex;flex-direction:column}.albums-list .album__name[data-v-4debaaff]{font-weight:normal;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}","",{version:3,sources:["webpack://./src/views/Albums.vue"],names:[],mappings:"AA4IA,8BACC,YAAA,CACA,qBAAA,CAEA,2CACC,kBAAA,CACA,eAAA,CACA,kBAAA,CACA,sBAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.albums-list {\n\tdisplay: flex;\n\tflex-direction: column;\n\n\t.album__name {\n\t\tfont-weight: normal;\n\t\toverflow: hidden;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t}\n}\n'],sourceRoot:""}]);const s=a},94878:(n,t,e)=>{e.d(t,{Z:()=>o});const i={name:"AccountMultiplePlusIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const o=(0,e(51900).Z)(i,(function(){var n=this,t=n.$createElement,e=n._self._c||t;return e("span",n._b({staticClass:"material-design-icon account-multiple-plus-icon",attrs:{"aria-hidden":!n.title,"aria-label":n.title,role:"img"},on:{click:function(t){return n.$emit("click",t)}}},"span",n.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:n.fillColor,width:n.size,height:n.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M19 17V19H7V17S7 13 13 13 19 17 19 17M16 8A3 3 0 1 0 13 11A3 3 0 0 0 16 8M19.2 13.06A5.6 5.6 0 0 1 21 17V19H24V17S24 13.55 19.2 13.06M18 5A2.91 2.91 0 0 0 17.11 5.14A5 5 0 0 1 17.11 10.86A2.91 2.91 0 0 0 18 11A3 3 0 0 0 18 5M8 10H5V7H3V10H0V12H3V15H5V12H8Z"}},[n.title?e("title",[n._v(n._s(n.title))]):n._e()])])])}),[],!1,null,null,null).exports},47987:(n,t,e)=>{e.d(t,{Z:()=>o});const i={name:"ContentCopyIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const o=(0,e(51900).Z)(i,(function(){var n=this,t=n.$createElement,e=n._self._c||t;return e("span",n._b({staticClass:"material-design-icon content-copy-icon",attrs:{"aria-hidden":!n.title,"aria-label":n.title,role:"img"},on:{click:function(t){return n.$emit("click",t)}}},"span",n.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:n.fillColor,width:n.size,height:n.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"}},[n.title?e("title",[n._v(n._s(n.title))]):n._e()])])])}),[],!1,null,null,null).exports},55683:(n,t,e)=>{e.d(t,{Z:()=>o});const i={name:"EarthIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const o=(0,e(51900).Z)(i,(function(){var n=this,t=n.$createElement,e=n._self._c||t;return e("span",n._b({staticClass:"material-design-icon earth-icon",attrs:{"aria-hidden":!n.title,"aria-label":n.title,role:"img"},on:{click:function(t){return n.$emit("click",t)}}},"span",n.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:n.fillColor,width:n.size,height:n.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M17.9,17.39C17.64,16.59 16.89,16 16,16H15V13A1,1 0 0,0 14,12H8V10H10A1,1 0 0,0 11,9V7H13A2,2 0 0,0 15,5V4.59C17.93,5.77 20,8.64 20,12C20,14.08 19.2,15.97 17.9,17.39M11,19.93C7.05,19.44 4,16.08 4,12C4,11.38 4.08,10.78 4.21,10.21L9,15V16A2,2 0 0,0 11,18M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z"}},[n.title?e("title",[n._v(n._s(n.title))]):n._e()])])])}),[],!1,null,null,null).exports},38530:(n,t,e)=>{e.d(t,{Z:()=>o});const i={name:"MagnifyIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const o=(0,e(51900).Z)(i,(function(){var n=this,t=n.$createElement,e=n._self._c||t;return e("span",n._b({staticClass:"material-design-icon magnify-icon",attrs:{"aria-hidden":!n.title,"aria-label":n.title,role:"img"},on:{click:function(t){return n.$emit("click",t)}}},"span",n.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:n.fillColor,width:n.size,height:n.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M9.5,3A6.5,6.5 0 0,1 16,9.5C16,11.11 15.41,12.59 14.44,13.73L14.71,14H15.5L20.5,19L19,20.5L14,15.5V14.71L13.73,14.44C12.59,15.41 11.11,16 9.5,16A6.5,6.5 0 0,1 3,9.5A6.5,6.5 0 0,1 9.5,3M9.5,5C7,5 5,7 5,9.5C5,12 7,14 9.5,14C12,14 14,12 14,9.5C14,7 12,5 9.5,5Z"}},[n.title?e("title",[n._v(n._s(n.title))]):n._e()])])])}),[],!1,null,null,null).exports},40502:(n,t,e)=>{e.d(t,{Z:()=>o});const i={name:"PlusIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const o=(0,e(51900).Z)(i,(function(){var n=this,t=n.$createElement,e=n._self._c||t;return e("span",n._b({staticClass:"material-design-icon plus-icon",attrs:{"aria-hidden":!n.title,"aria-label":n.title,role:"img"},on:{click:function(t){return n.$emit("click",t)}}},"span",n.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:n.fillColor,width:n.size,height:n.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z"}},[n.title?e("title",[n._v(n._s(n.title))]):n._e()])])])}),[],!1,null,null,null).exports},75400:(n,t,e)=>{e.d(t,{Z:()=>o});const i={name:"SendIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const o=(0,e(51900).Z)(i,(function(){var n=this,t=n.$createElement,e=n._self._c||t;return e("span",n._b({staticClass:"material-design-icon send-icon",attrs:{"aria-hidden":!n.title,"aria-label":n.title,role:"img"},on:{click:function(t){return n.$emit("click",t)}}},"span",n.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:n.fillColor,width:n.size,height:n.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M2,21L23,12L2,3V10L17,12L2,14V21Z"}},[n.title?e("title",[n._v(n._s(n.title))]):n._e()])])])}),[],!1,null,null,null).exports},46756:(n,e,i)=>{i.d(e,{Z:()=>w});var o=i(76240),r=i(33476);const a={name:"HeaderNavigation",components:{ArrowLeft:o.default,NcButton:r.NcButton,NcLoadingIcon:r.NcLoadingIcon},inheritAttrs:!1,props:{loading:{type:Boolean,default:!1},path:{type:String,default:"/"},title:{type:String,required:!0},rootTitle:{type:String,default:t("photos","Photos")},params:{type:Object,default:null}},computed:{isRoot:function(){var n="/"===this.path;return this.toggleNavigationButton(!n),n},name:function(){return this.isRoot?this.rootTitle:this.title},parentPath:function(){var n=this.path.split("/");n.pop();var t=n.join("/");return this.isRoot||""===t.trim()?"/":n.join("/")},parentName:function(){return this.parentPath&&this.parentPath.split("/").pop()},backToText:function(){return"/"===this.parentPath?t("photos","Back to {folder}",{folder:this.rootTitle}):t("photos","Back to {folder}",{folder:this.parentName})},to:function(){var n=/^\/?(.*)/i.exec(this.parentPath)[1],t=Object.assign({},this.$route,{params:this.params||{path:n}}),e=t.name,i=t.params;return""===n?{name:e}:decodeURIComponent(this.$router.resolve({name:e,params:i}).resolved.path)}},methods:{folderUp:function(){this.$router.push(this.to)},refresh:function(){this.$emit("refresh")},toggleNavigationButton:function(n){document.querySelector("button.app-navigation-toggle").style.display=n?"none":null}}};var s=i(93379),l=i.n(s),c=i(7795),u=i.n(c),p=i(90569),m=i.n(p),g=i(3565),h=i.n(g),d=i(19216),A=i.n(d),v=i(44589),f=i.n(v),C=i(6179),b={};b.styleTagTransform=f(),b.setAttributes=h(),b.insert=m().bind(null,"head"),b.domAPI=u(),b.insertStyleElement=A();l()(C.Z,b);C.Z&&C.Z.locals&&C.Z.locals;var y=i(84827),_={};_.styleTagTransform=f(),_.setAttributes=h(),_.insert=m().bind(null,"head"),_.domAPI=u(),_.insertStyleElement=A();l()(y.Z,_);y.Z&&y.Z.locals&&y.Z.locals;const w=(0,i(51900).Z)(a,(function(){var n=this,t=n.$createElement,e=n._self._c||t;return e("div",{staticClass:"photos-navigation",class:{"photos-navigation--root":n.isRoot},attrs:{role:"toolbar"}},[n.isRoot?n._e():e("NcButton",{staticClass:"photos-navigation__back",attrs:{type:"tertiary"},on:{click:n.folderUp},scopedSlots:n._u([{key:"icon",fn:function(){return[e("ArrowLeft",{attrs:{size:20}})]},proxy:!0}],null,!1,1821202730)}),n._v(" "),e("h2",{staticClass:"photos-navigation__title",on:{click:n.refresh}},[n._v("\n\t\t"+n._s(n.name)+"\n\t")]),n._v(" "),n.$slots.default?e("div",{staticClass:"photos-navigation__content"},[n._t("default")],2):n._e(),n._v(" "),n.loading?e("NcLoadingIcon",{staticClass:"photos-navigation__loader"}):n._e(),n._v(" "),e("div",{staticClass:"photos-navigation__content-right"},[n._t("right")],2)],1)}),[],!1,null,"b9975c76",null).exports},85801:(n,t,e)=>{e.d(t,{Z:()=>W});var i=e(20296),o=e(59537);function r(n,t){var e="undefined"!=typeof Symbol&&n[Symbol.iterator]||n["@@iterator"];if(!e){if(Array.isArray(n)||(e=u(n))||t&&n&&"number"==typeof n.length){e&&(n=e);var i=0,o=function(){};return{s:o,n:function(){return i>=n.length?{done:!0}:{done:!1,value:n[i++]}},e:function(n){throw n},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var r,a=!0,s=!1;return{s:function(){e=e.call(n)},n:function(){var n=e.next();return a=n.done,n},e:function(n){s=!0,r=n},f:function(){try{a||null==e.return||e.return()}finally{if(s)throw r}}}}function a(n,t){var e=Object.keys(n);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(n);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(n,t).enumerable}))),e.push.apply(e,i)}return e}function s(n){for(var t=1;tn.length)&&(t=n.length);for(var e=0,i=new Array(t);e=this.rowsHeight-n},container:function(){return o.Z.debug("[VirtualScrolling] Computing container"),null!==this.containerElement?this.containerElement:this.useWindow?window:this.$refs.container}},watch:{isNearBottom:function(n){n&&this.$emit("need-content")},rows:function(){this.isNearBottom&&this.$emit("need-content")},scrollToKey:function(n){var t,e=0,i=r(this.rows);try{for(i.s();!(t=i.n()).done;){var o=t.value;if(o.key===n)return void this.$refs.container.scrollTo({top:e,behavior:"smooth"});e+=o.height}}catch(n){i.e(n)}finally{i.f()}}},mounted:function(){var n=this;this.resizeObserver=new ResizeObserver((function(t){var e,i=r(t);try{for(i.s();!(e=i.n()).done;){var o=e.value,a=o.contentRect;o.target===n.container&&(n.containerHeight=a.height),o.target.classList.contains("vs-rows-container")&&(n.rowsContainerHeight=a.height)}}catch(n){i.e(n)}finally{i.f()}})),this.useWindow?(window.addEventListener("resize",this.updateContainerSize),this.containerHeight=window.innerHeight):this.resizeObserver.observe(this.container),this.resizeObserver.observe(this.$refs.rowsContainer),this.container.addEventListener("scroll",this.updateScrollPosition)},beforeDestroy:function(){this.useWindow&&window.removeEventListener("resize",this.updateContainerSize),this.resizeObserver.disconnect(),this.container.removeEventListener("scroll",this.updateScrollPosition)},methods:{updateScrollPosition:(0,i.debounce)((function(){this.useWindow?this.scrollPosition=this.container.scrollY:this.scrollPosition=this.container.scrollTop}),200),updateContainerSize:function(){this.containerHeight=window.innerHeight}}};var g=e(93379),h=e.n(g),d=e(7795),A=e.n(d),v=e(90569),f=e.n(v),C=e(3565),b=e.n(C),y=e(19216),_=e.n(y),w=e(44589),T=e.n(w),k=e(86011),x={};x.styleTagTransform=T(),x.setAttributes=b(),x.insert=f().bind(null,"head"),x.domAPI=A(),x.insertStyleElement=_();h()(k.Z,x);k.Z&&k.Z.locals&&k.Z.locals;const W=(0,e(51900).Z)(m,(function(){var n=this,t=n.$createElement,e=n._self._c||t;return n.useWindow||null!==n.containerElement?e("div",{ref:"rowsContainer",staticClass:"vs-rows-container",style:n.rowsContainerStyle},[n._t("default",null,{renderedRows:n.visibleRows}),n._v(" "),n._t("loader")],2):e("div",{ref:"container",staticClass:"vs-container"},[e("div",{ref:"rowsContainer",staticClass:"vs-rows-container",style:n.rowsContainerStyle},[n._t("default",null,{renderedRows:n.visibleRows}),n._v(" "),n._t("loader")],2)])}),[],!1,null,"7d847354",null).exports},70395:(n,t,e)=>{e.r(t),e.d(t,{default:()=>W});var i=e(40502),o=e(65322),r=e(79753),a=e(33476),s=e(12945),l=e(39981),c=e(88843),u=e(46756),p=e(4260);const m={name:"Albums",components:{Plus:i.Z,FolderMultipleImage:o.Z,NcModal:a.NcModal,NcButton:a.NcButton,NcEmptyContent:a.NcEmptyContent,CollectionsList:l.Z,CollectionCover:c.Z,HeaderNavigation:u.Z,AlbumForm:p.Z},filters:{coverUrl:function(n){return-1===n?"":(0,r.generateUrl)("/apps/photos/api/v1/preview/".concat(n,"?x=",512,"&y=",512))}},mixins:[s.Z],data:function(){return{showAlbumCreationForm:!1}},methods:{handleAlbumCreated:function(n){var t=n.album;this.showAlbumCreationForm=!1,this.$router.push({name:"albums",params:{path:t.basename}})},onRefresh:function(){this.fetchAlbums()}}};var g=e(93379),h=e.n(g),d=e(7795),A=e.n(d),v=e(90569),f=e.n(v),C=e(3565),b=e.n(C),y=e(19216),_=e.n(y),w=e(44589),T=e.n(w),k=e(96215),x={};x.styleTagTransform=T(),x.setAttributes=b(),x.insert=f().bind(null,"head"),x.domAPI=A(),x.insertStyleElement=_();h()(k.Z,x);k.Z&&k.Z.locals&&k.Z.locals;const W=(0,e(51900).Z)(m,(function(){var n=this,t=n.$createElement,e=n._self._c||t;return e("div",[e("CollectionsList",{staticClass:"albums-list",attrs:{collections:n.albums,loading:n.loadingAlbums,error:n.errorFetchingAlbums},scopedSlots:n._u([{key:"default",fn:function(t){var i=t.collection;return e("CollectionCover",{key:i.basename,attrs:{link:"/albums/"+i.basename,"alt-img":n.t("photos","Cover photo for album {albumName}",{albumName:i.basename}),"cover-url":n._f("coverUrl")(i.lastPhoto)}},[e("h2",{staticClass:"album__name"},[n._v("\n\t\t\t\t"+n._s(i.basename)+"\n\t\t\t")]),n._v(" "),e("div",{staticClass:"album__details",attrs:{slot:"subtitle"},slot:"subtitle"},[n._v("\n\t\t\t\t"+n._s(i.date)+" ⸱ "+n._s(n.n("photos","%n item","%n photos and videos",i.nbItems))+"\n\t\t\t")])])}}])},[e("HeaderNavigation",{key:"navigation",attrs:{slot:"header",loading:n.loadingAlbums,title:n.t("photos","Albums"),"root-title":n.t("photos","Albums")},on:{refresh:n.onRefresh},slot:"header"},[n._t("header"),n._v(" "),e("NcButton",{attrs:{type:"primary","aria-label":n.t("photos","Create a new album.")},on:{click:function(t){n.showAlbumCreationForm=!0}},scopedSlots:n._u([{key:"icon",fn:function(){return[e("Plus")]},proxy:!0}])},[n._v("\n\t\t\t\t"+n._s(n.t("photos","New album"))+"\n\t\t\t")])],2),n._v(" "),n._v(" "),e("NcEmptyContent",{attrs:{slot:"empty-collections-list",title:n.t("photos","There is no album yet!")},slot:"empty-collections-list"},[e("FolderMultipleImage",{attrs:{slot:"icon"},slot:"icon"})],1)],1),n._v(" "),n.showAlbumCreationForm?e("NcModal",{attrs:{title:n.t("photos","New album")},on:{close:function(t){n.showAlbumCreationForm=!1}}},[e("AlbumForm",{on:{done:n.handleAlbumCreated}})],1):n._e()],1)}),[],!1,null,"4debaaff",null).exports}}]); -//# sourceMappingURL=photos-node_modules_vue-material-design-icons_AccountMultiplePlus_vue-node_modules_vue-material-desi-852b15.js.map?v=82861f27e2c80ba54b1a \ No newline at end of file diff --git a/js/photos-node_modules_vue-material-design-icons_AccountMultiplePlus_vue-node_modules_vue-material-desi-852b15.js.map b/js/photos-node_modules_vue-material-design-icons_AccountMultiplePlus_vue-node_modules_vue-material-desi-852b15.js.map deleted file mode 100644 index f1b2cc7cb..000000000 --- a/js/photos-node_modules_vue-material-design-icons_AccountMultiplePlus_vue-node_modules_vue-material-desi-852b15.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-node_modules_vue-material-design-icons_AccountMultiplePlus_vue-node_modules_vue-material-desi-852b15.js?v=82861f27e2c80ba54b1a","mappings":"sPAGIA,E,MAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,qRAAsR,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,mDAAmD,MAAQ,GAAG,SAAW,qEAAqE,eAAiB,CAAC,g0CAAg5C,WAAa,MAEv5D,S,sECJIH,E,MAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,gxBAAixB,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,mDAAmD,MAAQ,GAAG,SAAW,0SAA0S,eAAiB,CAAC,mvDAAm0D,WAAa,MAE1iG,S,sECJIH,E,MAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,0HAA2H,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,mDAAmD,MAAQ,GAAG,SAAW,+CAA+C,eAAiB,CAAC,2vCAA20C,WAAa,MAEjqD,S,sECJIH,E,MAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,4LAA6L,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,oCAAoC,MAAQ,GAAG,SAAW,+EAA+E,eAAiB,CAAC,+/BAA+kC,WAAa,MAEx/C,S,mCCaA,MCpBuH,EDoBvH,CACEC,KAAM,0BACNC,MAAO,CAAC,SACRC,MAAO,CACLC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,E,SAAA,GACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,kDAAkDC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,qQAAqQ,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GACnyB,IDUpB,EACA,KACA,KACA,MAI8B,O,mCEEhC,MCpB+G,EDoB/G,CACEzB,KAAM,kBACNC,MAAO,CAAC,SACRC,MAAO,CACLC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,E,SAAA,GACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,yCAAyCC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,+HAA+H,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GACppB,IDUpB,EACA,KACA,KACA,MAI8B,O,mCEEhC,MCpByG,EDoBzG,CACEzB,KAAM,YACNC,MAAO,CAAC,SACRC,MAAO,CACLC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,E,SAAA,GACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,kCAAkCC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,4UAA4U,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GAC11B,IDUpB,EACA,KACA,KACA,MAI8B,O,mCEEhC,MCpB2G,EDoB3G,CACEzB,KAAM,cACNC,MAAO,CAAC,SACRC,MAAO,CACLC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,E,SAAA,GACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,oCAAoCC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,sQAAsQ,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GACtxB,IDUpB,EACA,KACA,KACA,MAI8B,O,mCEEhC,MCpBwG,EDoBxG,CACEzB,KAAM,WACNC,MAAO,CAAC,SACRC,MAAO,CACLC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,E,SAAA,GACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,iCAAiCC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,8CAA8C,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GAC3jB,IDUpB,EACA,KACA,KACA,MAI8B,O,mCEEhC,MCpBwG,EDoBxG,CACEzB,KAAM,WACNC,MAAO,CAAC,SACRC,MAAO,CACLC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,E,SAAA,GACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,iCAAiCC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,sCAAsC,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GACnjB,IDUpB,EACA,KACA,KACA,MAI8B,O,mCElBhC,I,sBCyDA,MCzDiL,EDyDjL,CACA,wBAEA,YACA,oBACA,oBACA,+BAGA,gBAEA,OACA,SACA,aACA,YAEA,MACA,YACA,aAEA,OACA,YACA,aAEA,WACA,YACA,8BAGA,QACA,YACA,eAIA,UACA,OADA,WAEA,sBAEA,OADA,gCACA,CACA,EAEA,KAPA,WAQA,mBACA,eAEA,UACA,EAEA,WAdA,WAeA,2BACA,QACA,kBACA,kCACA,IACA,WACA,EAEA,WAvBA,WAwBA,wDACA,EAEA,WA3BA,WA4BA,4BACA,uDAEA,uDACA,EAUA,GA1CA,WA6CA,IACA,EADA,YACA,yBAGA,gCACA,+BADA,oBAMA,aACA,SAIA,yEACA,GAGA,SACA,SADA,WAEA,0BACA,EAEA,QALA,WAMA,qBACA,EAEA,uBATA,SASA,GAEA,uDACA,2BACA,I,oIE9JIC,EAAU,CAAC,EAEfA,EAAQC,kBAAoB,IAC5BD,EAAQE,cAAgB,IAElBF,EAAQG,OAAS,SAAc,KAAM,QAE3CH,EAAQI,OAAS,IACjBJ,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKJ,KAAW,YAAiB,W,eCf9C,EAAU,CAAC,EAEf,EAAQC,kBAAoB,IAC5B,EAAQC,cAAgB,IAElB,EAAQC,OAAS,SAAc,KAAM,QAE3C,EAAQC,OAAS,IACjB,EAAQC,mBAAqB,IAEhB,IAAI,IAAS,GAKJ,KAAW,YAAiB,WCNlD,SAXgB,E,SAAA,GACd,GLVW,WAAa,IAAIrB,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACG,YAAY,oBAAoBe,MAAM,CAAC,0BAA2BtB,EAAIuB,QAAQf,MAAM,CAAC,KAAO,YAAY,CAAGR,EAAIuB,OAAmPvB,EAAIe,KAA/OX,EAAG,WAAW,CAACG,YAAY,0BAA0BC,MAAM,CAAC,KAAO,YAAYC,GAAG,CAAC,MAAQT,EAAIwB,UAAUC,YAAYzB,EAAI0B,GAAG,CAAC,CAACC,IAAI,OAAOC,GAAG,WAAW,MAAO,CAACxB,EAAG,YAAY,CAACI,MAAM,CAAC,KAAO,MAAM,EAAEqB,OAAM,IAAO,MAAK,EAAM,cAAuB7B,EAAIa,GAAG,KAAKT,EAAG,KAAK,CAACG,YAAY,2BAA2BE,GAAG,CAAC,MAAQT,EAAI8B,UAAU,CAAC9B,EAAIa,GAAG,SAASb,EAAIc,GAAGd,EAAIV,MAAM,UAAUU,EAAIa,GAAG,KAAMb,EAAI+B,OAAc,QAAE3B,EAAG,MAAM,CAACG,YAAY,8BAA8B,CAACP,EAAIgC,GAAG,YAAY,GAAGhC,EAAIe,KAAKf,EAAIa,GAAG,KAAMb,EAAW,QAAEI,EAAG,gBAAgB,CAACG,YAAY,8BAA8BP,EAAIe,KAAKf,EAAIa,GAAG,KAAKT,EAAG,MAAM,CAACG,YAAY,oCAAoC,CAACP,EAAIgC,GAAG,UAAU,IAAI,EAAE,GACr3B,IKYpB,EACA,KACA,WACA,MAI8B,O,mCCpBhC,I,kkECsDA,MCtDiL,EDsDjL,CACA,wBAEA,OACA,MACA,WACA,aAGA,kBACA,iBACA,cAGA,WACA,aACA,YAGA,mBACA,YACA,WAEA,0BACA,YACA,WAEA,oBACA,YAEA,WAEA,mBACA,YACA,WAEA,aACA,YACA,aAIA,KA1CA,WA2CA,OACA,iBACA,kBACA,sBAEA,oBAEA,EAEA,UAIA,YAJA,WAKA,iEAGA,0BACA,uBAIA,2BACA,kCACA,4BAEA,IACA,IAIA,iBACA,sBAIA,GAHA,IACA,YAEA,eACA,SAGA,aAaA,OAXA,iBACA,SAEA,iBACA,aAEA,iBACA,cAIA,YACA,GADA,QAGA,GAHA,IAIA,gBAGA,MACA,EAOA,WA3DA,WA8DA,iBACA,oCACA,sCAJA,GAKA,EAKA,WAtEA,WAsEA,WACA,+BACA,SAGA,kFAEA,iBACA,oCACA,WACA,qCACA,EAOA,mBAxFA,WAyFA,OACA,uCACA,2CAEA,EAQA,aArGA,WAsGA,kDACA,kEACA,EAKA,UA7GA,WA+GA,OADA,oDACA,6BACA,sBACA,eACA,OAEA,oBAEA,GAGA,OACA,aADA,SACA,GACA,GACA,0BAEA,EAEA,KAPA,WAUA,mBACA,0BAEA,EAEA,YAfA,SAeA,GACA,IADA,EACA,IADA,IAEA,WAFA,IAEA,0CACA,aAEA,YADA,yDAIA,WACA,CATA,+BAUA,GAGA,QAzMA,WAyMA,WACA,8DACA,GADA,IACA,0CACA,gBACA,yBACA,4BAEA,mDACA,+BAEA,CATA,+BAUA,IAEA,gBACA,2DACA,yCAEA,4CAGA,sDACA,mEACA,EAEA,cAjOA,WAkOA,gBACA,8DAGA,iCACA,sEACA,EAEA,SACA,gDACA,eACA,2CAEA,4CAEA,QAEA,oBATA,WAUA,uCACA,I,qIEhSIhB,EAAU,CAAC,EAEfA,EAAQC,kBAAoB,IAC5BD,EAAQE,cAAgB,IAElBF,EAAQG,OAAS,SAAc,KAAM,QAE3CH,EAAQI,OAAS,IACjBJ,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKJ,KAAW,YAAiB,WCPlD,SAXgB,E,SAAA,GACd,GJTW,WAAa,IAAIhB,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAASF,EAAIiC,WAAsC,OAAzBjC,EAAIkC,iBAA4Q9B,EAAG,MAAM,CAAC+B,IAAI,gBAAgB5B,YAAY,oBAAoB6B,MAAOpC,EAAsB,oBAAG,CAACA,EAAIgC,GAAG,UAAU,KAAK,CAAC,aAAehC,EAAIqC,cAAcrC,EAAIa,GAAG,KAAKb,EAAIgC,GAAG,WAAW,GAAta5B,EAAG,MAAM,CAAC+B,IAAI,YAAY5B,YAAY,gBAAgB,CAACH,EAAG,MAAM,CAAC+B,IAAI,gBAAgB5B,YAAY,oBAAoB6B,MAAOpC,EAAsB,oBAAG,CAACA,EAAIgC,GAAG,UAAU,KAAK,CAAC,aAAehC,EAAIqC,cAAcrC,EAAIa,GAAG,KAAKb,EAAIgC,GAAG,WAAW,IAA4L,GACpiB,IIWpB,EACA,KACA,WACA,MAI8B,O,gDCnBhC,I,kGCoFA,MCpFuK,EDoFvK,CACA,cACA,YACA,SACA,wBACA,kBACA,oBACA,gCACA,oBACA,oBACA,qBACA,eAGA,SAIA,SAJA,SAIA,GACA,aACA,IAGA,8EACA,GAGA,QACA,KAGA,KA/BA,WAgCA,OACA,yBAEA,EAEA,SACA,mBADA,YACA,cACA,8BACA,mBACA,cACA,QACA,kBAGA,EAEA,UAXA,WAYA,kBACA,I,qIE3HIhB,EAAU,CAAC,EAEfA,EAAQC,kBAAoB,IAC5BD,EAAQE,cAAgB,IAElBF,EAAQG,OAAS,SAAc,KAAM,QAE3CH,EAAQI,OAAS,IACjBJ,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKJ,KAAW,YAAiB,WCPlD,SAXgB,E,SAAA,GACd,GJTW,WAAa,IAAIhB,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACA,EAAG,kBAAkB,CAACG,YAAY,cAAcC,MAAM,CAAC,YAAcR,EAAIsC,OAAO,QAAUtC,EAAIuC,cAAc,MAAQvC,EAAIwC,qBAAqBf,YAAYzB,EAAI0B,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASO,GACtS,IAAIM,EAAaN,EAAIM,WACrB,OAAOrC,EAAG,kBAAkB,CAACuB,IAAIc,EAAWC,SAASlC,MAAM,CAAC,KAAQ,WAAciC,EAAmB,SAAG,UAAUzC,EAAI2C,EAAE,SAAU,oCAAqC,CAAEC,UAAWH,EAAWC,WAAY,YAAY1C,EAAI6C,GAAG,WAAP7C,CAAmByC,EAAWK,aAAa,CAAC1C,EAAG,KAAK,CAACG,YAAY,eAAe,CAACP,EAAIa,GAAG,aAAab,EAAIc,GAAG2B,EAAWC,UAAU,cAAc1C,EAAIa,GAAG,KAAKT,EAAG,MAAM,CAACG,YAAY,iBAAiBC,MAAM,CAAC,KAAO,YAAYuC,KAAK,YAAY,CAAC/C,EAAIa,GAAG,aAAab,EAAIc,GAAG2B,EAAWO,MAAM,MAAMhD,EAAIc,GAAGd,EAAIiD,EAAE,SAAU,UAAW,uBAAwBR,EAAWS,UAAU,eAAe,MAAM,CAAC9C,EAAG,mBAAmB,CAACuB,IAAI,aAAanB,MAAM,CAAC,KAAO,SAAS,QAAUR,EAAIuC,cAAc,MAAQvC,EAAI2C,EAAE,SAAU,UAAU,aAAa3C,EAAI2C,EAAE,SAAU,WAAWlC,GAAG,CAAC,QAAUT,EAAImD,WAAWJ,KAAK,UAAU,CAAC/C,EAAIgC,GAAG,UAAUhC,EAAIa,GAAG,KAAKT,EAAG,WAAW,CAACI,MAAM,CAAC,KAAO,UAAU,aAAaR,EAAI2C,EAAE,SAAU,wBAAwBlC,GAAG,CAAC,MAAQ,SAASC,GAAQV,EAAIoD,uBAAwB,CAAI,GAAG3B,YAAYzB,EAAI0B,GAAG,CAAC,CAACC,IAAI,OAAOC,GAAG,WAAW,MAAO,CAACxB,EAAG,QAAQ,EAAEyB,OAAM,MAAS,CAAC7B,EAAIa,GAAG,aAAab,EAAIc,GAAGd,EAAI2C,EAAE,SAAU,cAAc,eAAe,GAAG3C,EAAIa,GAAG,KAAKb,EAAIa,GAAG,KAAKT,EAAG,iBAAiB,CAACI,MAAM,CAAC,KAAO,yBAAyB,MAAQR,EAAI2C,EAAE,SAAU,2BAA2BI,KAAK,0BAA0B,CAAC3C,EAAG,sBAAsB,CAACI,MAAM,CAAC,KAAO,QAAQuC,KAAK,UAAU,IAAI,GAAG/C,EAAIa,GAAG,KAAMb,EAAyB,sBAAEI,EAAG,UAAU,CAACI,MAAM,CAAC,MAAQR,EAAI2C,EAAE,SAAU,cAAclC,GAAG,CAAC,MAAQ,SAASC,GAAQV,EAAIoD,uBAAwB,CAAK,IAAI,CAAChD,EAAG,YAAY,CAACK,GAAG,CAAC,KAAOT,EAAIqD,uBAAuB,GAAGrD,EAAIe,MAAM,EAAE,GACvkD,IISpB,EACA,KACA,WACA,MAI8B,O","sources":["webpack:///photos/src/components/HeaderNavigation.vue?vue&type=style&index=0&lang=scss&","webpack:///photos/src/components/HeaderNavigation.vue?vue&type=style&index=1&id=b9975c76&lang=scss&scoped=true&","webpack:///photos/src/components/VirtualScrolling.vue?vue&type=style&index=0&id=7d847354&scoped=true&lang=scss&","webpack:///photos/src/views/Albums.vue?vue&type=style&index=0&id=4debaaff&lang=scss&scoped=true&","webpack:///photos/node_modules/vue-material-design-icons/AccountMultiplePlus.vue","webpack:///photos/node_modules/vue-material-design-icons/AccountMultiplePlus.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/AccountMultiplePlus.vue?e9b5","webpack:///photos/node_modules/vue-material-design-icons/AccountMultiplePlus.vue?vue&type=template&id=7e4925e6&","webpack:///photos/node_modules/vue-material-design-icons/ContentCopy.vue","webpack:///photos/node_modules/vue-material-design-icons/ContentCopy.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/ContentCopy.vue?c47c","webpack:///photos/node_modules/vue-material-design-icons/ContentCopy.vue?vue&type=template&id=00bbfaf7&","webpack:///photos/node_modules/vue-material-design-icons/Earth.vue","webpack:///photos/node_modules/vue-material-design-icons/Earth.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/Earth.vue?d380","webpack:///photos/node_modules/vue-material-design-icons/Earth.vue?vue&type=template&id=3a17232e&","webpack:///photos/node_modules/vue-material-design-icons/Magnify.vue","webpack:///photos/node_modules/vue-material-design-icons/Magnify.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/Magnify.vue?0775","webpack:///photos/node_modules/vue-material-design-icons/Magnify.vue?vue&type=template&id=d480a606&","webpack:///photos/node_modules/vue-material-design-icons/Plus.vue","webpack:///photos/node_modules/vue-material-design-icons/Plus.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/Plus.vue?80b4","webpack:///photos/node_modules/vue-material-design-icons/Plus.vue?vue&type=template&id=968bec46&","webpack:///photos/node_modules/vue-material-design-icons/Send.vue","webpack:///photos/node_modules/vue-material-design-icons/Send.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/Send.vue?0295","webpack:///photos/node_modules/vue-material-design-icons/Send.vue?vue&type=template&id=46f29e66&","webpack:///photos/src/components/HeaderNavigation.vue?vue&type=template&id=b9975c76&scoped=true&","webpack:///photos/src/components/HeaderNavigation.vue","webpack:///photos/src/components/HeaderNavigation.vue?vue&type=script&lang=js&","webpack://photos/./src/components/HeaderNavigation.vue?29e2","webpack://photos/./src/components/HeaderNavigation.vue?1190","webpack://photos/./src/components/HeaderNavigation.vue?6702","webpack:///photos/src/components/VirtualScrolling.vue?vue&type=template&id=7d847354&scoped=true&","webpack:///photos/src/components/VirtualScrolling.vue","webpack:///photos/src/components/VirtualScrolling.vue?vue&type=script&lang=js&","webpack://photos/./src/components/VirtualScrolling.vue?14d9","webpack://photos/./src/components/VirtualScrolling.vue?6e3f","webpack:///photos/src/views/Albums.vue?vue&type=template&id=4debaaff&scoped=true&","webpack:///photos/src/views/Albums.vue","webpack:///photos/src/views/Albums.vue?vue&type=script&lang=js&","webpack://photos/./src/views/Albums.vue?78b8","webpack://photos/./src/views/Albums.vue?2029"],"sourcesContent":["// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \":root{--photos-navigation-height: 64px;--photos-navigation-spacing: calc((var(--photos-navigation-height) - 44px) / 2)}button.app-navigation-toggle{top:0 !important;right:calc(var(--photos-navigation-height)*-1) !important;margin:var(--photos-navigation-spacing) !important}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/HeaderNavigation.vue\"],\"names\":[],\"mappings\":\"AAgLA,MACC,gCAAA,CAEA,+EAAA,CAID,6BAEC,gBAAA,CACA,yDAAA,CACA,kDAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n:root {\\n\\t--photos-navigation-height: 64px;\\n\\t// header height - button size\\n\\t--photos-navigation-spacing: calc((var(--photos-navigation-height) - 44px) / 2);\\n}\\n\\n// Properly position the navigation toggle button\\nbutton.app-navigation-toggle {\\n\\t// App-navigation have a 4px margin top\\n\\ttop: 0 !important;\\n\\tright: calc(var(--photos-navigation-height) * -1) !important;\\n\\tmargin: var(--photos-navigation-spacing) !important;\\n}\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".photos-navigation[data-v-b9975c76]{position:-webkit-sticky;position:sticky;z-index:20;top:0;display:flex;align-items:center;width:100%;height:var(--photos-navigation-height);min-height:var(--photos-navigation-height);padding:0 var(--photos-navigation-height);background:var(--color-main-background)}.photos-navigation__back[data-v-b9975c76]{position:absolute;left:0;margin:var(--photos-navigation-spacing) !important}.photos-navigation__title[data-v-b9975c76]{overflow:hidden;margin:0;margin-right:calc(2*var(--photos-navigation-spacing));cursor:pointer;white-space:nowrap;text-overflow:ellipsis}.photos-navigation__loader[data-v-b9975c76]{margin-left:32px}.photos-navigation__content-right[data-v-b9975c76]{display:flex;align-items:center;justify-content:center;margin-left:auto}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/HeaderNavigation.vue\"],\"names\":[],\"mappings\":\"AAiMA,oCACC,uBAAA,CAAA,eAAA,CACA,UAAA,CACA,KAAA,CACA,YAAA,CACA,kBAAA,CACA,UAAA,CACA,sCAAA,CACA,0CAAA,CACA,yCAAA,CACA,uCAAA,CAEA,0CAEC,iBAAA,CACA,MAAA,CACA,kDAAA,CAGD,2CACC,eAAA,CACA,QAAA,CACA,qDAAA,CACA,cAAA,CACA,kBAAA,CACA,sBAAA,CAGD,4CACC,gBAAA,CAGD,mDACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,gBAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.photos-navigation {\\n\\tposition: sticky;\\n\\tz-index: 20;\\n\\ttop: 0;\\n\\tdisplay: flex;\\n\\talign-items: center;\\n\\twidth: 100%;\\n\\theight: var(--photos-navigation-height);\\n\\tmin-height: var(--photos-navigation-height);\\n\\tpadding: 0 var(--photos-navigation-height);\\n\\tbackground: var(--color-main-background);\\n\\n\\t&__back {\\n\\t\\t// Above the navigation menu\\n\\t\\tposition: absolute;\\n\\t\\tleft: 0;\\n\\t\\tmargin: var(--photos-navigation-spacing) !important;\\n\\t}\\n\\n\\t&__title {\\n\\t\\toverflow: hidden;\\n\\t\\tmargin: 0;\\n\\t\\tmargin-right: calc(2 * var(--photos-navigation-spacing));\\n\\t\\tcursor: pointer;\\n\\t\\twhite-space: nowrap;\\n\\t\\ttext-overflow: ellipsis;\\n\\t}\\n\\n\\t&__loader {\\n\\t\\tmargin-left: 32px;\\n\\t}\\n\\n\\t&__content-right {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\tjustify-content: center;\\n\\t\\tmargin-left: auto;\\n\\t}\\n}\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".vs-container[data-v-7d847354]{overflow-y:scroll;height:100%}.vs-rows-container[data-v-7d847354]{box-sizing:border-box}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/VirtualScrolling.vue\"],\"names\":[],\"mappings\":\"AAkTA,+BACC,iBAAA,CACA,WAAA,CAGD,oCACC,qBAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.vs-container {\\n\\toverflow-y: scroll;\\n\\theight: 100%;\\n}\\n\\n.vs-rows-container {\\n\\tbox-sizing: border-box;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".albums-list[data-v-4debaaff]{display:flex;flex-direction:column}.albums-list .album__name[data-v-4debaaff]{font-weight:normal;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/views/Albums.vue\"],\"names\":[],\"mappings\":\"AA4IA,8BACC,YAAA,CACA,qBAAA,CAEA,2CACC,kBAAA,CACA,eAAA,CACA,kBAAA,CACA,sBAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.albums-list {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\n\\t.album__name {\\n\\t\\tfont-weight: normal;\\n\\t\\toverflow: hidden;\\n\\t\\twhite-space: nowrap;\\n\\t\\ttext-overflow: ellipsis;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./AccountMultiplePlus.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./AccountMultiplePlus.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AccountMultiplePlus.vue?vue&type=template&id=7e4925e6&\"\nimport script from \"./AccountMultiplePlus.vue?vue&type=script&lang=js&\"\nexport * from \"./AccountMultiplePlus.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon account-multiple-plus-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M19 17V19H7V17S7 13 13 13 19 17 19 17M16 8A3 3 0 1 0 13 11A3 3 0 0 0 16 8M19.2 13.06A5.6 5.6 0 0 1 21 17V19H24V17S24 13.55 19.2 13.06M18 5A2.91 2.91 0 0 0 17.11 5.14A5 5 0 0 1 17.11 10.86A2.91 2.91 0 0 0 18 11A3 3 0 0 0 18 5M8 10H5V7H3V10H0V12H3V15H5V12H8Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ContentCopy.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ContentCopy.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ContentCopy.vue?vue&type=template&id=00bbfaf7&\"\nimport script from \"./ContentCopy.vue?vue&type=script&lang=js&\"\nexport * from \"./ContentCopy.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon content-copy-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Earth.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Earth.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Earth.vue?vue&type=template&id=3a17232e&\"\nimport script from \"./Earth.vue?vue&type=script&lang=js&\"\nexport * from \"./Earth.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon earth-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M17.9,17.39C17.64,16.59 16.89,16 16,16H15V13A1,1 0 0,0 14,12H8V10H10A1,1 0 0,0 11,9V7H13A2,2 0 0,0 15,5V4.59C17.93,5.77 20,8.64 20,12C20,14.08 19.2,15.97 17.9,17.39M11,19.93C7.05,19.44 4,16.08 4,12C4,11.38 4.08,10.78 4.21,10.21L9,15V16A2,2 0 0,0 11,18M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Magnify.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Magnify.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Magnify.vue?vue&type=template&id=d480a606&\"\nimport script from \"./Magnify.vue?vue&type=script&lang=js&\"\nexport * from \"./Magnify.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon magnify-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M9.5,3A6.5,6.5 0 0,1 16,9.5C16,11.11 15.41,12.59 14.44,13.73L14.71,14H15.5L20.5,19L19,20.5L14,15.5V14.71L13.73,14.44C12.59,15.41 11.11,16 9.5,16A6.5,6.5 0 0,1 3,9.5A6.5,6.5 0 0,1 9.5,3M9.5,5C7,5 5,7 5,9.5C5,12 7,14 9.5,14C12,14 14,12 14,9.5C14,7 12,5 9.5,5Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Plus.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Plus.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Plus.vue?vue&type=template&id=968bec46&\"\nimport script from \"./Plus.vue?vue&type=script&lang=js&\"\nexport * from \"./Plus.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon plus-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Send.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Send.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Send.vue?vue&type=template&id=46f29e66&\"\nimport script from \"./Send.vue?vue&type=script&lang=js&\"\nexport * from \"./Send.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon send-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M2,21L23,12L2,3V10L17,12L2,14V21Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"photos-navigation\",class:{'photos-navigation--root': _vm.isRoot},attrs:{\"role\":\"toolbar\"}},[(!_vm.isRoot)?_c('NcButton',{staticClass:\"photos-navigation__back\",attrs:{\"type\":\"tertiary\"},on:{\"click\":_vm.folderUp},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('ArrowLeft',{attrs:{\"size\":20}})]},proxy:true}],null,false,1821202730)}):_vm._e(),_vm._v(\" \"),_c('h2',{staticClass:\"photos-navigation__title\",on:{\"click\":_vm.refresh}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.name)+\"\\n\\t\")]),_vm._v(\" \"),(_vm.$slots.default)?_c('div',{staticClass:\"photos-navigation__content\"},[_vm._t(\"default\")],2):_vm._e(),_vm._v(\" \"),(_vm.loading)?_c('NcLoadingIcon',{staticClass:\"photos-navigation__loader\"}):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"photos-navigation__content-right\"},[_vm._t(\"right\")],2)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HeaderNavigation.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!./HeaderNavigation.vue?vue&type=script&lang=js&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./HeaderNavigation.vue?vue&type=style&index=0&lang=scss&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./HeaderNavigation.vue?vue&type=style&index=0&lang=scss&\";\n export default content && content.locals ? content.locals : undefined;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./HeaderNavigation.vue?vue&type=style&index=1&id=b9975c76&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./HeaderNavigation.vue?vue&type=style&index=1&id=b9975c76&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./HeaderNavigation.vue?vue&type=template&id=b9975c76&scoped=true&\"\nimport script from \"./HeaderNavigation.vue?vue&type=script&lang=js&\"\nexport * from \"./HeaderNavigation.vue?vue&type=script&lang=js&\"\nimport style0 from \"./HeaderNavigation.vue?vue&type=style&index=0&lang=scss&\"\nimport style1 from \"./HeaderNavigation.vue?vue&type=style&index=1&id=b9975c76&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 \"b9975c76\",\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 (!_vm.useWindow && _vm.containerElement === null)?_c('div',{ref:\"container\",staticClass:\"vs-container\"},[_c('div',{ref:\"rowsContainer\",staticClass:\"vs-rows-container\",style:(_vm.rowsContainerStyle)},[_vm._t(\"default\",null,{\"renderedRows\":_vm.visibleRows}),_vm._v(\" \"),_vm._t(\"loader\")],2)]):_c('div',{ref:\"rowsContainer\",staticClass:\"vs-rows-container\",style:(_vm.rowsContainerStyle)},[_vm._t(\"default\",null,{\"renderedRows\":_vm.visibleRows}),_vm._v(\" \"),_vm._t(\"loader\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VirtualScrolling.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!./VirtualScrolling.vue?vue&type=script&lang=js&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./VirtualScrolling.vue?vue&type=style&index=0&id=7d847354&scoped=true&lang=scss&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./VirtualScrolling.vue?vue&type=style&index=0&id=7d847354&scoped=true&lang=scss&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./VirtualScrolling.vue?vue&type=template&id=7d847354&scoped=true&\"\nimport script from \"./VirtualScrolling.vue?vue&type=script&lang=js&\"\nexport * from \"./VirtualScrolling.vue?vue&type=script&lang=js&\"\nimport style0 from \"./VirtualScrolling.vue?vue&type=style&index=0&id=7d847354&scoped=true&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 \"7d847354\",\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',[_c('CollectionsList',{staticClass:\"albums-list\",attrs:{\"collections\":_vm.albums,\"loading\":_vm.loadingAlbums,\"error\":_vm.errorFetchingAlbums},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar collection = ref.collection;\nreturn _c('CollectionCover',{key:collection.basename,attrs:{\"link\":(\"/albums/\" + (collection.basename)),\"alt-img\":_vm.t('photos', 'Cover photo for album {albumName}', { albumName: collection.basename }),\"cover-url\":_vm._f(\"coverUrl\")(collection.lastPhoto)}},[_c('h2',{staticClass:\"album__name\"},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(collection.basename)+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('div',{staticClass:\"album__details\",attrs:{\"slot\":\"subtitle\"},slot:\"subtitle\"},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(collection.date)+\" ⸱ \"+_vm._s(_vm.n('photos', '%n item', '%n photos and videos', collection.nbItems))+\"\\n\\t\\t\\t\")])])}}])},[_c('HeaderNavigation',{key:\"navigation\",attrs:{\"slot\":\"header\",\"loading\":_vm.loadingAlbums,\"title\":_vm.t('photos', 'Albums'),\"root-title\":_vm.t('photos', 'Albums')},on:{\"refresh\":_vm.onRefresh},slot:\"header\"},[_vm._t(\"header\"),_vm._v(\" \"),_c('NcButton',{attrs:{\"type\":\"primary\",\"aria-label\":_vm.t('photos', 'Create a new album.')},on:{\"click\":function($event){_vm.showAlbumCreationForm = true}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Plus')]},proxy:true}])},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('photos', 'New album'))+\"\\n\\t\\t\\t\")])],2),_vm._v(\" \"),_vm._v(\" \"),_c('NcEmptyContent',{attrs:{\"slot\":\"empty-collections-list\",\"title\":_vm.t('photos', 'There is no album yet!')},slot:\"empty-collections-list\"},[_c('FolderMultipleImage',{attrs:{\"slot\":\"icon\"},slot:\"icon\"})],1)],1),_vm._v(\" \"),(_vm.showAlbumCreationForm)?_c('NcModal',{attrs:{\"title\":_vm.t('photos', 'New album')},on:{\"close\":function($event){_vm.showAlbumCreationForm = false}}},[_c('AlbumForm',{on:{\"done\":_vm.handleAlbumCreated}})],1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Albums.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!./Albums.vue?vue&type=script&lang=js&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./Albums.vue?vue&type=style&index=0&id=4debaaff&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./Albums.vue?vue&type=style&index=0&id=4debaaff&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Albums.vue?vue&type=template&id=4debaaff&scoped=true&\"\nimport script from \"./Albums.vue?vue&type=script&lang=js&\"\nexport * from \"./Albums.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Albums.vue?vue&type=style&index=0&id=4debaaff&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 \"4debaaff\",\n null\n \n)\n\nexport default component.exports"],"names":["___CSS_LOADER_EXPORT___","push","module","id","name","emits","props","title","type","String","fillColor","default","size","Number","_vm","this","_h","$createElement","_c","_self","_b","staticClass","attrs","on","$event","$emit","$attrs","_v","_s","_e","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","class","isRoot","folderUp","scopedSlots","_u","key","fn","proxy","refresh","$slots","_t","useWindow","containerElement","ref","style","visibleRows","albums","loadingAlbums","errorFetchingAlbums","collection","basename","t","albumName","_f","lastPhoto","slot","date","n","nbItems","onRefresh","showAlbumCreationForm","handleAlbumCreated"],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-node_modules_vue-material-design-icons_AlertCircle_vue-node_modules_vue-material-design-icons-5becbc.js b/js/photos-node_modules_vue-material-design-icons_AlertCircle_vue-node_modules_vue-material-design-icons-5becbc.js deleted file mode 100644 index 6964a9215..000000000 --- a/js/photos-node_modules_vue-material-design-icons_AlertCircle_vue-node_modules_vue-material-design-icons-5becbc.js +++ /dev/null @@ -1,3 +0,0 @@ -/*! For license information please see photos-node_modules_vue-material-design-icons_AlertCircle_vue-node_modules_vue-material-design-icons-5becbc.js.LICENSE.txt */ -"use strict";(self.webpackChunkphotos=self.webpackChunkphotos||[]).push([["node_modules_vue-material-design-icons_AlertCircle_vue-node_modules_vue-material-design-icons-5becbc"],{49723:(n,e,r)=>{r.d(e,{Z:()=>g});var o=r(20629),i=r(80351),l=r.n(i),a=r(82880),s=r(45994),c=r(81067),u=r(59537),d=r(94236);function m(t,n){var e=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);n&&(r=r.filter((function(n){return Object.getOwnPropertyDescriptor(t,n).enumerable}))),e.push.apply(e,r)}return e}function p(t){for(var n=1;n\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t',details:!0,signal:n.abortController.signal});case 7:o=e.sent,i=o.data.filter((function(t){var n;return t.filename!=="/photos/".concat(null===(n=(0,s.ts)())||void 0===n?void 0:n.uid,"/sharedalbums")})).map((function(t){return(0,d.AX)(t)})).map((function(t){var e,r;t.collaborators=""===t.collaborators?[]:t.collaborators;var o=JSON.parse(null!==(e=null===(r=t.dateRange)||void 0===r?void 0:r.replace(/"/g,'"'))&&void 0!==e?e:"{}");null===o.start&&(o.start=l()().unix(),o.end=l()().unix());var i={startDate:l().unix(o.start).format("MMMM YYYY"),endDate:l().unix(o.end).format("MMMM YYYY")};return p(p({},t),{},i.startDate===i.endDate?{date:i.startDate}:{date:n.t("photos","{startDate} to {endDate}",i)})})),n.$store.dispatch("addSharedAlbums",{albums:i}),u.Z.debug("[FetchSharedAlbumsMixin] Fetched ".concat(i.length," new files: "),i),e.next=26;break;case 13:if(e.prev=13,e.t0=e.catch(2),404!==(null===(m=e.t0.response)||void 0===m?void 0:m.status)){e.next=19;break}n.errorFetchingAlbums=404,e.next=24;break;case 19:if("ERR_CANCELED"!==e.t0.code){e.next=23;break}return e.abrupt("return");case 23:n.errorFetchingAlbums=e.t0;case 24:u.Z.error(t("photos","Failed to fetch albums list."),e.t0),(0,a.x2)(t("photos","Failed to fetch albums list."));case 26:return e.prev=26,n.loadingAlbums=!1,e.finish(26);case 29:case"end":return e.stop()}}),e,null,[[2,13,26,29]])})))()}}}},35160:(t,n,e)=>{e.d(n,{Z:()=>a});var r=e(87537),o=e.n(r),i=e(23645),l=e.n(i)()(o());l.push([t.id,".album[data-v-f85bf7c8]{display:flex;flex-direction:column}.album__title[data-v-f85bf7c8]{width:100%}.album__name[data-v-f85bf7c8]{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.album__location[data-v-f85bf7c8]{margin-left:-4px;display:flex;color:var(--color-text-lighter)}","",{version:3,sources:["webpack://./src/views/SharedAlbumContent.vue"],names:[],mappings:"AA0SA,wBACC,YAAA,CACA,qBAAA,CAEA,+BACC,UAAA,CAGD,8BACC,eAAA,CACA,kBAAA,CACA,sBAAA,CAGD,kCACC,gBAAA,CACA,YAAA,CACA,+BAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.album {\n\tdisplay: flex;\n\tflex-direction: column;\n\n\t&__title {\n\t\twidth: 100%;\n\t}\n\n\t&__name {\n\t\toverflow: hidden;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t}\n\n\t&__location {\n\t\tmargin-left: -4px;\n\t\tdisplay: flex;\n\t\tcolor: var(--color-text-lighter);\n\t}\n}\n'],sourceRoot:""}]);const a=l},24777:(t,n,e)=>{e.d(n,{Z:()=>o});const r={name:"AlertCircleIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const o=(0,e(51900).Z)(r,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("span",t._b({staticClass:"material-design-icon alert-circle-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(n){return t.$emit("click",n)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M13,13H11V7H13M13,17H11V15H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports},33691:(t,n,e)=>{e.d(n,{Z:()=>o});const r={name:"DeleteIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const o=(0,e(51900).Z)(r,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("span",t._b({staticClass:"material-design-icon delete-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(n){return t.$emit("click",n)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M19,4H15.5L14.5,3H9.5L8.5,4H5V6H19M6,19A2,2 0 0,0 8,21H16A2,2 0 0,0 18,19V7H6V19Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports},2470:(t,n,e)=>{e.d(n,{Z:()=>o});const r={name:"DownloadIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const o=(0,e(51900).Z)(r,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("span",t._b({staticClass:"material-design-icon download-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(n){return t.$emit("click",n)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M5,20H19V18H5M19,9H15V3H9V9H5L12,16L19,9Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports},54287:(t,n,e)=>{e.d(n,{Z:()=>o});const r={name:"DownloadMultipleIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const o=(0,e(51900).Z)(r,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("span",t._b({staticClass:"material-design-icon download-multiple-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(n){return t.$emit("click",n)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M9,1V7H5L12,14L19,7H15V1H9M5,16V18H19V16H5M5,20V22H19V20H5Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports},61679:(t,n,e)=>{e.d(n,{Z:()=>o});const r={name:"ImagePlusIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const o=(0,e(51900).Z)(r,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("span",t._b({staticClass:"material-design-icon image-plus-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(n){return t.$emit("click",n)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M18 15V18H15V20H18V23H20V20H23V18H20V15H18M13.3 21H5C3.9 21 3 20.1 3 19V5C3 3.9 3.9 3 5 3H19C20.1 3 21 3.9 21 5V13.3C20.4 13.1 19.7 13 19 13C17.9 13 16.8 13.3 15.9 13.9L14.5 12L11 16.5L8.5 13.5L5 18H13.1C13 18.3 13 18.7 13 19C13 19.7 13.1 20.4 13.3 21Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports},40502:(t,n,e)=>{e.d(n,{Z:()=>o});const r={name:"PlusIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const o=(0,e(51900).Z)(r,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("span",t._b({staticClass:"material-design-icon plus-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(n){return t.$emit("click",n)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports},75843:(t,n,e)=>{e.d(n,{Z:()=>o});const r={name:"UploadIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const o=(0,e(51900).Z)(r,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("span",t._b({staticClass:"material-design-icon upload-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(n){return t.$emit("click",n)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M9,16V10H5L12,3L19,10H15V16H9M5,20V18H19V20H5Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports},11166:(t,n,e)=>{e.r(n),e.d(n,{default:()=>W});var r=e(20629),o=e(93050),i=e(40502),l=e(33691),a=e(61679),s=e(31894),c=e(2470),u=e(54287),d=e(33476),m=e(45994),p=e(79753),f=e(49723),h=e(66951),b=e(69363),g=e(38352),v=e(46756),A=e(17288),_=e(33904),C=e(59537),w=e(81067),y=e(2161),x=e(94236);function k(t,n,e,r,o,i,l){try{var a=t[i](l),s=a.value}catch(t){return void e(t)}a.done?n(s):Promise.resolve(s).then(r,o)}function F(t){return function(){var n=this,e=arguments;return new Promise((function(r,o){var i=t.apply(n,e);function l(t){k(i,r,o,l,a,"next",t)}function a(t){k(i,r,o,l,a,"throw",t)}l(void 0)}))}}function Z(t,n){var e=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);n&&(r=r.filter((function(n){return Object.getOwnPropertyDescriptor(t,n).enumerable}))),e.push.apply(e,r)}return e}function N(t){for(var n=1;n0)){n.next=21;break}return n.next=21,t.$store.commit("addFilesToSharedAlbum",{albumName:t.albumName,fileIdsToAdd:a});case 21:C.Z.debug("[SharedAlbumContent] Fetched ".concat(a.length," new files: "),a),n.next=36;break;case 24:if(n.prev=24,n.t0=n.catch(8),404!==(null===(s=n.t0.response)||void 0===s?void 0:s.status)){n.next=30;break}t.errorFetchingFiles=404,n.next=35;break;case 30:if("ERR_CANCELED"!==n.t0.code){n.next=34;break}return n.abrupt("return");case 34:t.errorFetchingFiles=n.t0;case 35:C.Z.error("Error fetching shared album files",n.t0);case 36:return n.prev=36,t.loadingFiles=!1,t.semaphore.release(e),t.fetchSemaphore.release(r),n.finish(36);case 41:return n.abrupt("return",[]);case 42:case"end":return n.stop()}}),n,null,[[8,24,36,41]])})))()},handleFilesPicked:function(t){var n=this;return F(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n.showAddPhotosModal=!1,e.next=3,n.addFilesToSharedAlbum({albumName:n.albumName,fileIdsToAdd:t});case 3:return e.next=5,n.fetchAlbumContent();case 5:case"end":return e.stop()}}),e)})))()},handleRemoveFilesFromAlbum:function(t){var n=this;return F(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n.$refs.collectionContent.onUncheckFiles(t),e.next=3,n.removeFilesFromSharedAlbum({albumName:n.albumName,fileIdsToRemove:t});case 3:case"end":return e.stop()}}),e)})))()},handleDeleteAlbum:function(){var t=this;return F(regeneratorRuntime.mark((function n(){return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,t.deleteSharedAlbum({albumName:t.albumName});case 2:case"end":return n.stop()}}),n)})))()}})};var M=e(93379),P=e.n(M),D=e(7795),O=e.n(D),V=e(90569),$=e.n(V),E=e(3565),j=e.n(E),R=e(19216),z=e.n(R),B=e(44589),I=e.n(B),T=e(35160),L={};L.styleTagTransform=I(),L.setAttributes=j(),L.insert=$().bind(null,"head"),L.domAPI=O(),L.insertStyleElement=z();P()(T.Z,L);T.Z&&T.Z.locals&&T.Z.locals;const W=(0,e(51900).Z)(H,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("div",[e("CollectionContent",{ref:"collectionContent",attrs:{collection:t.album,"collection-file-ids":t.albumFileIds,semaphore:t.semaphore,loading:t.loadingAlbums||t.loadingFiles,error:t.errorFetchingAlbums||t.errorFetchingFiles},scopedSlots:t._u([{key:"header",fn:function(n){var r=n.selectedFileIds;return e("HeaderNavigation",{key:"navigation",attrs:{loading:t.loadingFiles,params:{albumName:t.albumName},path:"/"+t.albumName,title:t.albumName},on:{refresh:t.fetchAlbumContent}},[""!==t.album.location?e("div",{staticClass:"album__location"},[e("MapMarker"),t._v(t._s(t.album.location)+"\n\t\t\t")],1):t._e(),t._v(" "),void 0!==t.album?e("template",{slot:"right"},[0!==t.album.nbItems?e("NcButton",{attrs:{type:"tertiary","aria-label":t.t("photos","Add photos to this album")},on:{click:function(n){t.showAddPhotosModal=!0}},scopedSlots:t._u([{key:"icon",fn:function(){return[e("Plus")]},proxy:!0}],null,!0)}):t._e(),t._v(" "),e("NcActions",{attrs:{"aria-label":t.t("photos","Open actions menu")}},[t.albumFileIds.length>0?e("ActionDownload",{attrs:{"selected-file-ids":t.albumFileIds,title:t.t("photos","Download all files in album")}},[e("DownloadMultiple",{attrs:{slot:"icon"},slot:"icon"})],1):t._e(),t._v(" "),e("NcActionButton",{attrs:{"close-after-click":!0},on:{click:t.handleDeleteAlbum}},[t._v("\n\t\t\t\t\t\t"+t._s(t.t("photos","Delete album"))+"\n\t\t\t\t\t\t"),e("Delete",{attrs:{slot:"icon"},slot:"icon"})],1),t._v(" "),r.length>0?[e("NcActionSeparator"),t._v(" "),e("ActionDownload",{attrs:{"selected-file-ids":r,title:t.t("photos","Download selected files")}},[e("Download",{attrs:{slot:"icon"},slot:"icon"})],1),t._v(" "),e("NcActionButton",{attrs:{"close-after-click":!0},on:{click:function(n){return t.handleRemoveFilesFromAlbum(r)}}},[t._v("\n\t\t\t\t\t\t\t"+t._s(t.t("photos","Remove selection from album"))+"\n\t\t\t\t\t\t\t"),e("Close",{attrs:{slot:"icon"},slot:"icon"})],1)]:t._e()],2)],1):t._e()],2)}}],null,!1,2064107933)},[t._v(" "),e("NcEmptyContent",{staticClass:"album__empty",attrs:{slot:"empty-content",title:t.t("photos","This album doesn't have any photos or videos yet!")},slot:"empty-content"},[e("ImagePlus",{attrs:{slot:"icon"},slot:"icon"}),t._v(" "),e("NcButton",{attrs:{slot:"action",type:"primary","aria-label":t.t("photos","Add photos to this album")},on:{click:function(n){t.showAddPhotosModal=!0}},slot:"action"},[e("Plus",{attrs:{slot:"icon"},slot:"icon"}),t._v("\n\t\t\t\t"+t._s(t.t("photos","Add"))+"\n\t\t\t")],1)],1)],1),t._v(" "),t.showAddPhotosModal?e("NcModal",{attrs:{size:"large",title:t.t("photos","Add photos to the album")},on:{close:function(n){t.showAddPhotosModal=!1}}},[e("FilesPicker",{attrs:{destination:t.album.basename,"blacklist-ids":t.albumFileIds,loading:t.loadingAddFilesToAlbum},on:{"files-picked":t.handleFilesPicked}})],1):t._e()],1)}),[],!1,null,"f85bf7c8",null).exports}}]); -//# sourceMappingURL=photos-node_modules_vue-material-design-icons_AlertCircle_vue-node_modules_vue-material-design-icons-5becbc.js.map?v=45ec0635c6ea44b23356 \ No newline at end of file diff --git a/js/photos-node_modules_vue-material-design-icons_AlertCircle_vue-node_modules_vue-material-design-icons-5becbc.js.LICENSE.txt b/js/photos-node_modules_vue-material-design-icons_AlertCircle_vue-node_modules_vue-material-design-icons-5becbc.js.LICENSE.txt deleted file mode 100644 index 6f3657b52..000000000 --- a/js/photos-node_modules_vue-material-design-icons_AlertCircle_vue-node_modules_vue-material-design-icons-5becbc.js.LICENSE.txt +++ /dev/null @@ -1,21 +0,0 @@ -/** - * @copyright Copyright (c) 2022 Louis Chemineau - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ diff --git a/js/photos-node_modules_vue-material-design-icons_AlertCircle_vue-node_modules_vue-material-design-icons-5becbc.js.map b/js/photos-node_modules_vue-material-design-icons_AlertCircle_vue-node_modules_vue-material-design-icons-5becbc.js.map deleted file mode 100644 index 4129cb1ad..000000000 --- a/js/photos-node_modules_vue-material-design-icons_AlertCircle_vue-node_modules_vue-material-design-icons-5becbc.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-node_modules_vue-material-design-icons_AlertCircle_vue-node_modules_vue-material-design-icons-5becbc.js?v=45ec0635c6ea44b23356","mappings":";iyCAiCA,SACCA,KAAM,yBAENC,KAHc,WAIb,MAAO,CACNC,oBAAqB,KACrBC,eAAe,EAEhB,EAEDC,OAAQ,UACPC,GAGKC,YAdQ,WAcM,0IACnB,EAAKC,cADc,4CAEnB,EAEDC,SAAU,EAAF,IACJC,EAAAA,EAAAA,IAAW,CACb,kBAIFC,QAAS,CACFH,YADE,WACY,0JACf,EAAKJ,cADU,iEAMlB,EAAKA,eAAgB,EACrB,EAAKD,oBAAsB,KAPT,SASKS,EAAAA,EAAAA,qBAAA,6BAAuCC,EAAAA,EAAAA,aAAvC,aAAuC,EAAkBC,IAAzD,iBAA6E,CACnGZ,KAAM,8hBAcNa,SAAS,EACTC,OAAQ,EAAKC,gBAAgBD,SAzBZ,OASZE,EATY,OA4BZC,EAASD,EAAShB,KACtBkB,QAAO,SAAAC,GAAK,aAAIA,EAAMC,WAAN,6BAA8BT,EAAAA,EAAAA,aAA9B,aAA8B,EAAkBC,IAAhD,gBAAJ,IACZS,KAAI,SAAAF,GAAK,OAAIG,EAAAA,EAAAA,IAAYH,EAAhB,IACTE,KAAI,SAAAF,GAAS,QACbA,EAAMI,cAAwC,KAAxBJ,EAAMI,cAAuB,GAAKJ,EAAMI,cAE9D,IAAMC,EAAYC,KAAKC,MAAL,oBAAWP,EAAMK,iBAAjB,aAAW,EAAiBG,QAAQ,UAAW,YAA/C,QAAuD,MAEjD,OAApBH,EAAUI,QACbJ,EAAUI,MAAQC,MAASC,OAC3BN,EAAUO,IAAMF,MAASC,QAG1B,IAAME,EAAoB,CACzBC,UAAWJ,IAAAA,KAAYL,EAAUI,OAAOM,OAAO,aAC/CC,QAASN,IAAAA,KAAYL,EAAUO,KAAKG,OAAO,cAG5C,OACQ,EAAP,KAAYf,GAAZ,GADGa,EAAkBC,YAAcD,EAAkBG,QACrD,CAAmBC,KAAMJ,EAAkBC,WAE3C,CAAmBG,KAAM,EAAKC,EAAE,SAAU,2BAA4BL,IAEvE,IAEF,EAAKM,OAAOC,SAAS,kBAAmB,CAAEtB,OAAAA,IAC1CuB,EAAAA,EAAAA,MAAA,2CAAiDvB,EAAOwB,OAAxD,gBAA8ExB,GAtD5D,qDAwDa,OAA3B,eAAMD,gBAAN,eAAgB0B,QAxDF,iBAyDjB,EAAKzC,oBAAsB,IAzDV,2BA0DQ,iBAAf,KAAM0C,KA1DC,mDA6DjB,EAAK1C,oBAAL,KA7DiB,QA+DlBuC,EAAAA,EAAAA,MAAaH,EAAE,SAAU,gCAAzB,OACAO,EAAAA,EAAAA,IAAUP,EAAE,SAAU,iCAhEJ,yBAkElB,EAAKnC,eAAgB,EAlEH,8EAoEnB,yEC3HC2C,QAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,gSAAiS,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,gDAAgD,MAAQ,GAAG,SAAW,0HAA0H,eAAiB,CAAC,w6CAAw/C,WAAa,MAE5jE,4CCaA,MCpB+G,EDoB/G,CACEjD,KAAM,kBACNkD,MAAO,CAAC,SACRC,MAAO,CACLC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,cACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,yCAAyCC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,8GAA8G,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GACnoB,IDUpB,EACA,KACA,KACA,MAI8B,0CEEhC,MCpB0G,EDoB1G,CACE1E,KAAM,aACNkD,MAAO,CAAC,SACRC,MAAO,CACLC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,cACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,mCAAmCC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,sFAAsF,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GACrmB,IDUpB,EACA,KACA,KACA,MAI8B,yCEEhC,MCpB4G,EDoB5G,CACE1E,KAAM,eACNkD,MAAO,CAAC,SACRC,MAAO,CACLC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,cACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,qCAAqCC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,8CAA8C,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GAC/jB,IDUpB,EACA,KACA,KACA,MAI8B,0CEEhC,MCpBoH,EDoBpH,CACE1E,KAAM,uBACNkD,MAAO,CAAC,SACRC,MAAO,CACLC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,cACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,8CAA8CC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,gEAAgE,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GAC1lB,IDUpB,EACA,KACA,KACA,MAI8B,0CEEhC,MCpB6G,EDoB7G,CACE1E,KAAM,gBACNkD,MAAO,CAAC,SACRC,MAAO,CACLC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,cACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,uCAAuCC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,iQAAiQ,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GACpxB,IDUpB,EACA,KACA,KACA,MAI8B,0CEEhC,MCpBwG,EDoBxG,CACE1E,KAAM,WACNkD,MAAO,CAAC,SACRC,MAAO,CACLC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,cACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,iCAAiCC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,8CAA8C,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GAC3jB,IDUpB,EACA,KACA,KACA,MAI8B,0CEEhC,MCpB0G,EDoB1G,CACE1E,KAAM,aACNkD,MAAO,CAAC,SACRC,MAAO,CACLC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,cACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,mCAAmCC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,mDAAmD,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GAClkB,IDUpB,EACA,KACA,KACA,MAI8B,uDElBhC,uuCC6IA,MC7ImL,ED6InL,CACA,0BACA,YACA,cACA,SACA,gBACA,aACA,qBACA,WACA,cACA,gCACA,sBACA,gCACA,sCACA,oBACA,kBACA,sBACA,mBACA,gBACA,sBAGA,QACA,IACA,IACA,IACA,YAGA,OACA,WACA,YACA,cAIA,KApCA,WAqCA,OACA,sBACA,eACA,0BAEA,EAEA,iBACA,SACA,QACA,uBAHA,IASA,MATA,WAUA,4CACA,EAKA,aAhBA,WAiBA,iDACA,IAGA,OACA,MADA,WAEA,wBACA,GAGA,gBACA,SACA,cACA,oBACA,wBACA,gCALA,IAQA,kBARA,WAQA,gKACA,qCADA,yCAEA,IAFA,uBAKA,yDALA,cAKA,EALA,gBAMA,2BANA,cAMA,EANA,gBASA,0BACA,kBACA,oBAXA,UAaA,sDACA,iBADA,aACA,MADA,yBACA,aACA,CACA,SACA,WACA,kCAlBA,WAaA,EAbA,OAsBA,SACA,sCAEA,oGAEA,IACA,oCACA,wCAEA,mBAEA,YAjCA,kCAkCA,gFAlCA,QAqCA,6EArCA,qDAuCA,6DAvCA,iBAwCA,yBAxCA,2BAyCA,2BAzCA,mDA4CA,0BA5CA,QAgDA,oDAhDA,yBAkDA,kBACA,uBACA,4BApDA,8CAuDA,IAvDA,iEAwDA,EAEA,kBAlEA,SAkEA,oJACA,wBADA,SAEA,gEAFA,uBAIA,sBAJA,4CAKA,EAEA,2BAzEA,SAyEA,oJACA,4CADA,SAEA,wEAFA,4CAGA,EAEA,kBA9EA,WA8EA,0JACA,6CADA,4CAEA,0IEzRIC,EAAU,CAAC,EAEfA,EAAQC,kBAAoB,IAC5BD,EAAQE,cAAgB,IAElBF,EAAQG,OAAS,SAAc,KAAM,QAE3CH,EAAQI,OAAS,IACjBJ,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKJ,KAAW,YAAiB,WCPlD,SAXgB,cACd,GJTW,WAAa,IAAIhB,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAAQA,EAAG,oBAAoB,CAACkB,IAAI,oBAAoBd,MAAM,CAAC,WAAaR,EAAIvC,MAAM,sBAAsBuC,EAAIuB,aAAa,UAAYvB,EAAIwB,UAAU,QAAUxB,EAAIxD,eAAiBwD,EAAIyB,aAAa,MAAQzB,EAAIzD,qBAAuByD,EAAI0B,oBAAoBC,YAAY3B,EAAI4B,GAAG,CAAC,CAACC,IAAI,SAASC,GAAG,SAASR,GACzZ,IAAIS,EAAkBT,EAAIS,gBAC1B,OAAO3B,EAAG,mBAAmB,CAACyB,IAAI,aAAarB,MAAM,CAAC,QAAUR,EAAIyB,aAAa,OAAS,CAAEO,UAAWhC,EAAIgC,WAAY,KAAO,IAAMhC,EAAIgC,UAAU,MAAQhC,EAAIgC,WAAWvB,GAAG,CAAC,QAAUT,EAAIiC,oBAAoB,CAAyB,KAAvBjC,EAAIvC,MAAMyE,SAAiB9B,EAAG,MAAM,CAACG,YAAY,mBAAmB,CAACH,EAAG,aAAaJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIvC,MAAMyE,UAAU,aAAa,GAAGlC,EAAIe,KAAKf,EAAIa,GAAG,UAAoBsB,IAAdnC,EAAIvC,MAAqB2C,EAAG,WAAW,CAACgC,KAAK,SAAS,CAAwB,IAAtBpC,EAAIvC,MAAM4E,QAAejC,EAAG,WAAW,CAACI,MAAM,CAAC,KAAO,WAAW,aAAaR,EAAIrB,EAAE,SAAU,6BAA6B8B,GAAG,CAAC,MAAQ,SAASC,GAAQV,EAAIsC,oBAAqB,CAAI,GAAGX,YAAY3B,EAAI4B,GAAG,CAAC,CAACC,IAAI,OAAOC,GAAG,WAAW,MAAO,CAAC1B,EAAG,QAAQ,EAAEmC,OAAM,IAAO,MAAK,KAAQvC,EAAIe,KAAKf,EAAIa,GAAG,KAAKT,EAAG,YAAY,CAACI,MAAM,CAAC,aAAaR,EAAIrB,EAAE,SAAU,uBAAuB,CAAEqB,EAAIuB,aAAaxC,OAAS,EAAGqB,EAAG,iBAAiB,CAACI,MAAM,CAAC,oBAAoBR,EAAIuB,aAAa,MAAQvB,EAAIrB,EAAE,SAAU,iCAAiC,CAACyB,EAAG,mBAAmB,CAACI,MAAM,CAAC,KAAO,QAAQ4B,KAAK,UAAU,GAAGpC,EAAIe,KAAKf,EAAIa,GAAG,KAAKT,EAAG,iBAAiB,CAACI,MAAM,CAAC,qBAAoB,GAAMC,GAAG,CAAC,MAAQT,EAAIwC,oBAAoB,CAACxC,EAAIa,GAAG,iBAAiBb,EAAIc,GAAGd,EAAIrB,EAAE,SAAU,iBAAiB,kBAAkByB,EAAG,SAAS,CAACI,MAAM,CAAC,KAAO,QAAQ4B,KAAK,UAAU,GAAGpC,EAAIa,GAAG,KAAMkB,EAAgBhD,OAAS,EAAG,CAACqB,EAAG,qBAAqBJ,EAAIa,GAAG,KAAKT,EAAG,iBAAiB,CAACI,MAAM,CAAC,oBAAoBuB,EAAgB,MAAQ/B,EAAIrB,EAAE,SAAU,6BAA6B,CAACyB,EAAG,WAAW,CAACI,MAAM,CAAC,KAAO,QAAQ4B,KAAK,UAAU,GAAGpC,EAAIa,GAAG,KAAKT,EAAG,iBAAiB,CAACI,MAAM,CAAC,qBAAoB,GAAMC,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIyC,2BAA2BV,EAAgB,IAAI,CAAC/B,EAAIa,GAAG,mBAAmBb,EAAIc,GAAGd,EAAIrB,EAAE,SAAU,gCAAgC,oBAAoByB,EAAG,QAAQ,CAACI,MAAM,CAAC,KAAO,QAAQ4B,KAAK,UAAU,IAAIpC,EAAIe,MAAM,IAAI,GAAGf,EAAIe,MAAM,EAAE,IAAI,MAAK,EAAM,aAAa,CAACf,EAAIa,GAAG,KAAKT,EAAG,iBAAiB,CAACG,YAAY,eAAeC,MAAM,CAAC,KAAO,gBAAgB,MAAQR,EAAIrB,EAAE,SAAU,sDAAuDyD,KAAK,iBAAiB,CAAChC,EAAG,YAAY,CAACI,MAAM,CAAC,KAAO,QAAQ4B,KAAK,SAASpC,EAAIa,GAAG,KAAKT,EAAG,WAAW,CAACI,MAAM,CAAC,KAAO,SAAS,KAAO,UAAU,aAAaR,EAAIrB,EAAE,SAAU,6BAA6B8B,GAAG,CAAC,MAAQ,SAASC,GAAQV,EAAIsC,oBAAqB,CAAI,GAAGF,KAAK,UAAU,CAAChC,EAAG,OAAO,CAACI,MAAM,CAAC,KAAO,QAAQ4B,KAAK,SAASpC,EAAIa,GAAG,aAAab,EAAIc,GAAGd,EAAIrB,EAAE,SAAU,QAAQ,aAAa,IAAI,IAAI,GAAYqB,EAAIa,GAAG,KAAMb,EAAsB,mBAAEI,EAAG,UAAU,CAACI,MAAM,CAAC,KAAO,QAAQ,MAAQR,EAAIrB,EAAE,SAAU,4BAA4B8B,GAAG,CAAC,MAAQ,SAASC,GAAQV,EAAIsC,oBAAqB,CAAK,IAAI,CAAClC,EAAG,cAAc,CAACI,MAAM,CAAC,YAAcR,EAAIvC,MAAMiF,SAAS,gBAAgB1C,EAAIuB,aAAa,QAAUvB,EAAI2C,wBAAwBlC,GAAG,CAAC,eAAeT,EAAI4C,sBAAsB,GAAG5C,EAAIe,MAAM,EAAE,GACzvF,IISpB,EACA,KACA,WACA,MAI8B","sources":["webpack:///photos/src/mixins/FetchSharedAlbumsMixin.js","webpack:///photos/src/views/SharedAlbumContent.vue?vue&type=style&index=0&id=f85bf7c8&lang=scss&scoped=true&","webpack:///photos/node_modules/vue-material-design-icons/AlertCircle.vue","webpack:///photos/node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/AlertCircle.vue?489a","webpack:///photos/node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=template&id=2a2453f8&","webpack:///photos/node_modules/vue-material-design-icons/Delete.vue","webpack:///photos/node_modules/vue-material-design-icons/Delete.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/Delete.vue?92e1","webpack:///photos/node_modules/vue-material-design-icons/Delete.vue?vue&type=template&id=458c7ecb&","webpack:///photos/node_modules/vue-material-design-icons/Download.vue","webpack:///photos/node_modules/vue-material-design-icons/Download.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/Download.vue?b226","webpack:///photos/node_modules/vue-material-design-icons/Download.vue?vue&type=template&id=67aea606&","webpack:///photos/node_modules/vue-material-design-icons/DownloadMultiple.vue","webpack:///photos/node_modules/vue-material-design-icons/DownloadMultiple.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/DownloadMultiple.vue?2e77","webpack:///photos/node_modules/vue-material-design-icons/DownloadMultiple.vue?vue&type=template&id=63c2fc60&","webpack:///photos/node_modules/vue-material-design-icons/ImagePlus.vue","webpack:///photos/node_modules/vue-material-design-icons/ImagePlus.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/ImagePlus.vue?8b12","webpack:///photos/node_modules/vue-material-design-icons/ImagePlus.vue?vue&type=template&id=6b6ee9f3&","webpack:///photos/node_modules/vue-material-design-icons/Plus.vue","webpack:///photos/node_modules/vue-material-design-icons/Plus.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/Plus.vue?80b4","webpack:///photos/node_modules/vue-material-design-icons/Plus.vue?vue&type=template&id=968bec46&","webpack:///photos/node_modules/vue-material-design-icons/Upload.vue","webpack:///photos/node_modules/vue-material-design-icons/Upload.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/Upload.vue?19d8","webpack:///photos/node_modules/vue-material-design-icons/Upload.vue?vue&type=template&id=61d1920d&","webpack:///photos/src/views/SharedAlbumContent.vue?vue&type=template&id=f85bf7c8&scoped=true&","webpack:///photos/src/views/SharedAlbumContent.vue","webpack:///photos/src/views/SharedAlbumContent.vue?vue&type=script&lang=js&","webpack://photos/./src/views/SharedAlbumContent.vue?5ea2","webpack://photos/./src/views/SharedAlbumContent.vue?a937"],"sourcesContent":["/**\n * @copyright Copyright (c) 2022 Louis Chemineau \n *\n * @author Louis Chemineau \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 .\n *\n */\n\nimport { mapGetters } from 'vuex'\n\nimport moment from '@nextcloud/moment'\nimport { showError } from '@nextcloud/dialogs'\nimport { getCurrentUser } from '@nextcloud/auth'\n\nimport client from '../services/DavClient.js'\nimport logger from '../services/logger.js'\nimport { genFileInfo } from '../utils/fileUtils.js'\nimport AbortControllerMixin from './AbortControllerMixin.js'\n\nexport default {\n\tname: 'FetchSharedAlbumsMixin',\n\n\tdata() {\n\t\treturn {\n\t\t\terrorFetchingAlbums: null,\n\t\t\tloadingAlbums: false,\n\t\t}\n\t},\n\n\tmixins: [\n\t\tAbortControllerMixin,\n\t],\n\n\tasync beforeMount() {\n\t\tthis.fetchAlbums()\n\t},\n\n\tcomputed: {\n\t\t...mapGetters([\n\t\t\t'sharedAlbums',\n\t\t]),\n\t},\n\n\tmethods: {\n\t\tasync fetchAlbums() {\n\t\t\tif (this.loadingAlbums) {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\ttry {\n\t\t\t\tthis.loadingAlbums = true\n\t\t\t\tthis.errorFetchingAlbums = null\n\n\t\t\t\tconst response = await client.getDirectoryContents(`/photos/${getCurrentUser()?.uid}/sharedalbums`, {\n\t\t\t\t\tdata: `\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t`,\n\t\t\t\t\tdetails: true,\n\t\t\t\t\tsignal: this.abortController.signal,\n\t\t\t\t})\n\n\t\t\t\tconst albums = response.data\n\t\t\t\t\t.filter(album => album.filename !== `/photos/${getCurrentUser()?.uid}/sharedalbums`)\n\t\t\t\t\t.map(album => genFileInfo(album))\n\t\t\t\t\t.map(album => {\n\t\t\t\t\t\talbum.collaborators = album.collaborators === '' ? [] : album.collaborators\n\n\t\t\t\t\t\tconst dateRange = JSON.parse(album.dateRange?.replace(/"/g, '\"') ?? '{}')\n\n\t\t\t\t\t\tif (dateRange.start === null) {\n\t\t\t\t\t\t\tdateRange.start = moment().unix()\n\t\t\t\t\t\t\tdateRange.end = moment().unix()\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tconst dateRangeFormated = {\n\t\t\t\t\t\t\tstartDate: moment.unix(dateRange.start).format('MMMM YYYY'),\n\t\t\t\t\t\t\tendDate: moment.unix(dateRange.end).format('MMMM YYYY'),\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (dateRangeFormated.startDate === dateRangeFormated.endDate) {\n\t\t\t\t\t\t\treturn { ...album, date: dateRangeFormated.startDate }\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn { ...album, date: this.t('photos', '{startDate} to {endDate}', dateRangeFormated) }\n\t\t\t\t\t\t}\n\t\t\t\t\t})\n\n\t\t\t\tthis.$store.dispatch('addSharedAlbums', { albums })\n\t\t\t\tlogger.debug(`[FetchSharedAlbumsMixin] Fetched ${albums.length} new files: `, albums)\n\t\t\t} catch (error) {\n\t\t\t\tif (error.response?.status === 404) {\n\t\t\t\t\tthis.errorFetchingAlbums = 404\n\t\t\t\t} else if (error.code === 'ERR_CANCELED') {\n\t\t\t\t\treturn\n\t\t\t\t} else {\n\t\t\t\t\tthis.errorFetchingAlbums = error\n\t\t\t\t}\n\t\t\t\tlogger.error(t('photos', 'Failed to fetch albums list.'), error)\n\t\t\t\tshowError(t('photos', 'Failed to fetch albums list.'))\n\t\t\t} finally {\n\t\t\t\tthis.loadingAlbums = false\n\t\t\t}\n\t\t},\n\t},\n}\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".album[data-v-f85bf7c8]{display:flex;flex-direction:column}.album__title[data-v-f85bf7c8]{width:100%}.album__name[data-v-f85bf7c8]{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.album__location[data-v-f85bf7c8]{margin-left:-4px;display:flex;color:var(--color-text-lighter)}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/views/SharedAlbumContent.vue\"],\"names\":[],\"mappings\":\"AA0SA,wBACC,YAAA,CACA,qBAAA,CAEA,+BACC,UAAA,CAGD,8BACC,eAAA,CACA,kBAAA,CACA,sBAAA,CAGD,kCACC,gBAAA,CACA,YAAA,CACA,+BAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.album {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\n\\t&__title {\\n\\t\\twidth: 100%;\\n\\t}\\n\\n\\t&__name {\\n\\t\\toverflow: hidden;\\n\\t\\twhite-space: nowrap;\\n\\t\\ttext-overflow: ellipsis;\\n\\t}\\n\\n\\t&__location {\\n\\t\\tmargin-left: -4px;\\n\\t\\tdisplay: flex;\\n\\t\\tcolor: var(--color-text-lighter);\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./AlertCircle.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./AlertCircle.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AlertCircle.vue?vue&type=template&id=2a2453f8&\"\nimport script from \"./AlertCircle.vue?vue&type=script&lang=js&\"\nexport * from \"./AlertCircle.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon alert-circle-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M13,13H11V7H13M13,17H11V15H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Delete.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Delete.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Delete.vue?vue&type=template&id=458c7ecb&\"\nimport script from \"./Delete.vue?vue&type=script&lang=js&\"\nexport * from \"./Delete.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon delete-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M19,4H15.5L14.5,3H9.5L8.5,4H5V6H19M6,19A2,2 0 0,0 8,21H16A2,2 0 0,0 18,19V7H6V19Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Download.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Download.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Download.vue?vue&type=template&id=67aea606&\"\nimport script from \"./Download.vue?vue&type=script&lang=js&\"\nexport * from \"./Download.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon download-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M5,20H19V18H5M19,9H15V3H9V9H5L12,16L19,9Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./DownloadMultiple.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./DownloadMultiple.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./DownloadMultiple.vue?vue&type=template&id=63c2fc60&\"\nimport script from \"./DownloadMultiple.vue?vue&type=script&lang=js&\"\nexport * from \"./DownloadMultiple.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon download-multiple-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M9,1V7H5L12,14L19,7H15V1H9M5,16V18H19V16H5M5,20V22H19V20H5Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ImagePlus.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ImagePlus.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ImagePlus.vue?vue&type=template&id=6b6ee9f3&\"\nimport script from \"./ImagePlus.vue?vue&type=script&lang=js&\"\nexport * from \"./ImagePlus.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon image-plus-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M18 15V18H15V20H18V23H20V20H23V18H20V15H18M13.3 21H5C3.9 21 3 20.1 3 19V5C3 3.9 3.9 3 5 3H19C20.1 3 21 3.9 21 5V13.3C20.4 13.1 19.7 13 19 13C17.9 13 16.8 13.3 15.9 13.9L14.5 12L11 16.5L8.5 13.5L5 18H13.1C13 18.3 13 18.7 13 19C13 19.7 13.1 20.4 13.3 21Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Plus.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Plus.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Plus.vue?vue&type=template&id=968bec46&\"\nimport script from \"./Plus.vue?vue&type=script&lang=js&\"\nexport * from \"./Plus.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon plus-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Upload.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Upload.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Upload.vue?vue&type=template&id=61d1920d&\"\nimport script from \"./Upload.vue?vue&type=script&lang=js&\"\nexport * from \"./Upload.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon upload-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M9,16V10H5L12,3L19,10H15V16H9M5,20V18H19V20H5Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(true)?_c('CollectionContent',{ref:\"collectionContent\",attrs:{\"collection\":_vm.album,\"collection-file-ids\":_vm.albumFileIds,\"semaphore\":_vm.semaphore,\"loading\":_vm.loadingAlbums || _vm.loadingFiles,\"error\":_vm.errorFetchingAlbums || _vm.errorFetchingFiles},scopedSlots:_vm._u([{key:\"header\",fn:function(ref){\nvar selectedFileIds = ref.selectedFileIds;\nreturn _c('HeaderNavigation',{key:\"navigation\",attrs:{\"loading\":_vm.loadingFiles,\"params\":{ albumName: _vm.albumName },\"path\":'/' + _vm.albumName,\"title\":_vm.albumName},on:{\"refresh\":_vm.fetchAlbumContent}},[(_vm.album.location !== '')?_c('div',{staticClass:\"album__location\"},[_c('MapMarker'),_vm._v(_vm._s(_vm.album.location)+\"\\n\\t\\t\\t\")],1):_vm._e(),_vm._v(\" \"),(_vm.album !== undefined)?_c('template',{slot:\"right\"},[(_vm.album.nbItems !== 0)?_c('NcButton',{attrs:{\"type\":\"tertiary\",\"aria-label\":_vm.t('photos', 'Add photos to this album')},on:{\"click\":function($event){_vm.showAddPhotosModal = true}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Plus')]},proxy:true}],null,true)}):_vm._e(),_vm._v(\" \"),_c('NcActions',{attrs:{\"aria-label\":_vm.t('photos', 'Open actions menu')}},[(_vm.albumFileIds.length > 0)?_c('ActionDownload',{attrs:{\"selected-file-ids\":_vm.albumFileIds,\"title\":_vm.t('photos', 'Download all files in album')}},[_c('DownloadMultiple',{attrs:{\"slot\":\"icon\"},slot:\"icon\"})],1):_vm._e(),_vm._v(\" \"),_c('NcActionButton',{attrs:{\"close-after-click\":true},on:{\"click\":_vm.handleDeleteAlbum}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('photos', 'Delete album'))+\"\\n\\t\\t\\t\\t\\t\\t\"),_c('Delete',{attrs:{\"slot\":\"icon\"},slot:\"icon\"})],1),_vm._v(\" \"),(selectedFileIds.length > 0)?[_c('NcActionSeparator'),_vm._v(\" \"),_c('ActionDownload',{attrs:{\"selected-file-ids\":selectedFileIds,\"title\":_vm.t('photos', 'Download selected files')}},[_c('Download',{attrs:{\"slot\":\"icon\"},slot:\"icon\"})],1),_vm._v(\" \"),_c('NcActionButton',{attrs:{\"close-after-click\":true},on:{\"click\":function($event){return _vm.handleRemoveFilesFromAlbum(selectedFileIds)}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('photos', 'Remove selection from album'))+\"\\n\\t\\t\\t\\t\\t\\t\\t\"),_c('Close',{attrs:{\"slot\":\"icon\"},slot:\"icon\"})],1)]:_vm._e()],2)],1):_vm._e()],2)}}],null,false,2064107933)},[_vm._v(\" \"),_c('NcEmptyContent',{staticClass:\"album__empty\",attrs:{\"slot\":\"empty-content\",\"title\":_vm.t('photos', 'This album doesn\\'t have any photos or videos yet!')},slot:\"empty-content\"},[_c('ImagePlus',{attrs:{\"slot\":\"icon\"},slot:\"icon\"}),_vm._v(\" \"),_c('NcButton',{attrs:{\"slot\":\"action\",\"type\":\"primary\",\"aria-label\":_vm.t('photos', 'Add photos to this album')},on:{\"click\":function($event){_vm.showAddPhotosModal = true}},slot:\"action\"},[_c('Plus',{attrs:{\"slot\":\"icon\"},slot:\"icon\"}),_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('photos', \"Add\"))+\"\\n\\t\\t\\t\")],1)],1)],1):_vm._e(),_vm._v(\" \"),(_vm.showAddPhotosModal)?_c('NcModal',{attrs:{\"size\":\"large\",\"title\":_vm.t('photos', 'Add photos to the album')},on:{\"close\":function($event){_vm.showAddPhotosModal = false}}},[_c('FilesPicker',{attrs:{\"destination\":_vm.album.basename,\"blacklist-ids\":_vm.albumFileIds,\"loading\":_vm.loadingAddFilesToAlbum},on:{\"files-picked\":_vm.handleFilesPicked}})],1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharedAlbumContent.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!./SharedAlbumContent.vue?vue&type=script&lang=js&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./SharedAlbumContent.vue?vue&type=style&index=0&id=f85bf7c8&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./SharedAlbumContent.vue?vue&type=style&index=0&id=f85bf7c8&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SharedAlbumContent.vue?vue&type=template&id=f85bf7c8&scoped=true&\"\nimport script from \"./SharedAlbumContent.vue?vue&type=script&lang=js&\"\nexport * from \"./SharedAlbumContent.vue?vue&type=script&lang=js&\"\nimport style0 from \"./SharedAlbumContent.vue?vue&type=style&index=0&id=f85bf7c8&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 \"f85bf7c8\",\n null\n \n)\n\nexport default component.exports"],"names":["name","data","errorFetchingAlbums","loadingAlbums","mixins","AbortControllerMixin","beforeMount","fetchAlbums","computed","mapGetters","methods","client","getCurrentUser","uid","details","signal","abortController","response","albums","filter","album","filename","map","genFileInfo","collaborators","dateRange","JSON","parse","replace","start","moment","unix","end","dateRangeFormated","startDate","format","endDate","date","t","$store","dispatch","logger","length","status","code","showError","___CSS_LOADER_EXPORT___","push","module","id","emits","props","title","type","String","fillColor","default","size","Number","_vm","this","_h","$createElement","_c","_self","_b","staticClass","attrs","on","$event","$emit","$attrs","_v","_s","_e","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","ref","albumFileIds","semaphore","loadingFiles","errorFetchingFiles","scopedSlots","_u","key","fn","selectedFileIds","albumName","fetchAlbumContent","location","undefined","slot","nbItems","showAddPhotosModal","proxy","handleDeleteAlbum","handleRemoveFilesFromAlbum","basename","loadingAddFilesToAlbum","handleFilesPicked"],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-node_modules_vue-material-design-icons_AlertCircle_vue-node_modules_vue-material-design-icons-8b78a5.js b/js/photos-node_modules_vue-material-design-icons_AlertCircle_vue-node_modules_vue-material-design-icons-8b78a5.js deleted file mode 100644 index 0fca9c947..000000000 --- a/js/photos-node_modules_vue-material-design-icons_AlertCircle_vue-node_modules_vue-material-design-icons-8b78a5.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkphotos=self.webpackChunkphotos||[]).push([["node_modules_vue-material-design-icons_AlertCircle_vue-node_modules_vue-material-design-icons-8b78a5"],{36636:(t,e,n)=>{n.d(e,{Z:()=>o});var i=n(87537),a=n.n(i),r=n(23645),l=n.n(r)()(a());l.push([t.id,".file-picker[data-v-a0f8650e]{display:flex;flex-direction:column;padding:12px}.file-picker__content[data-v-a0f8650e]{display:flex;align-items:flex-start;flex-grow:1;height:500px}.file-picker__navigation[data-v-a0f8650e]{flex-basis:200px;overflow:scroll;margin-right:8px;padding-right:8px;height:100%}@media only screen and (max-width: 1200px){.file-picker__navigation[data-v-a0f8650e]{flex-basis:80px}}.file-picker__navigation--placeholder[data-v-a0f8650e]{background:var(--color-primary-light);border-radius:var(--border-radius-large)}.file-picker__navigation__month[data-v-a0f8650e]{font-weight:bold;font-size:16px;border-radius:var(--border-radius-pill);padding:8px 16px;margin:4px 0;cursor:pointer}@media only screen and (max-width: 1200px){.file-picker__navigation__month[data-v-a0f8650e]{text-align:center}}.file-picker__navigation__month[data-v-a0f8650e]:hover{background:var(--color-background-dark)}.file-picker__navigation__month.selected[data-v-a0f8650e]{background:var(--color-primary-element-lighter)}.file-picker__file-list[data-v-a0f8650e]{flex-grow:1;min-width:0;height:100%}.file-picker__file-list--placeholder[data-v-a0f8650e]{background:var(--color-primary-light);border-radius:var(--border-radius-large)}.file-picker__file-list .section-header[data-v-a0f8650e]{font-weight:bold;font-size:20px;padding:8px 0 4px 0}.file-picker__file-list[data-v-a0f8650e] .empty-content{margin-top:0;height:100%;display:flex;flex-direction:column;justify-content:center}.file-picker__actions[data-v-a0f8650e]{display:flex;justify-content:space-between;justify-items:center;padding-top:16px}","",{version:3,sources:["webpack://./src/components/FilesPicker.vue"],names:[],mappings:"AA+KA,8BACC,YAAA,CACA,qBAAA,CACA,YAAA,CAEA,uCACC,YAAA,CACA,sBAAA,CACA,WAAA,CACA,YAAA,CAGD,0CACC,gBAAA,CACA,eAAA,CACA,gBAAA,CACA,iBAAA,CACA,WAAA,CAEA,2CAPD,0CAQE,eAAA,CAAA,CAGD,uDACC,qCAAA,CACA,wCAAA,CAGD,iDACC,gBAAA,CACA,cAAA,CACA,uCAAA,CACA,gBAAA,CACA,YAAA,CACA,cAAA,CAEA,2CARD,iDASE,iBAAA,CAAA,CAGD,uDACC,uCAAA,CAGD,0DACC,+CAAA,CAKH,yCACC,WAAA,CACA,WAAA,CACA,WAAA,CAEA,sDACC,qCAAA,CACA,wCAAA,CAGD,yDACC,gBAAA,CACA,cAAA,CACA,mBAAA,CAGD,yDACC,YAAA,CACA,WAAA,CACA,YAAA,CACA,qBAAA,CACA,sBAAA,CAIF,uCACC,YAAA,CACA,6BAAA,CACA,oBAAA,CACA,gBAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.file-picker {\n\tdisplay: flex;\n\tflex-direction: column;\n\tpadding: 12px;\n\n\t&__content {\n\t\tdisplay: flex;\n\t\talign-items: flex-start;\n\t\tflex-grow: 1;\n\t\theight: 500px;\n\t}\n\n\t&__navigation {\n\t\tflex-basis: 200px;\n\t\toverflow: scroll;\n\t\tmargin-right: 8px;\n\t\tpadding-right: 8px;\n\t\theight: 100%;\n\n\t\t@media only screen and (max-width: 1200px) {\n\t\t\tflex-basis: 80px;\n\t\t}\n\n\t\t&--placeholder {\n\t\t\tbackground: var(--color-primary-light);\n\t\t\tborder-radius: var(--border-radius-large);\n\t\t}\n\n\t\t&__month {\n\t\t\tfont-weight: bold;\n\t\t\tfont-size: 16px;\n\t\t\tborder-radius: var(--border-radius-pill);\n\t\t\tpadding: 8px 16px;\n\t\t\tmargin: 4px 0;\n\t\t\tcursor: pointer;\n\n\t\t\t@media only screen and (max-width: 1200px) {\n\t\t\t\ttext-align: center;\n\t\t\t}\n\n\t\t\t&:hover {\n\t\t\t\tbackground: var(--color-background-dark);\n\t\t\t}\n\n\t\t\t&.selected {\n\t\t\t\tbackground: var(--color-primary-element-lighter);\n\t\t\t}\n\t\t}\n\t}\n\n\t&__file-list {\n\t\tflex-grow: 1;\n\t\tmin-width: 0;\n\t\theight: 100%;\n\n\t\t&--placeholder {\n\t\t\tbackground: var(--color-primary-light);\n\t\t\tborder-radius: var(--border-radius-large);\n\t\t}\n\n\t\t.section-header {\n\t\t\tfont-weight: bold;\n\t\t\tfont-size: 20px;\n\t\t\tpadding: 8px 0 4px 0;\n\t\t}\n\n\t\t::v-deep .empty-content {\n\t\t\tmargin-top: 0;\n\t\t\theight: 100%;\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t\tjustify-content: center;\n\t\t}\n\t}\n\n\t&__actions {\n\t\tdisplay: flex;\n\t\tjustify-content: space-between;\n\t\tjustify-items: center;\n\t\tpadding-top: 16px;\n\t}\n}\n'],sourceRoot:""}]);const o=l},24777:(t,e,n)=>{n.d(e,{Z:()=>a});const i={name:"AlertCircleIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const a=(0,n(51900).Z)(i,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("span",t._b({staticClass:"material-design-icon alert-circle-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[n("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[n("path",{attrs:{d:"M13,13H11V7H13M13,17H11V15H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z"}},[t.title?n("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports},54287:(t,e,n)=>{n.d(e,{Z:()=>a});const i={name:"DownloadMultipleIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const a=(0,n(51900).Z)(i,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("span",t._b({staticClass:"material-design-icon download-multiple-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[n("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[n("path",{attrs:{d:"M9,1V7H5L12,14L19,7H15V1H9M5,16V18H19V16H5M5,20V22H19V20H5Z"}},[t.title?n("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports},61679:(t,e,n)=>{n.d(e,{Z:()=>a});const i={name:"ImagePlusIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const a=(0,n(51900).Z)(i,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("span",t._b({staticClass:"material-design-icon image-plus-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[n("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[n("path",{attrs:{d:"M18 15V18H15V20H18V23H20V20H23V18H20V15H18M13.3 21H5C3.9 21 3 20.1 3 19V5C3 3.9 3.9 3 5 3H19C20.1 3 21 3.9 21 5V13.3C20.4 13.1 19.7 13 19 13C17.9 13 16.8 13.3 15.9 13.9L14.5 12L11 16.5L8.5 13.5L5 18H13.1C13 18.3 13 18.7 13 19C13 19.7 13.1 20.4 13.3 21Z"}},[t.title?n("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports},46128:(t,e,n)=>{n.d(e,{Z:()=>O});var i=n(20629),a=n(61679);const r={name:"UploadIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var l=n(51900);const o=(0,l.Z)(r,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("span",t._b({staticClass:"material-design-icon upload-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[n("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[n("path",{attrs:{d:"M9,16V10H5L12,3L19,10H15V16H9M5,20V18H19V20H5Z"}},[t.title?n("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports;var s=n(80351),c=n.n(s),f=n(33476),d=n(66951),p=n(98171),A=n(47640),g=n(58828),h=n(28391);function u(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,i)}return n}function m(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}const C={name:"FilesPicker",components:{ImagePlus:a.Z,Upload:o,NcButton:f.NcButton,NcLoadingIcon:f.NcLoadingIcon,FilesListViewer:A.Z,File:g.Z},filters:{dateMonthAndYear:function(t){return c()(t,"YYYYMM").format("MMMM YYYY")}},mixins:[d.Z,h.Z,p.Z],props:{destination:{type:String,required:!0},blacklistIds:{type:Array,default:function(){return[]}},loading:{type:Boolean,default:!1}},data:function(){return{targetMonth:null}},computed:function(t){for(var e=1;e{t.exports='folder'}}]); -//# sourceMappingURL=photos-node_modules_vue-material-design-icons_AlertCircle_vue-node_modules_vue-material-design-icons-8b78a5.js.map?v=20f11f791999759bb413 \ No newline at end of file diff --git a/js/photos-node_modules_vue-material-design-icons_AlertCircle_vue-node_modules_vue-material-design-icons-8b78a5.js.map b/js/photos-node_modules_vue-material-design-icons_AlertCircle_vue-node_modules_vue-material-design-icons-8b78a5.js.map deleted file mode 100644 index 015b6c44d..000000000 --- a/js/photos-node_modules_vue-material-design-icons_AlertCircle_vue-node_modules_vue-material-design-icons-8b78a5.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-node_modules_vue-material-design-icons_AlertCircle_vue-node_modules_vue-material-design-icons-8b78a5.js?v=20f11f791999759bb413","mappings":"uPAGIA,E,MAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,4jDAA6jD,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,8CAA8C,MAAQ,GAAG,SAAW,6hBAA6hB,eAAiB,CAAC,49EAA4iF,WAAa,MAE7yJ,S,mCCaA,MCpB+G,EDoB/G,CACEC,KAAM,kBACNC,MAAO,CAAC,SACRC,MAAO,CACLC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,E,SAAA,GACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,yCAAyCC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,8GAA8G,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GACnoB,IDUpB,EACA,KACA,KACA,MAI8B,O,mCEEhC,MCpBoH,EDoBpH,CACEzB,KAAM,uBACNC,MAAO,CAAC,SACRC,MAAO,CACLC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,E,SAAA,GACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,8CAA8CC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,gEAAgE,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GAC1lB,IDUpB,EACA,KACA,KACA,MAI8B,O,mCEEhC,MCpB6G,EDoB7G,CACEzB,KAAM,gBACNC,MAAO,CAAC,SACRC,MAAO,CACLC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,E,SAAA,GACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,uCAAuCC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,iQAAiQ,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GACpxB,IDUpB,EACA,KACA,KACA,MAI8B,O,mCElBhC,I,sBCoBA,MCpB0G,EDoB1G,CACEzB,KAAM,aACNC,MAAO,CAAC,SACRC,MAAO,CACLC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,M,eEff,SAXgB,OACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,mCAAmCC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,mDAAmD,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GAClkB,IDUpB,EACA,KACA,KACA,MAI8B,Q,gbE4EhC,MC9F4K,ED8F5K,CACA,mBAEA,YACA,cACA,SACA,oBACA,8BACA,oBACA,UAGA,SAIA,iBAJA,SAIA,GACA,0CACA,GAGA,QACA,IACA,IACA,KAGA,OAEA,aACA,YACA,aAIA,cACA,WACA,8BAIA,SACA,aACA,aAIA,KA/CA,WAgDA,OACA,iBAEA,EAEA,S,+VAAA,KACA,SACA,WAIA,OACA,WADA,SACA,GACA,0BACA,sBAEA,GAGA,SACA,SADA,WAEA,wCACA,EAEA,gBALA,WAMA,+CACA,I,qIE7JIC,EAAU,CAAC,EAEfA,EAAQC,kBAAoB,IAC5BD,EAAQE,cAAgB,IAElBF,EAAQG,OAAS,SAAc,KAAM,QAE3CH,EAAQI,OAAS,IACjBJ,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKJ,KAAW,YAAiB,WCPlD,SAXgB,OACd,GRTW,WAAa,IAAIhB,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACG,YAAY,eAAe,CAACH,EAAG,MAAM,CAACG,YAAY,wBAAwB,CAACH,EAAG,MAAM,CAACG,YAAY,0BAA0Be,MAAM,CAAC,uCAAkE,IAA1BtB,EAAIuB,WAAWC,SAAexB,EAAIyB,GAAIzB,EAAc,YAAE,SAAS0B,GAAO,OAAOtB,EAAG,MAAM,CAACuB,IAAID,EAAMnB,YAAY,iCAAiCe,MAAM,CAACM,SAAU5B,EAAI6B,cAAgBH,GAAOjB,GAAG,CAAC,MAAQ,SAASC,GAAQV,EAAI6B,YAAcH,CAAK,IAAI,CAAC1B,EAAIa,GAAG,aAAab,EAAIc,GAAGd,EAAI8B,GAAG,mBAAP9B,CAA2B0B,IAAQ,aAAa,IAAG,GAAG1B,EAAIa,GAAG,KAAKT,EAAG,kBAAkB,CAACG,YAAY,yBAAyBe,MAAM,CAAC,sCAAiE,IAA1BtB,EAAIuB,WAAWC,QAAchB,MAAM,CAAC,sBAAsBR,EAAI+B,eAAe,SAAW/B,EAAIuB,WAAW,QAAUvB,EAAIgC,aAAa,cAAc,IAAI,wBAAwB,GAAG,gBAAgBhC,EAAIiC,EAAE,SAAU,qDAAsD,oBAAoBjC,EAAI6B,aAAapB,GAAG,CAAC,eAAeT,EAAIkC,UAAUC,YAAYnC,EAAIoC,GAAG,CAAC,CAACT,IAAI,UAAUU,GAAG,SAASC,GACvkC,IAAIC,EAAOD,EAAIC,KACXC,EAASF,EAAIE,OACbC,EAAaH,EAAIG,WACrB,MAAO,CAAEF,EAAkB,cAAEnC,EAAG,KAAK,CAACG,YAAY,iBAAiBmC,MAAM,CAAGF,OAASA,EAAS,MAAQhC,MAAM,CAAC,GAAM,8BAAiC+B,EAAO,KAAK,CAACvC,EAAIa,GAAG,eAAeb,EAAIc,GAAGd,EAAI8B,GAAG,mBAAP9B,CAA2BuC,EAAKlD,KAAK,gBAAgBe,EAAG,OAAO,CAACI,MAAM,CAAC,KAAOR,EAAI2C,MAAMJ,EAAKlD,IAAI,mBAAkB,EAAK,UAAsC,IAA3BW,EAAI4C,UAAUL,EAAKlD,IAAa,WAAaoD,EAAW,UAAYzC,EAAI6C,WAAWpC,GAAG,CAAC,iBAAiBT,EAAI8C,sBAAsB,QAAQ,GAAG9C,EAAIa,GAAG,KAAKT,EAAG,MAAM,CAACG,YAAY,wBAAwB,CAACH,EAAG,WAAW,CAACI,MAAM,CAAC,KAAO,WAAW,SAAWR,EAAI+C,SAASZ,YAAYnC,EAAIoC,GAAG,CAAC,CAACT,IAAI,OAAOU,GAAG,WAAW,MAAO,CAACjC,EAAG,UAAU,EAAE4C,OAAM,MAAS,CAAChD,EAAIa,GAAG,WAAWb,EAAIc,GAAGd,EAAIiC,EAAE,SAAU,yBAAyB,YAAYjC,EAAIa,GAAG,KAAKT,EAAG,WAAW,CAACI,MAAM,CAAC,KAAO,UAAU,SAAWR,EAAI+C,SAA0C,IAA/B/C,EAAIiD,gBAAgBzB,QAAcf,GAAG,CAAC,MAAQT,EAAIkD,iBAAiBf,YAAYnC,EAAIoC,GAAG,CAAC,CAACT,IAAI,OAAOU,GAAG,WAAW,MAAO,CAAGrC,EAAI+C,QAAyB/C,EAAIe,KAApBX,EAAG,aAAsBJ,EAAIa,GAAG,KAAMb,EAAW,QAAEI,EAAG,iBAAiBJ,EAAIe,KAAK,EAAEiC,OAAM,MAAS,CAAChD,EAAIa,GAAG,WAAWb,EAAIc,GAAGd,EAAIiC,EAAE,SAAU,uBAAwB,CAAEkB,YAAanD,EAAImD,eAAgB,aAAa,IAAI,GACloC,IQOpB,EACA,KACA,WACA,MAI8B,O","sources":["webpack:///photos/src/components/FilesPicker.vue?vue&type=style&index=0&id=a0f8650e&lang=scss&scoped=true&","webpack:///photos/node_modules/vue-material-design-icons/AlertCircle.vue","webpack:///photos/node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/AlertCircle.vue?489a","webpack:///photos/node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=template&id=2a2453f8&","webpack:///photos/node_modules/vue-material-design-icons/DownloadMultiple.vue","webpack:///photos/node_modules/vue-material-design-icons/DownloadMultiple.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/DownloadMultiple.vue?2e77","webpack:///photos/node_modules/vue-material-design-icons/DownloadMultiple.vue?vue&type=template&id=63c2fc60&","webpack:///photos/node_modules/vue-material-design-icons/ImagePlus.vue","webpack:///photos/node_modules/vue-material-design-icons/ImagePlus.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/ImagePlus.vue?8b12","webpack:///photos/node_modules/vue-material-design-icons/ImagePlus.vue?vue&type=template&id=6b6ee9f3&","webpack:///photos/src/components/FilesPicker.vue?vue&type=template&id=a0f8650e&scoped=true&","webpack:///photos/node_modules/vue-material-design-icons/Upload.vue","webpack:///photos/node_modules/vue-material-design-icons/Upload.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/Upload.vue?19d8","webpack:///photos/node_modules/vue-material-design-icons/Upload.vue?vue&type=template&id=61d1920d&","webpack:///photos/src/components/FilesPicker.vue","webpack:///photos/src/components/FilesPicker.vue?vue&type=script&lang=js&","webpack://photos/./src/components/FilesPicker.vue?2e64","webpack://photos/./src/components/FilesPicker.vue?2782"],"sourcesContent":["// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".file-picker[data-v-a0f8650e]{display:flex;flex-direction:column;padding:12px}.file-picker__content[data-v-a0f8650e]{display:flex;align-items:flex-start;flex-grow:1;height:500px}.file-picker__navigation[data-v-a0f8650e]{flex-basis:200px;overflow:scroll;margin-right:8px;padding-right:8px;height:100%}@media only screen and (max-width: 1200px){.file-picker__navigation[data-v-a0f8650e]{flex-basis:80px}}.file-picker__navigation--placeholder[data-v-a0f8650e]{background:var(--color-primary-light);border-radius:var(--border-radius-large)}.file-picker__navigation__month[data-v-a0f8650e]{font-weight:bold;font-size:16px;border-radius:var(--border-radius-pill);padding:8px 16px;margin:4px 0;cursor:pointer}@media only screen and (max-width: 1200px){.file-picker__navigation__month[data-v-a0f8650e]{text-align:center}}.file-picker__navigation__month[data-v-a0f8650e]:hover{background:var(--color-background-dark)}.file-picker__navigation__month.selected[data-v-a0f8650e]{background:var(--color-primary-element-lighter)}.file-picker__file-list[data-v-a0f8650e]{flex-grow:1;min-width:0;height:100%}.file-picker__file-list--placeholder[data-v-a0f8650e]{background:var(--color-primary-light);border-radius:var(--border-radius-large)}.file-picker__file-list .section-header[data-v-a0f8650e]{font-weight:bold;font-size:20px;padding:8px 0 4px 0}.file-picker__file-list[data-v-a0f8650e] .empty-content{margin-top:0;height:100%;display:flex;flex-direction:column;justify-content:center}.file-picker__actions[data-v-a0f8650e]{display:flex;justify-content:space-between;justify-items:center;padding-top:16px}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/FilesPicker.vue\"],\"names\":[],\"mappings\":\"AA+KA,8BACC,YAAA,CACA,qBAAA,CACA,YAAA,CAEA,uCACC,YAAA,CACA,sBAAA,CACA,WAAA,CACA,YAAA,CAGD,0CACC,gBAAA,CACA,eAAA,CACA,gBAAA,CACA,iBAAA,CACA,WAAA,CAEA,2CAPD,0CAQE,eAAA,CAAA,CAGD,uDACC,qCAAA,CACA,wCAAA,CAGD,iDACC,gBAAA,CACA,cAAA,CACA,uCAAA,CACA,gBAAA,CACA,YAAA,CACA,cAAA,CAEA,2CARD,iDASE,iBAAA,CAAA,CAGD,uDACC,uCAAA,CAGD,0DACC,+CAAA,CAKH,yCACC,WAAA,CACA,WAAA,CACA,WAAA,CAEA,sDACC,qCAAA,CACA,wCAAA,CAGD,yDACC,gBAAA,CACA,cAAA,CACA,mBAAA,CAGD,yDACC,YAAA,CACA,WAAA,CACA,YAAA,CACA,qBAAA,CACA,sBAAA,CAIF,uCACC,YAAA,CACA,6BAAA,CACA,oBAAA,CACA,gBAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.file-picker {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\tpadding: 12px;\\n\\n\\t&__content {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: flex-start;\\n\\t\\tflex-grow: 1;\\n\\t\\theight: 500px;\\n\\t}\\n\\n\\t&__navigation {\\n\\t\\tflex-basis: 200px;\\n\\t\\toverflow: scroll;\\n\\t\\tmargin-right: 8px;\\n\\t\\tpadding-right: 8px;\\n\\t\\theight: 100%;\\n\\n\\t\\t@media only screen and (max-width: 1200px) {\\n\\t\\t\\tflex-basis: 80px;\\n\\t\\t}\\n\\n\\t\\t&--placeholder {\\n\\t\\t\\tbackground: var(--color-primary-light);\\n\\t\\t\\tborder-radius: var(--border-radius-large);\\n\\t\\t}\\n\\n\\t\\t&__month {\\n\\t\\t\\tfont-weight: bold;\\n\\t\\t\\tfont-size: 16px;\\n\\t\\t\\tborder-radius: var(--border-radius-pill);\\n\\t\\t\\tpadding: 8px 16px;\\n\\t\\t\\tmargin: 4px 0;\\n\\t\\t\\tcursor: pointer;\\n\\n\\t\\t\\t@media only screen and (max-width: 1200px) {\\n\\t\\t\\t\\ttext-align: center;\\n\\t\\t\\t}\\n\\n\\t\\t\\t&:hover {\\n\\t\\t\\t\\tbackground: var(--color-background-dark);\\n\\t\\t\\t}\\n\\n\\t\\t\\t&.selected {\\n\\t\\t\\t\\tbackground: var(--color-primary-element-lighter);\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t&__file-list {\\n\\t\\tflex-grow: 1;\\n\\t\\tmin-width: 0;\\n\\t\\theight: 100%;\\n\\n\\t\\t&--placeholder {\\n\\t\\t\\tbackground: var(--color-primary-light);\\n\\t\\t\\tborder-radius: var(--border-radius-large);\\n\\t\\t}\\n\\n\\t\\t.section-header {\\n\\t\\t\\tfont-weight: bold;\\n\\t\\t\\tfont-size: 20px;\\n\\t\\t\\tpadding: 8px 0 4px 0;\\n\\t\\t}\\n\\n\\t\\t::v-deep .empty-content {\\n\\t\\t\\tmargin-top: 0;\\n\\t\\t\\theight: 100%;\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tflex-direction: column;\\n\\t\\t\\tjustify-content: center;\\n\\t\\t}\\n\\t}\\n\\n\\t&__actions {\\n\\t\\tdisplay: flex;\\n\\t\\tjustify-content: space-between;\\n\\t\\tjustify-items: center;\\n\\t\\tpadding-top: 16px;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./AlertCircle.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./AlertCircle.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AlertCircle.vue?vue&type=template&id=2a2453f8&\"\nimport script from \"./AlertCircle.vue?vue&type=script&lang=js&\"\nexport * from \"./AlertCircle.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon alert-circle-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M13,13H11V7H13M13,17H11V15H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./DownloadMultiple.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./DownloadMultiple.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./DownloadMultiple.vue?vue&type=template&id=63c2fc60&\"\nimport script from \"./DownloadMultiple.vue?vue&type=script&lang=js&\"\nexport * from \"./DownloadMultiple.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon download-multiple-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M9,1V7H5L12,14L19,7H15V1H9M5,16V18H19V16H5M5,20V22H19V20H5Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ImagePlus.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ImagePlus.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ImagePlus.vue?vue&type=template&id=6b6ee9f3&\"\nimport script from \"./ImagePlus.vue?vue&type=script&lang=js&\"\nexport * from \"./ImagePlus.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon image-plus-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M18 15V18H15V20H18V23H20V20H23V18H20V15H18M13.3 21H5C3.9 21 3 20.1 3 19V5C3 3.9 3.9 3 5 3H19C20.1 3 21 3.9 21 5V13.3C20.4 13.1 19.7 13 19 13C17.9 13 16.8 13.3 15.9 13.9L14.5 12L11 16.5L8.5 13.5L5 18H13.1C13 18.3 13 18.7 13 19C13 19.7 13.1 20.4 13.3 21Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"file-picker\"},[_c('div',{staticClass:\"file-picker__content\"},[_c('div',{staticClass:\"file-picker__navigation\",class:{'file-picker__navigation--placeholder': _vm.monthsList.length === 0}},_vm._l((_vm.monthsList),function(month){return _c('div',{key:month,staticClass:\"file-picker__navigation__month\",class:{selected: _vm.targetMonth === month},on:{\"click\":function($event){_vm.targetMonth = month}}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm._f(\"dateMonthAndYear\")(month))+\"\\n\\t\\t\\t\")])}),0),_vm._v(\" \"),_c('FilesListViewer',{staticClass:\"file-picker__file-list\",class:{'file-picker__file-list--placeholder': _vm.monthsList.length === 0},attrs:{\"file-ids-by-section\":_vm.fileIdsByMonth,\"sections\":_vm.monthsList,\"loading\":_vm.loadingFiles,\"base-height\":100,\"section-header-height\":50,\"empty-message\":_vm.t('photos', 'This album doesn\\'t have any photos or videos yet!'),\"scroll-to-section\":_vm.targetMonth},on:{\"need-content\":_vm.getFiles},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar file = ref.file;\nvar height = ref.height;\nvar visibility = ref.visibility;\nreturn [(file.sectionHeader)?_c('h3',{staticClass:\"section-header\",style:({ height: (height + \"px\")}),attrs:{\"id\":(\"file-picker-section-header-\" + (file.id))}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm._f(\"dateMonthAndYear\")(file.id))+\"\\n\\t\\t\\t\\t\")]):_c('File',{attrs:{\"file\":_vm.files[file.id],\"allow-selection\":true,\"selected\":_vm.selection[file.id] === true,\"visibility\":visibility,\"semaphore\":_vm.semaphore},on:{\"select-toggled\":_vm.onFileSelectToggle}})]}}])})],1),_vm._v(\" \"),_c('div',{staticClass:\"file-picker__actions\"},[_c('NcButton',{attrs:{\"type\":\"tertiary\",\"disabled\":_vm.loading},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Upload')]},proxy:true}])},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('photos', 'Upload from computer'))+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('NcButton',{attrs:{\"type\":\"primary\",\"disabled\":_vm.loading || _vm.selectedFileIds.length === 0},on:{\"click\":_vm.emitPickedEvent},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(!_vm.loading)?_c('ImagePlus'):_vm._e(),_vm._v(\" \"),(_vm.loading)?_c('NcLoadingIcon'):_vm._e()]},proxy:true}])},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('photos', 'Add to {destination}', { destination: _vm.destination }))+\"\\n\\t\\t\")])],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Upload.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Upload.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Upload.vue?vue&type=template&id=61d1920d&\"\nimport script from \"./Upload.vue?vue&type=script&lang=js&\"\nexport * from \"./Upload.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon upload-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M9,16V10H5L12,3L19,10H15V16H9M5,20V18H19V20H5Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesPicker.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!./FilesPicker.vue?vue&type=script&lang=js&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./FilesPicker.vue?vue&type=style&index=0&id=a0f8650e&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./FilesPicker.vue?vue&type=style&index=0&id=a0f8650e&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesPicker.vue?vue&type=template&id=a0f8650e&scoped=true&\"\nimport script from \"./FilesPicker.vue?vue&type=script&lang=js&\"\nexport * from \"./FilesPicker.vue?vue&type=script&lang=js&\"\nimport style0 from \"./FilesPicker.vue?vue&type=style&index=0&id=a0f8650e&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 \"a0f8650e\",\n null\n \n)\n\nexport default component.exports"],"names":["___CSS_LOADER_EXPORT___","push","module","id","name","emits","props","title","type","String","fillColor","default","size","Number","_vm","this","_h","$createElement","_c","_self","_b","staticClass","attrs","on","$event","$emit","$attrs","_v","_s","_e","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","class","monthsList","length","_l","month","key","selected","targetMonth","_f","fileIdsByMonth","loadingFiles","t","getFiles","scopedSlots","_u","fn","ref","file","height","visibility","style","files","selection","semaphore","onFileSelectToggle","loading","proxy","selectedFileIds","emitPickedEvent","destination"],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-node_modules_vue-material-design-icons_AlertCircle_vue-node_modules_vue-material-design-icons-ba67e6.js b/js/photos-node_modules_vue-material-design-icons_AlertCircle_vue-node_modules_vue-material-design-icons-ba67e6.js deleted file mode 100644 index c14a8059a..000000000 --- a/js/photos-node_modules_vue-material-design-icons_AlertCircle_vue-node_modules_vue-material-design-icons-ba67e6.js +++ /dev/null @@ -1,890 +0,0 @@ -"use strict"; -(self["webpackChunkphotos"] = self["webpackChunkphotos"] || []).push([["node_modules_vue-material-design-icons_AlertCircle_vue-node_modules_vue-material-design-icons-ba67e6"],{ - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/SharedAlbums.vue?vue&type=script&lang=js&": -/*!*****************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/SharedAlbums.vue?vue&type=script&lang=js& ***! - \*****************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var vue_material_design_icons_FolderMultipleImage__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue-material-design-icons/FolderMultipleImage */ "./node_modules/vue-material-design-icons/FolderMultipleImage.vue"); -/* harmony import */ var _nextcloud_router__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/router */ "./node_modules/@nextcloud/router/dist/index.js"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @nextcloud/vue */ "./node_modules/@nextcloud/vue/dist/ncvuecomponents.js"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _mixins_FetchSharedAlbumsMixin_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../mixins/FetchSharedAlbumsMixin.js */ "./src/mixins/FetchSharedAlbumsMixin.js"); -/* harmony import */ var _components_Collection_CollectionsList_vue__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../components/Collection/CollectionsList.vue */ "./src/components/Collection/CollectionsList.vue"); -/* harmony import */ var _components_Collection_CollectionCover_vue__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../components/Collection/CollectionCover.vue */ "./src/components/Collection/CollectionCover.vue"); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - - - - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'SharedAlbums', - components: { - FolderMultipleImage: vue_material_design_icons_FolderMultipleImage__WEBPACK_IMPORTED_MODULE_0__["default"], - NcEmptyContent: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_2__.NcEmptyContent, - CollectionsList: _components_Collection_CollectionsList_vue__WEBPACK_IMPORTED_MODULE_4__["default"], - CollectionCover: _components_Collection_CollectionCover_vue__WEBPACK_IMPORTED_MODULE_5__["default"] - }, - filters: { - /** - * @param {string} lastPhoto The album's last photos. - */ - coverUrl(lastPhoto) { - if (lastPhoto === -1) { - return ''; - } - - return (0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_1__.generateUrl)(`/apps/photos/api/v1/preview/${lastPhoto}?x=${512}&y=${512}`); - } - - }, - mixins: [_mixins_FetchSharedAlbumsMixin_js__WEBPACK_IMPORTED_MODULE_3__["default"]] -}); - -/***/ }), - -/***/ "./src/mixins/FetchSharedAlbumsMixin.js": -/*!**********************************************!*\ - !*** ./src/mixins/FetchSharedAlbumsMixin.js ***! - \**********************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! vuex */ "./node_modules/vuex/dist/vuex.esm.js"); -/* harmony import */ var _nextcloud_moment__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/moment */ "./node_modules/@nextcloud/moment/dist/index.js"); -/* harmony import */ var _nextcloud_moment__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_moment__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/dialogs */ "./node_modules/@nextcloud/dialogs/dist/index.es.js"); -/* harmony import */ var _nextcloud_auth__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @nextcloud/auth */ "./node_modules/@nextcloud/auth/dist/index.esm.js"); -/* harmony import */ var _services_DavClient_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../services/DavClient.js */ "./src/services/DavClient.js"); -/* harmony import */ var _services_logger_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../services/logger.js */ "./src/services/logger.js"); -/* harmony import */ var _utils_fileUtils_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../utils/fileUtils.js */ "./src/utils/fileUtils.js"); -/* harmony import */ var _AbortControllerMixin_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./AbortControllerMixin.js */ "./src/mixins/AbortControllerMixin.js"); -/** - * @copyright Copyright (c) 2022 Louis Chemineau - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ - - - - - - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'FetchSharedAlbumsMixin', - - data() { - return { - errorFetchingAlbums: null, - loadingAlbums: false - }; - }, - - mixins: [_AbortControllerMixin_js__WEBPACK_IMPORTED_MODULE_6__["default"]], - - async beforeMount() { - this.fetchAlbums(); - }, - - computed: { ...(0,vuex__WEBPACK_IMPORTED_MODULE_7__.mapGetters)(['sharedAlbums']) - }, - methods: { - async fetchAlbums() { - if (this.loadingAlbums) { - return; - } - - try { - this.loadingAlbums = true; - this.errorFetchingAlbums = null; - const response = await _services_DavClient_js__WEBPACK_IMPORTED_MODULE_3__["default"].getDirectoryContents(`/photos/${(0,_nextcloud_auth__WEBPACK_IMPORTED_MODULE_2__.getCurrentUser)()?.uid}/sharedalbums`, { - data: ` - - - - - - - - - - `, - details: true, - signal: this.abortController.signal - }); - const albums = response.data.filter(album => album.filename !== `/photos/${(0,_nextcloud_auth__WEBPACK_IMPORTED_MODULE_2__.getCurrentUser)()?.uid}/sharedalbums`).map(album => (0,_utils_fileUtils_js__WEBPACK_IMPORTED_MODULE_5__.genFileInfo)(album)).map(album => { - album.collaborators = album.collaborators === '' ? [] : album.collaborators; - const dateRange = JSON.parse(album.dateRange?.replace(/"/g, '"') ?? '{}'); - - if (dateRange.start === null) { - dateRange.start = _nextcloud_moment__WEBPACK_IMPORTED_MODULE_0___default()().unix(); - dateRange.end = _nextcloud_moment__WEBPACK_IMPORTED_MODULE_0___default()().unix(); - } - - const dateRangeFormated = { - startDate: _nextcloud_moment__WEBPACK_IMPORTED_MODULE_0___default().unix(dateRange.start).format('MMMM YYYY'), - endDate: _nextcloud_moment__WEBPACK_IMPORTED_MODULE_0___default().unix(dateRange.end).format('MMMM YYYY') - }; - - if (dateRangeFormated.startDate === dateRangeFormated.endDate) { - return { ...album, - date: dateRangeFormated.startDate - }; - } else { - return { ...album, - date: this.t('photos', '{startDate} to {endDate}', dateRangeFormated) - }; - } - }); - this.$store.dispatch('addSharedAlbums', { - albums - }); - _services_logger_js__WEBPACK_IMPORTED_MODULE_4__["default"].debug(`[FetchSharedAlbumsMixin] Fetched ${albums.length} new files: `, albums); - } catch (error) { - if (error.response?.status === 404) { - this.errorFetchingAlbums = 404; - } else if (error.code === 'ERR_CANCELED') { - return; - } else { - this.errorFetchingAlbums = error; - } - - _services_logger_js__WEBPACK_IMPORTED_MODULE_4__["default"].error(t('photos', 'Failed to fetch albums list.'), error); - (0,_nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_1__.showError)(t('photos', 'Failed to fetch albums list.')); - } finally { - this.loadingAlbums = false; - } - } - - } -}); - -/***/ }), - -/***/ "./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!./src/views/SharedAlbums.vue?vue&type=style&index=0&id=3a88853a&lang=scss&scoped=true&": -/*!*****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/views/SharedAlbums.vue?vue&type=style&index=0&id=3a88853a&lang=scss&scoped=true& ***! - \*****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".albums-list[data-v-3a88853a] {\n display: flex;\n flex-direction: column;\n}\n.albums-list .album__name[data-v-3a88853a] {\n font-weight: normal;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/views/SharedAlbums.vue?vue&type=style&index=0&id=3a88853a&lang=scss&scoped=true&": -/*!*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/views/SharedAlbums.vue?vue&type=style&index=0&id=3a88853a&lang=scss&scoped=true& ***! - \*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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_SharedAlbums_vue_vue_type_style_index_0_id_3a88853a_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../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!./SharedAlbums.vue?vue&type=style&index=0&id=3a88853a&lang=scss&scoped=true& */ "./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!./src/views/SharedAlbums.vue?vue&type=style&index=0&id=3a88853a&lang=scss&scoped=true&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_SharedAlbums_vue_vue_type_style_index_0_id_3a88853a_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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_SharedAlbums_vue_vue_type_style_index_0_id_3a88853a_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_SharedAlbums_vue_vue_type_style_index_0_id_3a88853a_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_SharedAlbums_vue_vue_type_style_index_0_id_3a88853a_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/AlertCircle.vue": -/*!****************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/AlertCircle.vue ***! - \****************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _AlertCircle_vue_vue_type_template_id_7b52a7d0___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./AlertCircle.vue?vue&type=template&id=7b52a7d0& */ "./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=template&id=7b52a7d0&"); -/* harmony import */ var _AlertCircle_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./AlertCircle.vue?vue&type=script&lang=js& */ "./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=script&lang=js&"); -/* harmony import */ var _vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - - - -/* normalize component */ -; -var component = (0,_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])( - _AlertCircle_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _AlertCircle_vue_vue_type_template_id_7b52a7d0___WEBPACK_IMPORTED_MODULE_0__.render, - _AlertCircle_vue_vue_type_template_id_7b52a7d0___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - null, - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "node_modules/vue-material-design-icons/AlertCircle.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=script&lang=js&": -/*!****************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=script&lang=js& ***! - \****************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: "AlertCircleIcon", - emits: ['click'], - props: { - title: { - type: String, - }, - fillColor: { - type: String, - default: "currentColor" - }, - size: { - type: Number, - default: 24 - } - } -}); - - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/ImageMultiple.vue": -/*!******************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/ImageMultiple.vue ***! - \******************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _ImageMultiple_vue_vue_type_template_id_1fff908f___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./ImageMultiple.vue?vue&type=template&id=1fff908f& */ "./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=template&id=1fff908f&"); -/* harmony import */ var _ImageMultiple_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./ImageMultiple.vue?vue&type=script&lang=js& */ "./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=script&lang=js&"); -/* harmony import */ var _vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - - - -/* normalize component */ -; -var component = (0,_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])( - _ImageMultiple_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _ImageMultiple_vue_vue_type_template_id_1fff908f___WEBPACK_IMPORTED_MODULE_0__.render, - _ImageMultiple_vue_vue_type_template_id_1fff908f___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - null, - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "node_modules/vue-material-design-icons/ImageMultiple.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=script&lang=js&": -/*!******************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=script&lang=js& ***! - \******************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: "ImageMultipleIcon", - emits: ['click'], - props: { - title: { - type: String, - }, - fillColor: { - type: String, - default: "currentColor" - }, - size: { - type: Number, - default: 24 - } - } -}); - - -/***/ }), - -/***/ "./src/views/SharedAlbums.vue": -/*!************************************!*\ - !*** ./src/views/SharedAlbums.vue ***! - \************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _SharedAlbums_vue_vue_type_template_id_3a88853a_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./SharedAlbums.vue?vue&type=template&id=3a88853a&scoped=true& */ "./src/views/SharedAlbums.vue?vue&type=template&id=3a88853a&scoped=true&"); -/* harmony import */ var _SharedAlbums_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./SharedAlbums.vue?vue&type=script&lang=js& */ "./src/views/SharedAlbums.vue?vue&type=script&lang=js&"); -/* harmony import */ var _SharedAlbums_vue_vue_type_style_index_0_id_3a88853a_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./SharedAlbums.vue?vue&type=style&index=0&id=3a88853a&lang=scss&scoped=true& */ "./src/views/SharedAlbums.vue?vue&type=style&index=0&id=3a88853a&lang=scss&scoped=true&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( - _SharedAlbums_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _SharedAlbums_vue_vue_type_template_id_3a88853a_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render, - _SharedAlbums_vue_vue_type_template_id_3a88853a_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - "3a88853a", - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/views/SharedAlbums.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/views/SharedAlbums.vue?vue&type=script&lang=js&": -/*!*************************************************************!*\ - !*** ./src/views/SharedAlbums.vue?vue&type=script&lang=js& ***! - \*************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_SharedAlbums_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharedAlbums.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/SharedAlbums.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_SharedAlbums_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/views/SharedAlbums.vue?vue&type=style&index=0&id=3a88853a&lang=scss&scoped=true&": -/*!**********************************************************************************************!*\ - !*** ./src/views/SharedAlbums.vue?vue&type=style&index=0&id=3a88853a&lang=scss&scoped=true& ***! - \**********************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_SharedAlbums_vue_vue_type_style_index_0_id_3a88853a_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/style-loader/dist/cjs.js!../../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!./SharedAlbums.vue?vue&type=style&index=0&id=3a88853a&lang=scss&scoped=true& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/views/SharedAlbums.vue?vue&type=style&index=0&id=3a88853a&lang=scss&scoped=true&"); - - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=script&lang=js&": -/*!*****************************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=script&lang=js& ***! - \*****************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _vue_loader_lib_index_js_vue_loader_options_AlertCircle_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/index.js??vue-loader-options!./AlertCircle.vue?vue&type=script&lang=js& */ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_vue_loader_lib_index_js_vue_loader_options_AlertCircle_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=template&id=7b52a7d0&": -/*!***********************************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=template&id=7b52a7d0& ***! - \***********************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_AlertCircle_vue_vue_type_template_id_7b52a7d0___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_AlertCircle_vue_vue_type_template_id_7b52a7d0___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_AlertCircle_vue_vue_type_template_id_7b52a7d0___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../vue-loader/lib/index.js??vue-loader-options!./AlertCircle.vue?vue&type=template&id=7b52a7d0& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=template&id=7b52a7d0&"); - - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=script&lang=js&": -/*!*******************************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=script&lang=js& ***! - \*******************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _vue_loader_lib_index_js_vue_loader_options_ImageMultiple_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/index.js??vue-loader-options!./ImageMultiple.vue?vue&type=script&lang=js& */ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_vue_loader_lib_index_js_vue_loader_options_ImageMultiple_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=template&id=1fff908f&": -/*!*************************************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=template&id=1fff908f& ***! - \*************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_ImageMultiple_vue_vue_type_template_id_1fff908f___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_ImageMultiple_vue_vue_type_template_id_1fff908f___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_ImageMultiple_vue_vue_type_template_id_1fff908f___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../vue-loader/lib/index.js??vue-loader-options!./ImageMultiple.vue?vue&type=template&id=1fff908f& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=template&id=1fff908f&"); - - -/***/ }), - -/***/ "./src/views/SharedAlbums.vue?vue&type=template&id=3a88853a&scoped=true&": -/*!*******************************************************************************!*\ - !*** ./src/views/SharedAlbums.vue?vue&type=template&id=3a88853a&scoped=true& ***! - \*******************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_SharedAlbums_vue_vue_type_template_id_3a88853a_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_SharedAlbums_vue_vue_type_template_id_3a88853a_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_SharedAlbums_vue_vue_type_template_id_3a88853a_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharedAlbums.vue?vue&type=template&id=3a88853a&scoped=true& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/SharedAlbums.vue?vue&type=template&id=3a88853a&scoped=true&"); - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=template&id=7b52a7d0&": -/*!**************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=template&id=7b52a7d0& ***! - \**************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c( - "span", - _vm._b( - { - staticClass: "material-design-icon alert-circle-icon", - attrs: { - "aria-hidden": !_vm.title, - "aria-label": _vm.title, - role: "img", - }, - on: { - click: function ($event) { - return _vm.$emit("click", $event) - }, - }, - }, - "span", - _vm.$attrs, - false - ), - [ - _c( - "svg", - { - staticClass: "material-design-icon__svg", - attrs: { - fill: _vm.fillColor, - width: _vm.size, - height: _vm.size, - viewBox: "0 0 24 24", - }, - }, - [ - _c( - "path", - { - attrs: { - d: "M13,13H11V7H13M13,17H11V15H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z", - }, - }, - [_vm.title ? _c("title", [_vm._v(_vm._s(_vm.title))]) : _vm._e()] - ), - ] - ), - ] - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=template&id=1fff908f&": -/*!****************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=template&id=1fff908f& ***! - \****************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c( - "span", - _vm._b( - { - staticClass: "material-design-icon image-multiple-icon", - attrs: { - "aria-hidden": !_vm.title, - "aria-label": _vm.title, - role: "img", - }, - on: { - click: function ($event) { - return _vm.$emit("click", $event) - }, - }, - }, - "span", - _vm.$attrs, - false - ), - [ - _c( - "svg", - { - staticClass: "material-design-icon__svg", - attrs: { - fill: _vm.fillColor, - width: _vm.size, - height: _vm.size, - viewBox: "0 0 24 24", - }, - }, - [ - _c( - "path", - { - attrs: { - d: "M22,16V4A2,2 0 0,0 20,2H8A2,2 0 0,0 6,4V16A2,2 0 0,0 8,18H20A2,2 0 0,0 22,16M11,12L13.03,14.71L16,11L20,16H8M2,6V20A2,2 0 0,0 4,22H18V20H4V6", - }, - }, - [_vm.title ? _c("title", [_vm._v(_vm._s(_vm.title))]) : _vm._e()] - ), - ] - ), - ] - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/SharedAlbums.vue?vue&type=template&id=3a88853a&scoped=true&": -/*!**********************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/SharedAlbums.vue?vue&type=template&id=3a88853a&scoped=true& ***! - \**********************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c( - "CollectionsList", - { - staticClass: "albums-list", - attrs: { - collections: _vm.sharedAlbums, - loading: _vm.loadingAlbums, - "collection-title": _vm.t("photos", "Shared albums"), - "collection-root": _vm.t("photos", "Shared albums"), - error: _vm.errorFetchingAlbums, - }, - scopedSlots: _vm._u([ - { - key: "default", - fn: function (ref) { - var collection = ref.collection - return _c( - "CollectionCover", - { - key: collection.basename, - attrs: { - link: "/sharedalbums/" + collection.basename, - "alt-img": _vm.t( - "photos", - "Cover photo for shared album {albumName}.", - { albumName: collection.basename } - ), - "cover-url": _vm._f("coverUrl")(collection.lastPhoto), - }, - }, - [ - _c("h2", { staticClass: "album__name" }, [ - _vm._v("\n\t\t\t" + _vm._s(collection.basename) + "\n\t\t"), - ]), - _vm._v(" "), - _c( - "div", - { - staticClass: "album__details", - attrs: { slot: "subtitle" }, - slot: "subtitle", - }, - [ - _vm._v( - "\n\t\t\t" + - _vm._s(collection.date) + - " ⸱ " + - _vm._s( - _vm.n( - "photos", - "%n item", - "%n photos and videos", - collection.nbItems - ) - ) + - "\n\t\t" - ), - ] - ), - ] - ) - }, - }, - ]), - }, - [ - _vm._v(" "), - _c( - "NcEmptyContent", - { - attrs: { - slot: "empty-collections-list", - title: _vm.t("photos", "There is no album yet!"), - }, - slot: "empty-collections-list", - }, - [_c("FolderMultipleImage", { attrs: { slot: "icon" }, slot: "icon" })], - 1 - ), - ], - 1 - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }) - -}]); -//# sourceMappingURL=photos-node_modules_vue-material-design-icons_AlertCircle_vue-node_modules_vue-material-design-icons-ba67e6.js.map?v=8ed1ee211c3a1d8442d0 \ No newline at end of file diff --git a/js/photos-node_modules_vue-material-design-icons_AlertCircle_vue-node_modules_vue-material-design-icons-ba67e6.js.map b/js/photos-node_modules_vue-material-design-icons_AlertCircle_vue-node_modules_vue-material-design-icons-ba67e6.js.map deleted file mode 100644 index b5533baeb..000000000 --- a/js/photos-node_modules_vue-material-design-icons_AlertCircle_vue-node_modules_vue-material-design-icons-ba67e6.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-node_modules_vue-material-design-icons_AlertCircle_vue-node_modules_vue-material-design-icons-ba67e6.js?v=8ed1ee211c3a1d8442d0","mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;AC5EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;ACvHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;ACtCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;ACpCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;ACtCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACpCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;ACvCA;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;ACrDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;ACrDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sources":["webpack:///photos/src/views/SharedAlbums.vue?vue&type=script&lang=js&","webpack:///photos/src/mixins/FetchSharedAlbumsMixin.js","webpack:///photos/src/views/SharedAlbums.vue?vue&type=style&index=0&id=3a88853a&lang=scss&scoped=true&","webpack://photos/./src/views/SharedAlbums.vue?7c9e","webpack:///photos/node_modules/vue-material-design-icons/AlertCircle.vue","webpack:///photos/node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=script&lang=js&","webpack:///photos/node_modules/vue-material-design-icons/ImageMultiple.vue","webpack:///photos/node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=script&lang=js&","webpack:///photos/src/views/SharedAlbums.vue","webpack://photos/./src/views/SharedAlbums.vue?59a4","webpack://photos/./node_modules/vue-material-design-icons/AlertCircle.vue?5363","webpack://photos/./node_modules/vue-material-design-icons/ImageMultiple.vue?1443","webpack:///photos/node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=template&id=7b52a7d0&","webpack:///photos/node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=template&id=1fff908f&","webpack:///photos/src/views/SharedAlbums.vue?vue&type=template&id=3a88853a&scoped=true&"],"sourcesContent":["//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport FolderMultipleImage from 'vue-material-design-icons/FolderMultipleImage';\nimport { generateUrl } from '@nextcloud/router';\nimport { NcEmptyContent } from '@nextcloud/vue';\nimport FetchSharedAlbumsMixin from '../mixins/FetchSharedAlbumsMixin.js';\nimport CollectionsList from '../components/Collection/CollectionsList.vue';\nimport CollectionCover from '../components/Collection/CollectionCover.vue';\nexport default {\n name: 'SharedAlbums',\n components: {\n FolderMultipleImage,\n NcEmptyContent,\n CollectionsList,\n CollectionCover\n },\n filters: {\n /**\n * @param {string} lastPhoto The album's last photos.\n */\n coverUrl(lastPhoto) {\n if (lastPhoto === -1) {\n return '';\n }\n\n return generateUrl(`/apps/photos/api/v1/preview/${lastPhoto}?x=${512}&y=${512}`);\n }\n\n },\n mixins: [FetchSharedAlbumsMixin]\n};","/**\n * @copyright Copyright (c) 2022 Louis Chemineau \n *\n * @author Louis Chemineau \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 .\n *\n */\nimport { mapGetters } from 'vuex';\nimport moment from '@nextcloud/moment';\nimport { showError } from '@nextcloud/dialogs';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport client from '../services/DavClient.js';\nimport logger from '../services/logger.js';\nimport { genFileInfo } from '../utils/fileUtils.js';\nimport AbortControllerMixin from './AbortControllerMixin.js';\nexport default {\n name: 'FetchSharedAlbumsMixin',\n\n data() {\n return {\n errorFetchingAlbums: null,\n loadingAlbums: false\n };\n },\n\n mixins: [AbortControllerMixin],\n\n async beforeMount() {\n this.fetchAlbums();\n },\n\n computed: { ...mapGetters(['sharedAlbums'])\n },\n methods: {\n async fetchAlbums() {\n if (this.loadingAlbums) {\n return;\n }\n\n try {\n this.loadingAlbums = true;\n this.errorFetchingAlbums = null;\n const response = await client.getDirectoryContents(`/photos/${getCurrentUser()?.uid}/sharedalbums`, {\n data: `\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t`,\n details: true,\n signal: this.abortController.signal\n });\n const albums = response.data.filter(album => album.filename !== `/photos/${getCurrentUser()?.uid}/sharedalbums`).map(album => genFileInfo(album)).map(album => {\n album.collaborators = album.collaborators === '' ? [] : album.collaborators;\n const dateRange = JSON.parse(album.dateRange?.replace(/"/g, '\"') ?? '{}');\n\n if (dateRange.start === null) {\n dateRange.start = moment().unix();\n dateRange.end = moment().unix();\n }\n\n const dateRangeFormated = {\n startDate: moment.unix(dateRange.start).format('MMMM YYYY'),\n endDate: moment.unix(dateRange.end).format('MMMM YYYY')\n };\n\n if (dateRangeFormated.startDate === dateRangeFormated.endDate) {\n return { ...album,\n date: dateRangeFormated.startDate\n };\n } else {\n return { ...album,\n date: this.t('photos', '{startDate} to {endDate}', dateRangeFormated)\n };\n }\n });\n this.$store.dispatch('addSharedAlbums', {\n albums\n });\n logger.debug(`[FetchSharedAlbumsMixin] Fetched ${albums.length} new files: `, albums);\n } catch (error) {\n if (error.response?.status === 404) {\n this.errorFetchingAlbums = 404;\n } else if (error.code === 'ERR_CANCELED') {\n return;\n } else {\n this.errorFetchingAlbums = error;\n }\n\n logger.error(t('photos', 'Failed to fetch albums list.'), error);\n showError(t('photos', 'Failed to fetch albums list.'));\n } finally {\n this.loadingAlbums = false;\n }\n }\n\n }\n};","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".albums-list[data-v-3a88853a] {\\n display: flex;\\n flex-direction: column;\\n}\\n.albums-list .album__name[data-v-3a88853a] {\\n font-weight: normal;\\n overflow: hidden;\\n white-space: nowrap;\\n text-overflow: ellipsis;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./SharedAlbums.vue?vue&type=style&index=0&id=3a88853a&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./SharedAlbums.vue?vue&type=style&index=0&id=3a88853a&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./AlertCircle.vue?vue&type=template&id=7b52a7d0&\"\nimport script from \"./AlertCircle.vue?vue&type=script&lang=js&\"\nexport * from \"./AlertCircle.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/louis/workspace/nextcloud/apps/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('7b52a7d0')) {\n api.createRecord('7b52a7d0', component.options)\n } else {\n api.reload('7b52a7d0', component.options)\n }\n module.hot.accept(\"./AlertCircle.vue?vue&type=template&id=7b52a7d0&\", function () {\n api.rerender('7b52a7d0', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"node_modules/vue-material-design-icons/AlertCircle.vue\"\nexport default component.exports","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nexport default {\n name: \"AlertCircleIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n","import { render, staticRenderFns } from \"./ImageMultiple.vue?vue&type=template&id=1fff908f&\"\nimport script from \"./ImageMultiple.vue?vue&type=script&lang=js&\"\nexport * from \"./ImageMultiple.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/louis/workspace/nextcloud/apps/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('1fff908f')) {\n api.createRecord('1fff908f', component.options)\n } else {\n api.reload('1fff908f', component.options)\n }\n module.hot.accept(\"./ImageMultiple.vue?vue&type=template&id=1fff908f&\", function () {\n api.rerender('1fff908f', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"node_modules/vue-material-design-icons/ImageMultiple.vue\"\nexport default component.exports","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nexport default {\n name: \"ImageMultipleIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n","import { render, staticRenderFns } from \"./SharedAlbums.vue?vue&type=template&id=3a88853a&scoped=true&\"\nimport script from \"./SharedAlbums.vue?vue&type=script&lang=js&\"\nexport * from \"./SharedAlbums.vue?vue&type=script&lang=js&\"\nimport style0 from \"./SharedAlbums.vue?vue&type=style&index=0&id=3a88853a&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 \"3a88853a\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/louis/workspace/nextcloud/apps/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('3a88853a')) {\n api.createRecord('3a88853a', component.options)\n } else {\n api.reload('3a88853a', component.options)\n }\n module.hot.accept(\"./SharedAlbums.vue?vue&type=template&id=3a88853a&scoped=true&\", function () {\n api.rerender('3a88853a', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/views/SharedAlbums.vue\"\nexport default component.exports","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharedAlbums.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!./SharedAlbums.vue?vue&type=script&lang=js&\"","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./AlertCircle.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./AlertCircle.vue?vue&type=script&lang=js&\"","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ImageMultiple.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ImageMultiple.vue?vue&type=script&lang=js&\"","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"span\",\n _vm._b(\n {\n staticClass: \"material-design-icon alert-circle-icon\",\n attrs: {\n \"aria-hidden\": !_vm.title,\n \"aria-label\": _vm.title,\n role: \"img\",\n },\n on: {\n click: function ($event) {\n return _vm.$emit(\"click\", $event)\n },\n },\n },\n \"span\",\n _vm.$attrs,\n false\n ),\n [\n _c(\n \"svg\",\n {\n staticClass: \"material-design-icon__svg\",\n attrs: {\n fill: _vm.fillColor,\n width: _vm.size,\n height: _vm.size,\n viewBox: \"0 0 24 24\",\n },\n },\n [\n _c(\n \"path\",\n {\n attrs: {\n d: \"M13,13H11V7H13M13,17H11V15H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z\",\n },\n },\n [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()]\n ),\n ]\n ),\n ]\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"span\",\n _vm._b(\n {\n staticClass: \"material-design-icon image-multiple-icon\",\n attrs: {\n \"aria-hidden\": !_vm.title,\n \"aria-label\": _vm.title,\n role: \"img\",\n },\n on: {\n click: function ($event) {\n return _vm.$emit(\"click\", $event)\n },\n },\n },\n \"span\",\n _vm.$attrs,\n false\n ),\n [\n _c(\n \"svg\",\n {\n staticClass: \"material-design-icon__svg\",\n attrs: {\n fill: _vm.fillColor,\n width: _vm.size,\n height: _vm.size,\n viewBox: \"0 0 24 24\",\n },\n },\n [\n _c(\n \"path\",\n {\n attrs: {\n d: \"M22,16V4A2,2 0 0,0 20,2H8A2,2 0 0,0 6,4V16A2,2 0 0,0 8,18H20A2,2 0 0,0 22,16M11,12L13.03,14.71L16,11L20,16H8M2,6V20A2,2 0 0,0 4,22H18V20H4V6\",\n },\n },\n [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()]\n ),\n ]\n ),\n ]\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"CollectionsList\",\n {\n staticClass: \"albums-list\",\n attrs: {\n collections: _vm.sharedAlbums,\n loading: _vm.loadingAlbums,\n \"collection-title\": _vm.t(\"photos\", \"Shared albums\"),\n \"collection-root\": _vm.t(\"photos\", \"Shared albums\"),\n error: _vm.errorFetchingAlbums,\n },\n scopedSlots: _vm._u([\n {\n key: \"default\",\n fn: function (ref) {\n var collection = ref.collection\n return _c(\n \"CollectionCover\",\n {\n key: collection.basename,\n attrs: {\n link: \"/sharedalbums/\" + collection.basename,\n \"alt-img\": _vm.t(\n \"photos\",\n \"Cover photo for shared album {albumName}.\",\n { albumName: collection.basename }\n ),\n \"cover-url\": _vm._f(\"coverUrl\")(collection.lastPhoto),\n },\n },\n [\n _c(\"h2\", { staticClass: \"album__name\" }, [\n _vm._v(\"\\n\\t\\t\\t\" + _vm._s(collection.basename) + \"\\n\\t\\t\"),\n ]),\n _vm._v(\" \"),\n _c(\n \"div\",\n {\n staticClass: \"album__details\",\n attrs: { slot: \"subtitle\" },\n slot: \"subtitle\",\n },\n [\n _vm._v(\n \"\\n\\t\\t\\t\" +\n _vm._s(collection.date) +\n \" ⸱ \" +\n _vm._s(\n _vm.n(\n \"photos\",\n \"%n item\",\n \"%n photos and videos\",\n collection.nbItems\n )\n ) +\n \"\\n\\t\\t\"\n ),\n ]\n ),\n ]\n )\n },\n },\n ]),\n },\n [\n _vm._v(\" \"),\n _c(\n \"NcEmptyContent\",\n {\n attrs: {\n slot: \"empty-collections-list\",\n title: _vm.t(\"photos\", \"There is no album yet!\"),\n },\n slot: \"empty-collections-list\",\n },\n [_c(\"FolderMultipleImage\", { attrs: { slot: \"icon\" }, slot: \"icon\" })],\n 1\n ),\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-node_modules_vue-material-design-icons_DownloadMultiple_vue-src_components_Collection_Collect-7c78d0.js b/js/photos-node_modules_vue-material-design-icons_DownloadMultiple_vue-src_components_Collection_Collect-7c78d0.js deleted file mode 100644 index 70814a0cc..000000000 --- a/js/photos-node_modules_vue-material-design-icons_DownloadMultiple_vue-src_components_Collection_Collect-7c78d0.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkphotos=self.webpackChunkphotos||[]).push([["node_modules_vue-material-design-icons_DownloadMultiple_vue-src_components_Collection_Collect-7c78d0"],{14917:(t,n,e)=>{e.d(n,{Z:()=>l});var i=e(87537),r=e.n(i),a=e(23645),o=e.n(a)()(r());o.push([t.id,".collection[data-v-52e40d31]{display:flex;flex-direction:column}.collection__media[data-v-52e40d31]{padding:0 64px}@media only screen and (max-width: 1200px){.collection__media[data-v-52e40d31]{padding:0 4px}}","",{version:3,sources:["webpack://./src/components/Collection/CollectionContent.vue"],names:[],mappings:"AA8IA,6BACC,YAAA,CACA,qBAAA,CAEA,oCACC,cAAA,CAEA,2CAHD,oCAIE,aAAA,CAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.collection {\n\tdisplay: flex;\n\tflex-direction: column;\n\n\t&__media {\n\t\tpadding: 0 64px;\n\n\t\t@media only screen and (max-width: 1200px) {\n\t\t\tpadding: 0 4px;\n\t\t}\n\t}\n}\n'],sourceRoot:""}]);const l=o},36636:(t,n,e)=>{e.d(n,{Z:()=>l});var i=e(87537),r=e.n(i),a=e(23645),o=e.n(a)()(r());o.push([t.id,".file-picker[data-v-a0f8650e]{display:flex;flex-direction:column;padding:12px}.file-picker__content[data-v-a0f8650e]{display:flex;align-items:flex-start;flex-grow:1;height:500px}.file-picker__navigation[data-v-a0f8650e]{flex-basis:200px;overflow:scroll;margin-right:8px;padding-right:8px;height:100%}@media only screen and (max-width: 1200px){.file-picker__navigation[data-v-a0f8650e]{flex-basis:80px}}.file-picker__navigation--placeholder[data-v-a0f8650e]{background:var(--color-primary-light);border-radius:var(--border-radius-large)}.file-picker__navigation__month[data-v-a0f8650e]{font-weight:bold;font-size:16px;border-radius:var(--border-radius-pill);padding:8px 16px;margin:4px 0;cursor:pointer}@media only screen and (max-width: 1200px){.file-picker__navigation__month[data-v-a0f8650e]{text-align:center}}.file-picker__navigation__month[data-v-a0f8650e]:hover{background:var(--color-background-dark)}.file-picker__navigation__month.selected[data-v-a0f8650e]{background:var(--color-primary-element-lighter)}.file-picker__file-list[data-v-a0f8650e]{flex-grow:1;min-width:0;height:100%}.file-picker__file-list--placeholder[data-v-a0f8650e]{background:var(--color-primary-light);border-radius:var(--border-radius-large)}.file-picker__file-list .section-header[data-v-a0f8650e]{font-weight:bold;font-size:20px;padding:8px 0 4px 0}.file-picker__file-list[data-v-a0f8650e] .empty-content{margin-top:0;height:100%;display:flex;flex-direction:column;justify-content:center}.file-picker__actions[data-v-a0f8650e]{display:flex;justify-content:space-between;justify-items:center;padding-top:16px}","",{version:3,sources:["webpack://./src/components/FilesPicker.vue"],names:[],mappings:"AA+KA,8BACC,YAAA,CACA,qBAAA,CACA,YAAA,CAEA,uCACC,YAAA,CACA,sBAAA,CACA,WAAA,CACA,YAAA,CAGD,0CACC,gBAAA,CACA,eAAA,CACA,gBAAA,CACA,iBAAA,CACA,WAAA,CAEA,2CAPD,0CAQE,eAAA,CAAA,CAGD,uDACC,qCAAA,CACA,wCAAA,CAGD,iDACC,gBAAA,CACA,cAAA,CACA,uCAAA,CACA,gBAAA,CACA,YAAA,CACA,cAAA,CAEA,2CARD,iDASE,iBAAA,CAAA,CAGD,uDACC,uCAAA,CAGD,0DACC,+CAAA,CAKH,yCACC,WAAA,CACA,WAAA,CACA,WAAA,CAEA,sDACC,qCAAA,CACA,wCAAA,CAGD,yDACC,gBAAA,CACA,cAAA,CACA,mBAAA,CAGD,yDACC,YAAA,CACA,WAAA,CACA,YAAA,CACA,qBAAA,CACA,sBAAA,CAIF,uCACC,YAAA,CACA,6BAAA,CACA,oBAAA,CACA,gBAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.file-picker {\n\tdisplay: flex;\n\tflex-direction: column;\n\tpadding: 12px;\n\n\t&__content {\n\t\tdisplay: flex;\n\t\talign-items: flex-start;\n\t\tflex-grow: 1;\n\t\theight: 500px;\n\t}\n\n\t&__navigation {\n\t\tflex-basis: 200px;\n\t\toverflow: scroll;\n\t\tmargin-right: 8px;\n\t\tpadding-right: 8px;\n\t\theight: 100%;\n\n\t\t@media only screen and (max-width: 1200px) {\n\t\t\tflex-basis: 80px;\n\t\t}\n\n\t\t&--placeholder {\n\t\t\tbackground: var(--color-primary-light);\n\t\t\tborder-radius: var(--border-radius-large);\n\t\t}\n\n\t\t&__month {\n\t\t\tfont-weight: bold;\n\t\t\tfont-size: 16px;\n\t\t\tborder-radius: var(--border-radius-pill);\n\t\t\tpadding: 8px 16px;\n\t\t\tmargin: 4px 0;\n\t\t\tcursor: pointer;\n\n\t\t\t@media only screen and (max-width: 1200px) {\n\t\t\t\ttext-align: center;\n\t\t\t}\n\n\t\t\t&:hover {\n\t\t\t\tbackground: var(--color-background-dark);\n\t\t\t}\n\n\t\t\t&.selected {\n\t\t\t\tbackground: var(--color-primary-element-lighter);\n\t\t\t}\n\t\t}\n\t}\n\n\t&__file-list {\n\t\tflex-grow: 1;\n\t\tmin-width: 0;\n\t\theight: 100%;\n\n\t\t&--placeholder {\n\t\t\tbackground: var(--color-primary-light);\n\t\t\tborder-radius: var(--border-radius-large);\n\t\t}\n\n\t\t.section-header {\n\t\t\tfont-weight: bold;\n\t\t\tfont-size: 20px;\n\t\t\tpadding: 8px 0 4px 0;\n\t\t}\n\n\t\t::v-deep .empty-content {\n\t\t\tmargin-top: 0;\n\t\t\theight: 100%;\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t\tjustify-content: center;\n\t\t}\n\t}\n\n\t&__actions {\n\t\tdisplay: flex;\n\t\tjustify-content: space-between;\n\t\tjustify-items: center;\n\t\tpadding-top: 16px;\n\t}\n}\n'],sourceRoot:""}]);const l=o},24777:(t,n,e)=>{e.d(n,{Z:()=>r});const i={name:"AlertCircleIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const r=(0,e(51900).Z)(i,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("span",t._b({staticClass:"material-design-icon alert-circle-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(n){return t.$emit("click",n)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M13,13H11V7H13M13,17H11V15H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports},54287:(t,n,e)=>{e.d(n,{Z:()=>r});const i={name:"DownloadMultipleIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const r=(0,e(51900).Z)(i,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("span",t._b({staticClass:"material-design-icon download-multiple-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(n){return t.$emit("click",n)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M9,1V7H5L12,14L19,7H15V1H9M5,16V18H19V16H5M5,20V22H19V20H5Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports},61679:(t,n,e)=>{e.d(n,{Z:()=>r});const i={name:"ImagePlusIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const r=(0,e(51900).Z)(i,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("span",t._b({staticClass:"material-design-icon image-plus-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(n){return t.$emit("click",n)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M18 15V18H15V20H18V23H20V20H23V18H20V15H18M13.3 21H5C3.9 21 3 20.1 3 19V5C3 3.9 3.9 3 5 3H19C20.1 3 21 3.9 21 5V13.3C20.4 13.1 19.7 13 19 13C17.9 13 16.8 13.3 15.9 13.9L14.5 12L11 16.5L8.5 13.5L5 18H13.1C13 18.3 13 18.7 13 19C13 19.7 13.1 20.4 13.3 21Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports},11295:(t,n,e)=>{e.d(n,{Z:()=>j});var i=e(20629),r=e(24777),a=e(65322),o=e(33476),l=e(98171),c=e(53347),s=e(58828),d=e(80917),f=e(32114);function p(t,n,e,i,r,a,o){try{var l=t[a](o),c=l.value}catch(t){return void e(t)}l.done?n(c):Promise.resolve(c).then(i,r)}function g(t){return function(){var n=this,e=arguments;return new Promise((function(i,r){var a=t.apply(n,e);function o(t){p(a,i,r,o,l,"next",t)}function l(t){p(a,i,r,o,l,"throw",t)}o(void 0)}))}}function A(t,n){var e=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);n&&(i=i.filter((function(n){return Object.getOwnPropertyDescriptor(t,n).enumerable}))),e.push.apply(e,i)}return e}function u(t,n,e){return n in t?Object.defineProperty(t,n,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[n]=e,t}const h={name:"CollectionContent",components:{AlertCircle:r.Z,FolderMultipleImage:a.Z,NcEmptyContent:o.NcEmptyContent,NcLoadingIcon:o.NcLoadingIcon,FilesListViewer:c.Z,File:s.Z},mixins:[l.Z,o.isMobile],props:{collection:{type:Object,default:function(){}},collectionFileIds:{type:Array,required:!0},loading:{type:Boolean,default:!1},error:{type:String,default:""},semaphore:{type:f.Z,required:!0}},data:function(){return{FolderIllustration:d}},computed:function(t){for(var n=1;n{e.d(n,{Z:()=>B});var i=e(20629),r=e(61679);const a={name:"UploadIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var o=e(51900);const l=(0,o.Z)(a,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("span",t._b({staticClass:"material-design-icon upload-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(n){return t.$emit("click",n)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M9,16V10H5L12,3L19,10H15V16H9M5,20V18H19V20H5Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports;var c=e(80351),s=e.n(c),d=e(33476),f=e(66951),p=e(98171),g=e(53347),A=e(58828),u=e(28391);function h(t,n){var e=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);n&&(i=i.filter((function(n){return Object.getOwnPropertyDescriptor(t,n).enumerable}))),e.push.apply(e,i)}return e}function m(t,n,e){return n in t?Object.defineProperty(t,n,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[n]=e,t}const C={name:"FilesPicker",components:{ImagePlus:r.Z,Upload:l,NcButton:d.NcButton,NcLoadingIcon:d.NcLoadingIcon,FilesListViewer:g.Z,File:A.Z},filters:{dateMonthAndYear:function(t){return s()(t,"YYYYMM").format("MMMM YYYY")}},mixins:[f.Z,u.Z,p.Z],props:{destination:{type:String,required:!0},blacklistIds:{type:Array,default:function(){return[]}},loading:{type:Boolean,default:!1}},data:function(){return{targetMonth:null}},computed:function(t){for(var n=1;n{t.exports='folder'}}]); -//# sourceMappingURL=photos-node_modules_vue-material-design-icons_DownloadMultiple_vue-src_components_Collection_Collect-7c78d0.js.map?v=e3d5897547cf7550509b \ No newline at end of file diff --git a/js/photos-node_modules_vue-material-design-icons_DownloadMultiple_vue-src_components_Collection_Collect-7c78d0.js.map b/js/photos-node_modules_vue-material-design-icons_DownloadMultiple_vue-src_components_Collection_Collect-7c78d0.js.map deleted file mode 100644 index d2e18fdd6..000000000 --- a/js/photos-node_modules_vue-material-design-icons_DownloadMultiple_vue-src_components_Collection_Collect-7c78d0.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-node_modules_vue-material-design-icons_DownloadMultiple_vue-src_components_Collection_Collect-7c78d0.js?v=e3d5897547cf7550509b","mappings":"uPAGIA,E,MAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,oNAAqN,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,+DAA+D,MAAQ,GAAG,SAAW,yEAAyE,eAAiB,CAAC,6/BAA6kC,WAAa,MAEniD,S,sECJIH,E,MAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,4jDAA6jD,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,8CAA8C,MAAQ,GAAG,SAAW,6hBAA6hB,eAAiB,CAAC,49EAA4iF,WAAa,MAE7yJ,S,mCCaA,MCpB+G,EDoB/G,CACEC,KAAM,kBACNC,MAAO,CAAC,SACRC,MAAO,CACLC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,E,SAAA,GACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,yCAAyCC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,8GAA8G,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GACnoB,IDUpB,EACA,KACA,KACA,MAI8B,O,mCEEhC,MCpBoH,EDoBpH,CACEzB,KAAM,uBACNC,MAAO,CAAC,SACRC,MAAO,CACLC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,E,SAAA,GACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,8CAA8CC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,gEAAgE,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GAC1lB,IDUpB,EACA,KACA,KACA,MAI8B,O,mCEEhC,MCpB6G,EDoB7G,CACEzB,KAAM,gBACNC,MAAO,CAAC,SACRC,MAAO,CACLC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,E,SAAA,GACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,uCAAuCC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,iQAAiQ,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GACpxB,IDUpB,EACA,KACA,KACA,MAI8B,O,mCElBhC,I,qvBCuEA,MCvEwL,EDuExL,CACA,yBAEA,YACA,gBACA,wBACA,gCACA,8BACA,oBACA,UAGA,QACA,IACA,YAGA,OACA,YACA,YACA,sBAGA,mBACA,WACA,aAGA,SACA,aACA,YAGA,OACA,YACA,YAGA,WACA,SACA,cAIA,KA5CA,WA6CA,OACA,qBAEA,EAEA,S,+VAAA,KACA,SACA,WAIA,SACA,WADA,SACA,cACA,gBACA,iBACA,WACA,gHACA,mRACA,mBAEA,I,qIE7HIC,EAAU,CAAC,EAEfA,EAAQC,kBAAoB,IAC5BD,EAAQE,cAAgB,IAElBF,EAAQG,OAAS,SAAc,KAAM,QAE3CH,EAAQI,OAAS,IACjBJ,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKJ,KAAW,YAAiB,WCPlD,SAXgB,E,SAAA,GACd,GJTW,WAAa,IAAIhB,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,YAA2BoB,IAAnBtB,EAAIuB,YAA6BvB,EAAIwB,QAA+KxB,EAAS,MAAEI,EAAG,iBAAiB,CAACI,MAAM,CAAC,MAAQR,EAAIyB,EAAE,SAAU,uBAAuB,CAACrB,EAAG,cAAc,CAACI,MAAM,CAAC,KAAO,QAAQkB,KAAK,UAAU,GAAGtB,EAAG,MAAM,CAACG,YAAY,cAAc,CAACH,EAAG,MAAM,CAACG,YAAY,uBAAuBP,EAAIa,GAAG,KAAuC,IAAjCb,EAAI2B,kBAAkBC,QAAgB5B,EAAIwB,QAASxB,EAAI6B,GAAG,iBAAiB7B,EAAIe,KAAKf,EAAIa,GAAG,UAAyBS,IAAnBtB,EAAIuB,WAA0BnB,EAAG,kBAAkB,CAACG,YAAY,oBAAoBC,MAAM,CAAC,WAAWR,EAAI2B,kBAAkB,cAAc3B,EAAI8B,SAAW,IAAM,IAAI,QAAU9B,EAAIwB,SAASO,YAAY/B,EAAIgC,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASC,GAC/2B,IAAIC,EAAOD,EAAIC,KACXC,EAAaF,EAAIE,WACrB,OAAOjC,EAAG,OAAO,CAACI,MAAM,CAAC,KAAOR,EAAIsC,MAAMF,EAAK/C,IAAI,mBAAkB,EAAK,UAAsC,IAA3BW,EAAIuC,UAAUH,EAAK/C,IAAa,WAAagD,EAAW,UAAYrC,EAAIwC,WAAW/B,GAAG,CAAC,MAAQT,EAAIyC,WAAW,iBAAiBzC,EAAI0C,qBAAqB,IAAI,MAAK,EAAM,cAAc1C,EAAIe,MAAM,GAHrIX,EAAG,iBAAiB,CAACG,YAAY,kCAAkCC,MAAM,CAAC,MAAQR,EAAIyB,EAAE,SAAU,oCAAoC,CAACrB,EAAG,wBAAwB,EAG3B,GAChQ,IIQpB,EACA,KACA,WACA,MAI8B,O,mCCnBhC,I,sBCoBA,MCpB0G,EDoB1G,CACEd,KAAM,aACNC,MAAO,CAAC,SACRC,MAAO,CACLC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,M,eEff,SAXgB,OACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,mCAAmCC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,mDAAmD,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GAClkB,IDUpB,EACA,KACA,KACA,MAI8B,Q,gbE4EhC,MC9F4K,ED8F5K,CACA,mBAEA,YACA,cACA,SACA,oBACA,8BACA,oBACA,UAGA,SAIA,iBAJA,SAIA,GACA,0CACA,GAGA,QACA,IACA,IACA,KAGA,OAEA,aACA,YACA,aAIA,cACA,WACA,8BAIA,SACA,aACA,aAIA,KA/CA,WAgDA,OACA,iBAEA,EAEA,S,+VAAA,KACA,SACA,WAIA,OACA,WADA,SACA,GACA,0BACA,sBAEA,GAGA,SACA,SADA,WAEA,wCACA,EAEA,gBALA,WAMA,+CACA,I,qIE7JIC,EAAU,CAAC,EAEfA,EAAQC,kBAAoB,IAC5BD,EAAQE,cAAgB,IAElBF,EAAQG,OAAS,SAAc,KAAM,QAE3CH,EAAQI,OAAS,IACjBJ,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKJ,KAAW,YAAiB,WCPlD,SAXgB,OACd,GRTW,WAAa,IAAIhB,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACG,YAAY,eAAe,CAACH,EAAG,MAAM,CAACG,YAAY,wBAAwB,CAACH,EAAG,MAAM,CAACG,YAAY,0BAA0BoC,MAAM,CAAC,uCAAkE,IAA1B3C,EAAI4C,WAAWhB,SAAe5B,EAAI6C,GAAI7C,EAAc,YAAE,SAAS8C,GAAO,OAAO1C,EAAG,MAAM,CAAC6B,IAAIa,EAAMvC,YAAY,iCAAiCoC,MAAM,CAACI,SAAU/C,EAAIgD,cAAgBF,GAAOrC,GAAG,CAAC,MAAQ,SAASC,GAAQV,EAAIgD,YAAcF,CAAK,IAAI,CAAC9C,EAAIa,GAAG,aAAab,EAAIc,GAAGd,EAAIiD,GAAG,mBAAPjD,CAA2B8C,IAAQ,aAAa,IAAG,GAAG9C,EAAIa,GAAG,KAAKT,EAAG,kBAAkB,CAACG,YAAY,yBAAyBoC,MAAM,CAAC,sCAAiE,IAA1B3C,EAAI4C,WAAWhB,QAAcpB,MAAM,CAAC,sBAAsBR,EAAIkD,eAAe,SAAWlD,EAAI4C,WAAW,QAAU5C,EAAImD,aAAa,cAAc,IAAI,wBAAwB,GAAG,gBAAgBnD,EAAIyB,EAAE,SAAU,qDAAsD,oBAAoBzB,EAAIgD,aAAavC,GAAG,CAAC,eAAeT,EAAIoD,UAAUrB,YAAY/B,EAAIgC,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASC,GACvkC,IAAIC,EAAOD,EAAIC,KACXiB,EAASlB,EAAIkB,OACbhB,EAAaF,EAAIE,WACrB,MAAO,CAAED,EAAkB,cAAEhC,EAAG,KAAK,CAACG,YAAY,iBAAiB+C,MAAM,CAAGD,OAASA,EAAS,MAAQ7C,MAAM,CAAC,GAAM,8BAAiC4B,EAAO,KAAK,CAACpC,EAAIa,GAAG,eAAeb,EAAIc,GAAGd,EAAIiD,GAAG,mBAAPjD,CAA2BoC,EAAK/C,KAAK,gBAAgBe,EAAG,OAAO,CAACI,MAAM,CAAC,KAAOR,EAAIsC,MAAMF,EAAK/C,IAAI,mBAAkB,EAAK,UAAsC,IAA3BW,EAAIuC,UAAUH,EAAK/C,IAAa,WAAagD,EAAW,UAAYrC,EAAIwC,WAAW/B,GAAG,CAAC,iBAAiBT,EAAI0C,sBAAsB,QAAQ,GAAG1C,EAAIa,GAAG,KAAKT,EAAG,MAAM,CAACG,YAAY,wBAAwB,CAACH,EAAG,WAAW,CAACI,MAAM,CAAC,KAAO,WAAW,SAAWR,EAAIwB,SAASO,YAAY/B,EAAIgC,GAAG,CAAC,CAACC,IAAI,OAAOC,GAAG,WAAW,MAAO,CAAC9B,EAAG,UAAU,EAAEmD,OAAM,MAAS,CAACvD,EAAIa,GAAG,WAAWb,EAAIc,GAAGd,EAAIyB,EAAE,SAAU,yBAAyB,YAAYzB,EAAIa,GAAG,KAAKT,EAAG,WAAW,CAACI,MAAM,CAAC,KAAO,UAAU,SAAWR,EAAIwB,SAA0C,IAA/BxB,EAAIwD,gBAAgB5B,QAAcnB,GAAG,CAAC,MAAQT,EAAIyD,iBAAiB1B,YAAY/B,EAAIgC,GAAG,CAAC,CAACC,IAAI,OAAOC,GAAG,WAAW,MAAO,CAAGlC,EAAIwB,QAAyBxB,EAAIe,KAApBX,EAAG,aAAsBJ,EAAIa,GAAG,KAAMb,EAAW,QAAEI,EAAG,iBAAiBJ,EAAIe,KAAK,EAAEwC,OAAM,MAAS,CAACvD,EAAIa,GAAG,WAAWb,EAAIc,GAAGd,EAAIyB,EAAE,SAAU,uBAAwB,CAAEiC,YAAa1D,EAAI0D,eAAgB,aAAa,IAAI,GACloC,IQOpB,EACA,KACA,WACA,MAI8B,O","sources":["webpack:///photos/src/components/Collection/CollectionContent.vue?vue&type=style&index=0&id=52e40d31&lang=scss&scoped=true&","webpack:///photos/src/components/FilesPicker.vue?vue&type=style&index=0&id=a0f8650e&lang=scss&scoped=true&","webpack:///photos/node_modules/vue-material-design-icons/AlertCircle.vue","webpack:///photos/node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/AlertCircle.vue?489a","webpack:///photos/node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=template&id=2a2453f8&","webpack:///photos/node_modules/vue-material-design-icons/DownloadMultiple.vue","webpack:///photos/node_modules/vue-material-design-icons/DownloadMultiple.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/DownloadMultiple.vue?2e77","webpack:///photos/node_modules/vue-material-design-icons/DownloadMultiple.vue?vue&type=template&id=63c2fc60&","webpack:///photos/node_modules/vue-material-design-icons/ImagePlus.vue","webpack:///photos/node_modules/vue-material-design-icons/ImagePlus.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/ImagePlus.vue?8b12","webpack:///photos/node_modules/vue-material-design-icons/ImagePlus.vue?vue&type=template&id=6b6ee9f3&","webpack:///photos/src/components/Collection/CollectionContent.vue?vue&type=template&id=52e40d31&scoped=true&","webpack:///photos/src/components/Collection/CollectionContent.vue","webpack:///photos/src/components/Collection/CollectionContent.vue?vue&type=script&lang=js&","webpack://photos/./src/components/Collection/CollectionContent.vue?1ad1","webpack://photos/./src/components/Collection/CollectionContent.vue?d20d","webpack:///photos/src/components/FilesPicker.vue?vue&type=template&id=a0f8650e&scoped=true&","webpack:///photos/node_modules/vue-material-design-icons/Upload.vue","webpack:///photos/node_modules/vue-material-design-icons/Upload.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/Upload.vue?19d8","webpack:///photos/node_modules/vue-material-design-icons/Upload.vue?vue&type=template&id=61d1920d&","webpack:///photos/src/components/FilesPicker.vue","webpack:///photos/src/components/FilesPicker.vue?vue&type=script&lang=js&","webpack://photos/./src/components/FilesPicker.vue?2e64","webpack://photos/./src/components/FilesPicker.vue?2782"],"sourcesContent":["// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".collection[data-v-52e40d31]{display:flex;flex-direction:column}.collection__media[data-v-52e40d31]{padding:0 64px}@media only screen and (max-width: 1200px){.collection__media[data-v-52e40d31]{padding:0 4px}}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/Collection/CollectionContent.vue\"],\"names\":[],\"mappings\":\"AA8IA,6BACC,YAAA,CACA,qBAAA,CAEA,oCACC,cAAA,CAEA,2CAHD,oCAIE,aAAA,CAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.collection {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\n\\t&__media {\\n\\t\\tpadding: 0 64px;\\n\\n\\t\\t@media only screen and (max-width: 1200px) {\\n\\t\\t\\tpadding: 0 4px;\\n\\t\\t}\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".file-picker[data-v-a0f8650e]{display:flex;flex-direction:column;padding:12px}.file-picker__content[data-v-a0f8650e]{display:flex;align-items:flex-start;flex-grow:1;height:500px}.file-picker__navigation[data-v-a0f8650e]{flex-basis:200px;overflow:scroll;margin-right:8px;padding-right:8px;height:100%}@media only screen and (max-width: 1200px){.file-picker__navigation[data-v-a0f8650e]{flex-basis:80px}}.file-picker__navigation--placeholder[data-v-a0f8650e]{background:var(--color-primary-light);border-radius:var(--border-radius-large)}.file-picker__navigation__month[data-v-a0f8650e]{font-weight:bold;font-size:16px;border-radius:var(--border-radius-pill);padding:8px 16px;margin:4px 0;cursor:pointer}@media only screen and (max-width: 1200px){.file-picker__navigation__month[data-v-a0f8650e]{text-align:center}}.file-picker__navigation__month[data-v-a0f8650e]:hover{background:var(--color-background-dark)}.file-picker__navigation__month.selected[data-v-a0f8650e]{background:var(--color-primary-element-lighter)}.file-picker__file-list[data-v-a0f8650e]{flex-grow:1;min-width:0;height:100%}.file-picker__file-list--placeholder[data-v-a0f8650e]{background:var(--color-primary-light);border-radius:var(--border-radius-large)}.file-picker__file-list .section-header[data-v-a0f8650e]{font-weight:bold;font-size:20px;padding:8px 0 4px 0}.file-picker__file-list[data-v-a0f8650e] .empty-content{margin-top:0;height:100%;display:flex;flex-direction:column;justify-content:center}.file-picker__actions[data-v-a0f8650e]{display:flex;justify-content:space-between;justify-items:center;padding-top:16px}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/FilesPicker.vue\"],\"names\":[],\"mappings\":\"AA+KA,8BACC,YAAA,CACA,qBAAA,CACA,YAAA,CAEA,uCACC,YAAA,CACA,sBAAA,CACA,WAAA,CACA,YAAA,CAGD,0CACC,gBAAA,CACA,eAAA,CACA,gBAAA,CACA,iBAAA,CACA,WAAA,CAEA,2CAPD,0CAQE,eAAA,CAAA,CAGD,uDACC,qCAAA,CACA,wCAAA,CAGD,iDACC,gBAAA,CACA,cAAA,CACA,uCAAA,CACA,gBAAA,CACA,YAAA,CACA,cAAA,CAEA,2CARD,iDASE,iBAAA,CAAA,CAGD,uDACC,uCAAA,CAGD,0DACC,+CAAA,CAKH,yCACC,WAAA,CACA,WAAA,CACA,WAAA,CAEA,sDACC,qCAAA,CACA,wCAAA,CAGD,yDACC,gBAAA,CACA,cAAA,CACA,mBAAA,CAGD,yDACC,YAAA,CACA,WAAA,CACA,YAAA,CACA,qBAAA,CACA,sBAAA,CAIF,uCACC,YAAA,CACA,6BAAA,CACA,oBAAA,CACA,gBAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.file-picker {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\tpadding: 12px;\\n\\n\\t&__content {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: flex-start;\\n\\t\\tflex-grow: 1;\\n\\t\\theight: 500px;\\n\\t}\\n\\n\\t&__navigation {\\n\\t\\tflex-basis: 200px;\\n\\t\\toverflow: scroll;\\n\\t\\tmargin-right: 8px;\\n\\t\\tpadding-right: 8px;\\n\\t\\theight: 100%;\\n\\n\\t\\t@media only screen and (max-width: 1200px) {\\n\\t\\t\\tflex-basis: 80px;\\n\\t\\t}\\n\\n\\t\\t&--placeholder {\\n\\t\\t\\tbackground: var(--color-primary-light);\\n\\t\\t\\tborder-radius: var(--border-radius-large);\\n\\t\\t}\\n\\n\\t\\t&__month {\\n\\t\\t\\tfont-weight: bold;\\n\\t\\t\\tfont-size: 16px;\\n\\t\\t\\tborder-radius: var(--border-radius-pill);\\n\\t\\t\\tpadding: 8px 16px;\\n\\t\\t\\tmargin: 4px 0;\\n\\t\\t\\tcursor: pointer;\\n\\n\\t\\t\\t@media only screen and (max-width: 1200px) {\\n\\t\\t\\t\\ttext-align: center;\\n\\t\\t\\t}\\n\\n\\t\\t\\t&:hover {\\n\\t\\t\\t\\tbackground: var(--color-background-dark);\\n\\t\\t\\t}\\n\\n\\t\\t\\t&.selected {\\n\\t\\t\\t\\tbackground: var(--color-primary-element-lighter);\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t&__file-list {\\n\\t\\tflex-grow: 1;\\n\\t\\tmin-width: 0;\\n\\t\\theight: 100%;\\n\\n\\t\\t&--placeholder {\\n\\t\\t\\tbackground: var(--color-primary-light);\\n\\t\\t\\tborder-radius: var(--border-radius-large);\\n\\t\\t}\\n\\n\\t\\t.section-header {\\n\\t\\t\\tfont-weight: bold;\\n\\t\\t\\tfont-size: 20px;\\n\\t\\t\\tpadding: 8px 0 4px 0;\\n\\t\\t}\\n\\n\\t\\t::v-deep .empty-content {\\n\\t\\t\\tmargin-top: 0;\\n\\t\\t\\theight: 100%;\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tflex-direction: column;\\n\\t\\t\\tjustify-content: center;\\n\\t\\t}\\n\\t}\\n\\n\\t&__actions {\\n\\t\\tdisplay: flex;\\n\\t\\tjustify-content: space-between;\\n\\t\\tjustify-items: center;\\n\\t\\tpadding-top: 16px;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./AlertCircle.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./AlertCircle.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AlertCircle.vue?vue&type=template&id=2a2453f8&\"\nimport script from \"./AlertCircle.vue?vue&type=script&lang=js&\"\nexport * from \"./AlertCircle.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon alert-circle-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M13,13H11V7H13M13,17H11V15H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./DownloadMultiple.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./DownloadMultiple.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./DownloadMultiple.vue?vue&type=template&id=63c2fc60&\"\nimport script from \"./DownloadMultiple.vue?vue&type=script&lang=js&\"\nexport * from \"./DownloadMultiple.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon download-multiple-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M9,1V7H5L12,14L19,7H15V1H9M5,16V18H19V16H5M5,20V22H19V20H5Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ImagePlus.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ImagePlus.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ImagePlus.vue?vue&type=template&id=6b6ee9f3&\"\nimport script from \"./ImagePlus.vue?vue&type=script&lang=js&\"\nexport * from \"./ImagePlus.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon image-plus-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M18 15V18H15V20H18V23H20V20H23V18H20V15H18M13.3 21H5C3.9 21 3 20.1 3 19V5C3 3.9 3.9 3 5 3H19C20.1 3 21 3.9 21 5V13.3C20.4 13.1 19.7 13 19 13C17.9 13 16.8 13.3 15.9 13.9L14.5 12L11 16.5L8.5 13.5L5 18H13.1C13 18.3 13 18.7 13 19C13 19.7 13.1 20.4 13.3 21Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.collection === undefined && !_vm.loading)?_c('NcEmptyContent',{staticClass:\"empty-content-with-illustration\",attrs:{\"title\":_vm.t('photos', 'This collection does not exist')}},[_c('FolderMultipleImage')],1):(_vm.error)?_c('NcEmptyContent',{attrs:{\"title\":_vm.t('photos', 'An error occurred')}},[_c('AlertCircle',{attrs:{\"slot\":\"icon\"},slot:\"icon\"})],1):_c('div',{staticClass:\"collection\"},[_c('div',{staticClass:\"collection__header\"}),_vm._v(\" \"),(_vm.collectionFileIds.length === 0 && _vm.loading)?_vm._t(\"empty-content\"):_vm._e(),_vm._v(\" \"),(_vm.collection !== undefined)?_c('FilesListViewer',{staticClass:\"collection__media\",attrs:{\"file-ids\":_vm.collectionFileIds,\"base-height\":_vm.isMobile ? 120 : 200,\"loading\":_vm.loading},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar file = ref.file;\nvar visibility = ref.visibility;\nreturn _c('File',{attrs:{\"file\":_vm.files[file.id],\"allow-selection\":true,\"selected\":_vm.selection[file.id] === true,\"visibility\":visibility,\"semaphore\":_vm.semaphore},on:{\"click\":_vm.openViewer,\"select-toggled\":_vm.onFileSelectToggle}})}}],null,false,3592900521)}):_vm._e()],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CollectionContent.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!./CollectionContent.vue?vue&type=script&lang=js&\"","\n import API from \"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./CollectionContent.vue?vue&type=style&index=0&id=52e40d31&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./CollectionContent.vue?vue&type=style&index=0&id=52e40d31&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./CollectionContent.vue?vue&type=template&id=52e40d31&scoped=true&\"\nimport script from \"./CollectionContent.vue?vue&type=script&lang=js&\"\nexport * from \"./CollectionContent.vue?vue&type=script&lang=js&\"\nimport style0 from \"./CollectionContent.vue?vue&type=style&index=0&id=52e40d31&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 \"52e40d31\",\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:\"file-picker\"},[_c('div',{staticClass:\"file-picker__content\"},[_c('div',{staticClass:\"file-picker__navigation\",class:{'file-picker__navigation--placeholder': _vm.monthsList.length === 0}},_vm._l((_vm.monthsList),function(month){return _c('div',{key:month,staticClass:\"file-picker__navigation__month\",class:{selected: _vm.targetMonth === month},on:{\"click\":function($event){_vm.targetMonth = month}}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm._f(\"dateMonthAndYear\")(month))+\"\\n\\t\\t\\t\")])}),0),_vm._v(\" \"),_c('FilesListViewer',{staticClass:\"file-picker__file-list\",class:{'file-picker__file-list--placeholder': _vm.monthsList.length === 0},attrs:{\"file-ids-by-section\":_vm.fileIdsByMonth,\"sections\":_vm.monthsList,\"loading\":_vm.loadingFiles,\"base-height\":100,\"section-header-height\":50,\"empty-message\":_vm.t('photos', 'This album doesn\\'t have any photos or videos yet!'),\"scroll-to-section\":_vm.targetMonth},on:{\"need-content\":_vm.getFiles},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar file = ref.file;\nvar height = ref.height;\nvar visibility = ref.visibility;\nreturn [(file.sectionHeader)?_c('h3',{staticClass:\"section-header\",style:({ height: (height + \"px\")}),attrs:{\"id\":(\"file-picker-section-header-\" + (file.id))}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm._f(\"dateMonthAndYear\")(file.id))+\"\\n\\t\\t\\t\\t\")]):_c('File',{attrs:{\"file\":_vm.files[file.id],\"allow-selection\":true,\"selected\":_vm.selection[file.id] === true,\"visibility\":visibility,\"semaphore\":_vm.semaphore},on:{\"select-toggled\":_vm.onFileSelectToggle}})]}}])})],1),_vm._v(\" \"),_c('div',{staticClass:\"file-picker__actions\"},[_c('NcButton',{attrs:{\"type\":\"tertiary\",\"disabled\":_vm.loading},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Upload')]},proxy:true}])},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('photos', 'Upload from computer'))+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('NcButton',{attrs:{\"type\":\"primary\",\"disabled\":_vm.loading || _vm.selectedFileIds.length === 0},on:{\"click\":_vm.emitPickedEvent},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(!_vm.loading)?_c('ImagePlus'):_vm._e(),_vm._v(\" \"),(_vm.loading)?_c('NcLoadingIcon'):_vm._e()]},proxy:true}])},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('photos', 'Add to {destination}', { destination: _vm.destination }))+\"\\n\\t\\t\")])],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Upload.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Upload.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Upload.vue?vue&type=template&id=61d1920d&\"\nimport script from \"./Upload.vue?vue&type=script&lang=js&\"\nexport * from \"./Upload.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon upload-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M9,16V10H5L12,3L19,10H15V16H9M5,20V18H19V20H5Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesPicker.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!./FilesPicker.vue?vue&type=script&lang=js&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./FilesPicker.vue?vue&type=style&index=0&id=a0f8650e&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./FilesPicker.vue?vue&type=style&index=0&id=a0f8650e&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesPicker.vue?vue&type=template&id=a0f8650e&scoped=true&\"\nimport script from \"./FilesPicker.vue?vue&type=script&lang=js&\"\nexport * from \"./FilesPicker.vue?vue&type=script&lang=js&\"\nimport style0 from \"./FilesPicker.vue?vue&type=style&index=0&id=a0f8650e&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 \"a0f8650e\",\n null\n \n)\n\nexport default component.exports"],"names":["___CSS_LOADER_EXPORT___","push","module","id","name","emits","props","title","type","String","fillColor","default","size","Number","_vm","this","_h","$createElement","_c","_self","_b","staticClass","attrs","on","$event","$emit","$attrs","_v","_s","_e","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","undefined","collection","loading","t","slot","collectionFileIds","length","_t","isMobile","scopedSlots","_u","key","fn","ref","file","visibility","files","selection","semaphore","openViewer","onFileSelectToggle","class","monthsList","_l","month","selected","targetMonth","_f","fileIdsByMonth","loadingFiles","getFiles","height","style","proxy","selectedFileIds","emitPickedEvent","destination"],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-node_modules_vue-material-design-icons_DownloadMultiple_vue-src_components_Collection_Collect-97efb0.js b/js/photos-node_modules_vue-material-design-icons_DownloadMultiple_vue-src_components_Collection_Collect-97efb0.js deleted file mode 100644 index 2375652eb..000000000 --- a/js/photos-node_modules_vue-material-design-icons_DownloadMultiple_vue-src_components_Collection_Collect-97efb0.js +++ /dev/null @@ -1,2 +0,0 @@ -(self.webpackChunkphotos=self.webpackChunkphotos||[]).push([["node_modules_vue-material-design-icons_DownloadMultiple_vue-src_components_Collection_Collect-97efb0"],{99100:(n,t,e)=>{"use strict";e.d(t,{Z:()=>l});var i=e(87537),a=e.n(i),o=e(23645),r=e.n(o)()(a());r.push([n.id,".collection[data-v-312d69fb]{display:flex;flex-direction:column}.collection__media[data-v-312d69fb]{padding:0 64px}@media only screen and (max-width: 1200px){.collection__media[data-v-312d69fb]{padding:0 4px}}","",{version:3,sources:["webpack://./src/components/Collection/CollectionContent.vue"],names:[],mappings:"AA8IA,6BACC,YAAA,CACA,qBAAA,CAEA,oCACC,cAAA,CAEA,2CAHD,oCAIE,aAAA,CAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.collection {\n\tdisplay: flex;\n\tflex-direction: column;\n\n\t&__media {\n\t\tpadding: 0 64px;\n\n\t\t@media only screen and (max-width: 1200px) {\n\t\t\tpadding: 0 4px;\n\t\t}\n\t}\n}\n'],sourceRoot:""}]);const l=r},19413:(n,t,e)=>{"use strict";e.d(t,{Z:()=>l});var i=e(87537),a=e.n(i),o=e(23645),r=e.n(o)()(a());r.push([n.id,".file-picker[data-v-0810cf23]{display:flex;flex-direction:column;padding:12px}.file-picker__content[data-v-0810cf23]{display:flex;align-items:flex-start;flex-grow:1;height:500px}.file-picker__navigation[data-v-0810cf23]{flex-basis:200px;overflow:scroll;margin-right:8px;padding-right:8px;height:100%}@media only screen and (max-width: 1200px){.file-picker__navigation[data-v-0810cf23]{flex-basis:100px}}.file-picker__navigation--placeholder[data-v-0810cf23]{background:var(--color-primary-light);border-radius:var(--border-radius-large)}.file-picker__navigation__month[data-v-0810cf23]{font-weight:bold;font-size:16px;border-radius:var(--border-radius-pill);padding:8px 16px;margin:4px 0;cursor:pointer}@media only screen and (max-width: 1200px){.file-picker__navigation__month[data-v-0810cf23]{text-align:center}}.file-picker__navigation__month[data-v-0810cf23]:hover{background:var(--color-background-dark)}.file-picker__navigation__month.selected[data-v-0810cf23]{background:var(--color-primary-element-lighter)}.file-picker__file-list[data-v-0810cf23]{flex-grow:1;min-width:0;height:100%}.file-picker__file-list--placeholder[data-v-0810cf23]{background:var(--color-primary-light);border-radius:var(--border-radius-large)}.file-picker__file-list .section-header[data-v-0810cf23]{font-weight:bold;font-size:20px;padding:8px 0 4px 0}.file-picker__file-list[data-v-0810cf23] .empty-content{position:absolute;width:100%;margin-top:0;height:100%;display:flex;flex-direction:column;justify-content:center}.file-picker__actions[data-v-0810cf23]{display:flex;justify-content:space-between;justify-items:center;padding-top:16px}","",{version:3,sources:["webpack://./src/components/FilesPicker.vue"],names:[],mappings:"AAuLA,8BACC,YAAA,CACA,qBAAA,CACA,YAAA,CAEA,uCACC,YAAA,CACA,sBAAA,CACA,WAAA,CACA,YAAA,CAGD,0CACC,gBAAA,CACA,eAAA,CACA,gBAAA,CACA,iBAAA,CACA,WAAA,CAEA,2CAPD,0CAQE,gBAAA,CAAA,CAGD,uDACC,qCAAA,CACA,wCAAA,CAGD,iDACC,gBAAA,CACA,cAAA,CACA,uCAAA,CACA,gBAAA,CACA,YAAA,CACA,cAAA,CAEA,2CARD,iDASE,iBAAA,CAAA,CAGD,uDACC,uCAAA,CAGD,0DACC,+CAAA,CAKH,yCACC,WAAA,CACA,WAAA,CACA,WAAA,CAEA,sDACC,qCAAA,CACA,wCAAA,CAGD,yDACC,gBAAA,CACA,cAAA,CACA,mBAAA,CAGD,yDACC,iBAAA,CACA,UAAA,CACA,YAAA,CACA,WAAA,CACA,YAAA,CACA,qBAAA,CACA,sBAAA,CAIF,uCACC,YAAA,CACA,6BAAA,CACA,oBAAA,CACA,gBAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.file-picker {\n\tdisplay: flex;\n\tflex-direction: column;\n\tpadding: 12px;\n\n\t&__content {\n\t\tdisplay: flex;\n\t\talign-items: flex-start;\n\t\tflex-grow: 1;\n\t\theight: 500px;\n\t}\n\n\t&__navigation {\n\t\tflex-basis: 200px;\n\t\toverflow: scroll;\n\t\tmargin-right: 8px;\n\t\tpadding-right: 8px;\n\t\theight: 100%;\n\n\t\t@media only screen and (max-width: 1200px) {\n\t\t\tflex-basis: 100px;\n\t\t}\n\n\t\t&--placeholder {\n\t\t\tbackground: var(--color-primary-light);\n\t\t\tborder-radius: var(--border-radius-large);\n\t\t}\n\n\t\t&__month {\n\t\t\tfont-weight: bold;\n\t\t\tfont-size: 16px;\n\t\t\tborder-radius: var(--border-radius-pill);\n\t\t\tpadding: 8px 16px;\n\t\t\tmargin: 4px 0;\n\t\t\tcursor: pointer;\n\n\t\t\t@media only screen and (max-width: 1200px) {\n\t\t\t\ttext-align: center;\n\t\t\t}\n\n\t\t\t&:hover {\n\t\t\t\tbackground: var(--color-background-dark);\n\t\t\t}\n\n\t\t\t&.selected {\n\t\t\t\tbackground: var(--color-primary-element-lighter);\n\t\t\t}\n\t\t}\n\t}\n\n\t&__file-list {\n\t\tflex-grow: 1;\n\t\tmin-width: 0;\n\t\theight: 100%;\n\n\t\t&--placeholder {\n\t\t\tbackground: var(--color-primary-light);\n\t\t\tborder-radius: var(--border-radius-large);\n\t\t}\n\n\t\t.section-header {\n\t\t\tfont-weight: bold;\n\t\t\tfont-size: 20px;\n\t\t\tpadding: 8px 0 4px 0;\n\t\t}\n\n\t\t::v-deep .empty-content {\n\t\t\tposition: absolute;\n\t\t\twidth: 100%;\n\t\t\tmargin-top: 0;\n\t\t\theight: 100%;\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t\tjustify-content: center;\n\t\t}\n\t}\n\n\t&__actions {\n\t\tdisplay: flex;\n\t\tjustify-content: space-between;\n\t\tjustify-items: center;\n\t\tpadding-top: 16px;\n\t}\n}\n'],sourceRoot:""}]);const l=r},6179:(n,t,e)=>{"use strict";e.d(t,{Z:()=>l});var i=e(87537),a=e.n(i),o=e(23645),r=e.n(o)()(a());r.push([n.id,":root{--photos-navigation-height: 64px;--photos-navigation-spacing: calc((var(--photos-navigation-height) - 44px) / 2)}button.app-navigation-toggle{top:0 !important;right:calc(var(--photos-navigation-height)*-1) !important;margin:var(--photos-navigation-spacing) !important}","",{version:3,sources:["webpack://./src/components/HeaderNavigation.vue"],names:[],mappings:"AAoLA,MACC,gCAAA,CAEA,+EAAA,CAID,6BAEC,gBAAA,CACA,yDAAA,CACA,kDAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n:root {\n\t--photos-navigation-height: 64px;\n\t// header height - button size\n\t--photos-navigation-spacing: calc((var(--photos-navigation-height) - 44px) / 2);\n}\n\n// Properly position the navigation toggle button\nbutton.app-navigation-toggle {\n\t// App-navigation have a 4px margin top\n\ttop: 0 !important;\n\tright: calc(var(--photos-navigation-height) * -1) !important;\n\tmargin: var(--photos-navigation-spacing) !important;\n}\n\n'],sourceRoot:""}]);const l=r},9154:(n,t,e)=>{"use strict";e.d(t,{Z:()=>l});var i=e(87537),a=e.n(i),o=e(23645),r=e.n(o)()(a());r.push([n.id,".photos-navigation[data-v-44b6cd5e]{position:-webkit-sticky;position:sticky;z-index:20;top:0;display:flex;align-items:center;width:100%;min-height:var(--photos-navigation-height);padding:0 var(--photos-navigation-height);background:var(--color-main-background)}.photos-navigation__back[data-v-44b6cd5e]{position:absolute;left:0;margin:var(--photos-navigation-spacing) !important}.photos-navigation__title[data-v-44b6cd5e]{max-width:50%;margin-right:calc(2*var(--photos-navigation-spacing));display:flex;flex-direction:column}.photos-navigation__title__main[data-v-44b6cd5e]{margin:0;cursor:pointer}.photos-navigation__title__main[data-v-44b6cd5e],.photos-navigation__title__sub[data-v-44b6cd5e]{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.photos-navigation__loader[data-v-44b6cd5e]{margin-left:32px}.photos-navigation__content-right[data-v-44b6cd5e]{display:flex;align-items:center;justify-content:center;margin-left:auto}","",{version:3,sources:["webpack://./src/components/HeaderNavigation.vue"],names:[],mappings:"AAqMA,oCACC,uBAAA,CAAA,eAAA,CACA,UAAA,CACA,KAAA,CACA,YAAA,CACA,kBAAA,CACA,UAAA,CACA,0CAAA,CACA,yCAAA,CACA,uCAAA,CAEA,0CAEC,iBAAA,CACA,MAAA,CACA,kDAAA,CAGD,2CACC,aAAA,CACA,qDAAA,CACA,YAAA,CACA,qBAAA,CAEA,iDACC,QAAA,CACA,cAAA,CAGD,iGACC,eAAA,CACA,kBAAA,CACA,sBAAA,CAIF,4CACC,gBAAA,CAGD,mDACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,gBAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.photos-navigation {\n\tposition: sticky;\n\tz-index: 20;\n\ttop: 0;\n\tdisplay: flex;\n\talign-items: center;\n\twidth: 100%;\n\tmin-height: var(--photos-navigation-height);\n\tpadding: 0 var(--photos-navigation-height);\n\tbackground: var(--color-main-background);\n\n\t&__back {\n\t\t// Above the navigation menu\n\t\tposition: absolute;\n\t\tleft: 0;\n\t\tmargin: var(--photos-navigation-spacing) !important;\n\t}\n\n\t&__title {\n\t\tmax-width: 50%;\n\t\tmargin-right: calc(2 * var(--photos-navigation-spacing));\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\n\t\t&__main {\n\t\t\tmargin: 0;\n\t\t\tcursor: pointer;\n\t\t}\n\n\t\t&__main, &__sub {\n\t\t\toverflow: hidden;\n\t\t\twhite-space: nowrap;\n\t\t\ttext-overflow: ellipsis;\n\t\t}\n\t}\n\n\t&__loader {\n\t\tmargin-left: 32px;\n\t}\n\n\t&__content-right {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\tmargin-left: auto;\n\t}\n}\n\n'],sourceRoot:""}]);const l=r},24777:(n,t,e)=>{"use strict";e.d(t,{Z:()=>a});const i={name:"AlertCircleIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const a=(0,e(51900).Z)(i,(function(){var n=this,t=n.$createElement,e=n._self._c||t;return e("span",n._b({staticClass:"material-design-icon alert-circle-icon",attrs:{"aria-hidden":!n.title,"aria-label":n.title,role:"img"},on:{click:function(t){return n.$emit("click",t)}}},"span",n.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:n.fillColor,width:n.size,height:n.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M13,13H11V7H13M13,17H11V15H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z"}},[n.title?e("title",[n._v(n._s(n.title))]):n._e()])])])}),[],!1,null,null,null).exports},54287:(n,t,e)=>{"use strict";e.d(t,{Z:()=>a});const i={name:"DownloadMultipleIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const a=(0,e(51900).Z)(i,(function(){var n=this,t=n.$createElement,e=n._self._c||t;return e("span",n._b({staticClass:"material-design-icon download-multiple-icon",attrs:{"aria-hidden":!n.title,"aria-label":n.title,role:"img"},on:{click:function(t){return n.$emit("click",t)}}},"span",n.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:n.fillColor,width:n.size,height:n.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M9,1V7H5L12,14L19,7H15V1H9M5,16V18H19V16H5M5,20V22H19V20H5Z"}},[n.title?e("title",[n._v(n._s(n.title))]):n._e()])])])}),[],!1,null,null,null).exports},61679:(n,t,e)=>{"use strict";e.d(t,{Z:()=>a});const i={name:"ImagePlusIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const a=(0,e(51900).Z)(i,(function(){var n=this,t=n.$createElement,e=n._self._c||t;return e("span",n._b({staticClass:"material-design-icon image-plus-icon",attrs:{"aria-hidden":!n.title,"aria-label":n.title,role:"img"},on:{click:function(t){return n.$emit("click",t)}}},"span",n.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:n.fillColor,width:n.size,height:n.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M18 15V18H15V20H18V23H20V20H23V18H20V15H18M13.3 21H5C3.9 21 3 20.1 3 19V5C3 3.9 3.9 3 5 3H19C20.1 3 21 3.9 21 5V13.3C20.4 13.1 19.7 13 19 13C17.9 13 16.8 13.3 15.9 13.9L14.5 12L11 16.5L8.5 13.5L5 18H13.1C13 18.3 13 18.7 13 19C13 19.7 13.1 20.4 13.3 21Z"}},[n.title?e("title",[n._v(n._s(n.title))]):n._e()])])])}),[],!1,null,null,null).exports},38352:(n,t,e)=>{"use strict";e.d(t,{Z:()=>O});var i=e(20629),a=e(24777),o=e(65322),r=e(33476),l=e(98171),s=e(89375),c=e(39448),p=e(80917),d=e(32114);function A(n,t,e,i,a,o,r){try{var l=n[o](r),s=l.value}catch(n){return void e(n)}l.done?t(s):Promise.resolve(s).then(i,a)}function f(n){return function(){var t=this,e=arguments;return new Promise((function(i,a){var o=n.apply(t,e);function r(n){A(o,i,a,r,l,"next",n)}function l(n){A(o,i,a,r,l,"throw",n)}r(void 0)}))}}function g(n,t){var e=Object.keys(n);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(n);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(n,t).enumerable}))),e.push.apply(e,i)}return e}function u(n,t,e){return t in n?Object.defineProperty(n,t,{value:e,enumerable:!0,configurable:!0,writable:!0}):n[t]=e,n}const h={name:"CollectionContent",components:{AlertCircle:a.Z,FolderMultipleImage:o.Z,NcEmptyContent:r.NcEmptyContent,FilesListViewer:s.Z,File:c.Z},mixins:[l.Z,r.isMobile],props:{collection:{type:Object,default:function(){}},collectionFileIds:{type:Array,required:!0},loading:{type:Boolean,default:!1},error:{type:[Error],default:""},semaphore:{type:d.Z,required:!0}},data:function(){return{FolderIllustration:p,appContent:document.getElementById("app-content-vue")}},computed:function(n){for(var t=1;t{"use strict";e.d(t,{Z:()=>D});var i=e(20629),a=e(33476),o=e(52587),r=e(80351),l=e.n(r),s=e(61679),c=e(89375),p=e(39448),d=e(66951),A=e(98171),f=e(28391),g=e(81090),u=e(3301);function h(n,t){var e=Object.keys(n);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(n);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(n,t).enumerable}))),e.push.apply(e,i)}return e}function m(n,t,e){return t in n?Object.defineProperty(n,t,{value:e,enumerable:!0,configurable:!0,writable:!0}):n[t]=e,n}const C={name:"FilesPicker",components:{File:p.Z,FilesListViewer:c.Z,ImagePlus:s.Z,NcButton:a.NcButton,NcLoadingIcon:a.NcLoadingIcon,UploadPicker:o.e},filters:{dateMonthAndYear:function(n){return l()(n,"YYYYMM").format("MMMM YYYY")}},mixins:[d.Z,f.Z,A.Z,g.Z],props:{destination:{type:String,required:!0},blacklistIds:{type:Array,default:function(){return[]}},loading:{type:Boolean,default:!1}},data:function(){return{allowedMimes:u.ZP,targetMonth:null,uploadContext:{route:"albumpicker"}}},computed:function(n){for(var t=1;t{"use strict";i.d(e,{Z:()=>x});var a=i(76240),o=i(33476);const r={name:"HeaderNavigation",components:{ArrowLeft:a.default,NcButton:o.NcButton,NcLoadingIcon:o.NcLoadingIcon},inheritAttrs:!1,props:{loading:{type:Boolean,default:!1},path:{type:String,default:"/"},title:{type:String,required:!0},rootTitle:{type:String,default:t("photos","Photos")},params:{type:Object,default:null}},computed:{isRoot:function(){var n="/"===this.path;return this.toggleNavigationButton(!n),n},name:function(){return this.isRoot?this.rootTitle:this.title},parentPath:function(){var n=this.path.split("/");n.pop();var t=n.join("/");return this.isRoot||""===t.trim()?"/":n.join("/")},parentName:function(){return this.parentPath&&this.parentPath.split("/").pop()},backToText:function(){return"/"===this.parentPath?t("photos","Back to {folder}",{folder:this.rootTitle}):t("photos","Back to {folder}",{folder:this.parentName})},to:function(){var n=/^\/?(.*)/i.exec(this.parentPath)[1],t=Object.assign({},this.$route,{params:this.params||{path:n}}),e=t.name,i=t.params;return""===n?{name:e}:decodeURIComponent(this.$router.resolve({name:e,params:i}).resolved.path)}},methods:{folderUp:function(){this.$router.push(this.to)},refresh:function(){this.$emit("refresh")},toggleNavigationButton:function(n){document.querySelector("button.app-navigation-toggle").style.display=n?"none":null}}};var l=i(93379),s=i.n(l),c=i(7795),p=i.n(c),d=i(90569),A=i.n(d),f=i(3565),g=i.n(f),u=i(19216),h=i.n(u),m=i(44589),C=i.n(m),v=i(6179),_={};_.styleTagTransform=C(),_.setAttributes=g(),_.insert=A().bind(null,"head"),_.domAPI=p(),_.insertStyleElement=h();s()(v.Z,_);v.Z&&v.Z.locals&&v.Z.locals;var y=i(9154),b={};b.styleTagTransform=C(),b.setAttributes=g(),b.insert=A().bind(null,"head"),b.domAPI=p(),b.insertStyleElement=h();s()(y.Z,b);y.Z&&y.Z.locals&&y.Z.locals;const x=(0,i(51900).Z)(r,(function(){var n=this,t=n.$createElement,e=n._self._c||t;return e("div",{staticClass:"photos-navigation",class:{"photos-navigation--root":n.isRoot},attrs:{role:"toolbar"}},[n.isRoot?n._e():e("NcButton",{staticClass:"photos-navigation__back",attrs:{type:"tertiary"},on:{click:n.folderUp},scopedSlots:n._u([{key:"icon",fn:function(){return[e("ArrowLeft",{attrs:{size:20}})]},proxy:!0}],null,!1,1821202730)}),n._v(" "),e("div",{staticClass:"photos-navigation__title"},[e("h2",{staticClass:"photos-navigation__title__main",on:{click:n.refresh}},[n._v("\n\t\t\t"+n._s(n.name)+"\n\t\t")]),n._v(" "),e("div",{staticClass:"photos-navigation__title__sub"}),n._v(" "),n._t("subtitle")],2),n._v(" "),n.$slots.default?e("div",{staticClass:"photos-navigation__content"},[n._t("default")],2):n._e(),n._v(" "),e("NcLoadingIcon",{directives:[{name:"show",rawName:"v-show",value:n.loading,expression:"loading"}],staticClass:"photos-navigation__loader"}),n._v(" "),e("div",{staticClass:"photos-navigation__content-right"},[n._t("right")],2)],1)}),[],!1,null,"44b6cd5e",null).exports},80917:n=>{"use strict";n.exports='folder'},80950:()=>{},46601:()=>{},89214:()=>{},96419:()=>{},56353:()=>{},8623:()=>{},7748:()=>{},85568:()=>{},69386:()=>{},31616:()=>{},56619:()=>{},77108:()=>{}}]); -//# sourceMappingURL=photos-node_modules_vue-material-design-icons_DownloadMultiple_vue-src_components_Collection_Collect-97efb0.js.map?v=654d557bf9b6f114a9ed \ No newline at end of file diff --git a/js/photos-node_modules_vue-material-design-icons_DownloadMultiple_vue-src_components_Collection_Collect-97efb0.js.map b/js/photos-node_modules_vue-material-design-icons_DownloadMultiple_vue-src_components_Collection_Collect-97efb0.js.map deleted file mode 100644 index 4c884937b..000000000 --- a/js/photos-node_modules_vue-material-design-icons_DownloadMultiple_vue-src_components_Collection_Collect-97efb0.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-node_modules_vue-material-design-icons_DownloadMultiple_vue-src_components_Collection_Collect-97efb0.js?v=654d557bf9b6f114a9ed","mappings":"uPAGIA,E,MAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,oNAAqN,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,+DAA+D,MAAQ,GAAG,SAAW,yEAAyE,eAAiB,CAAC,6/BAA6kC,WAAa,MAEniD,S,mFCJIH,E,MAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,0lDAA2lD,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,8CAA8C,MAAQ,GAAG,SAAW,mjBAAmjB,eAAiB,CAAC,4hFAA4mF,WAAa,MAEj6J,S,kFCJIH,E,MAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,qRAAsR,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,mDAAmD,MAAQ,GAAG,SAAW,qEAAqE,eAAiB,CAAC,w0CAAw5C,WAAa,MAE/5D,S,kFCJIH,E,MAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,46BAA66B,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,mDAAmD,MAAQ,GAAG,SAAW,0UAA0U,eAAiB,CAAC,u1DAAu6D,WAAa,MAE10G,S,gDCaA,MCpB+G,EDoB/G,CACEC,KAAM,kBACNC,MAAO,CAAC,SACRC,MAAO,CACLC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,E,SAAA,GACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,yCAAyCC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,8GAA8G,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GACnoB,IDUpB,EACA,KACA,KACA,MAI8B,O,gDEEhC,MCpBoH,EDoBpH,CACEzB,KAAM,uBACNC,MAAO,CAAC,SACRC,MAAO,CACLC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,E,SAAA,GACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,8CAA8CC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,gEAAgE,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GAC1lB,IDUpB,EACA,KACA,KACA,MAI8B,O,gDEEhC,MCpB6G,EDoB7G,CACEzB,KAAM,gBACNC,MAAO,CAAC,SACRC,MAAO,CACLC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,E,SAAA,GACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,uCAAuCC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,iQAAiQ,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GACpxB,IDUpB,EACA,KACA,KACA,MAI8B,O,gDElBhC,I,qvBCuEA,MCvEwL,EDuExL,CACA,yBAEA,YACA,gBACA,wBACA,gCACA,oBACA,UAGA,QACA,IACA,YAGA,OACA,YACA,YACA,sBAGA,mBACA,WACA,aAGA,SACA,aACA,YAGA,OACA,aACA,YAGA,WACA,SACA,cAIA,KA3CA,WA4CA,OACA,qBACA,sDAEA,EAEA,S,+VAAA,KACA,SACA,WAIA,SACA,WADA,SACA,cACA,gBACA,iBACA,WACA,gHACA,mRACA,mBAEA,I,qIE7HIC,EAAU,CAAC,EAEfA,EAAQC,kBAAoB,IAC5BD,EAAQE,cAAgB,IAElBF,EAAQG,OAAS,SAAc,KAAM,QAE3CH,EAAQI,OAAS,IACjBJ,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKJ,KAAW,YAAiB,WCPlD,SAXgB,E,SAAA,GACd,GJTW,WAAa,IAAIhB,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,YAA2BoB,IAAnBtB,EAAIuB,YAA6BvB,EAAIwB,QAA+KxB,EAAS,MAAEI,EAAG,iBAAiB,CAACI,MAAM,CAAC,MAAQR,EAAIyB,EAAE,SAAU,uBAAuB,CAACrB,EAAG,cAAc,CAACI,MAAM,CAAC,KAAO,QAAQkB,KAAK,UAAU,GAAGtB,EAAG,MAAM,CAACG,YAAY,cAAc,CAACP,EAAI2B,GAAG,SAAS,KAAK,CAAC,gBAAkB3B,EAAI4B,kBAAkB5B,EAAIa,GAAG,KAAuC,IAAjCb,EAAI6B,kBAAkBC,QAAiB9B,EAAIwB,QAAiCxB,EAAIe,KAA5Bf,EAAI2B,GAAG,iBAA0B3B,EAAIa,GAAG,UAAyBS,IAAnBtB,EAAIuB,WAA0BnB,EAAG,kBAAkB,CAACG,YAAY,oBAAoBC,MAAM,CAAC,oBAAoBR,EAAI+B,WAAW,WAAW/B,EAAI6B,kBAAkB,cAAc7B,EAAIgC,SAAW,IAAM,IAAI,QAAUhC,EAAIwB,SAASS,YAAYjC,EAAIkC,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASC,GACp6B,IAAIC,EAAOD,EAAIC,KACXC,EAAaF,EAAIE,WACrB,OAAOnC,EAAG,OAAO,CAACI,MAAM,CAAC,KAAOR,EAAIwC,MAAMF,EAAKjD,IAAI,mBAAkB,EAAK,UAAsC,IAA3BW,EAAIyC,UAAUH,EAAKjD,IAAa,WAAakD,EAAW,UAAYvC,EAAI0C,WAAWjC,GAAG,CAAC,MAAQT,EAAI2C,WAAW,iBAAiB3C,EAAI4C,qBAAqB,IAAI,MAAK,EAAM,cAAc5C,EAAIe,MAAM,GAHrIX,EAAG,iBAAiB,CAACG,YAAY,kCAAkCC,MAAM,CAAC,MAAQR,EAAIyB,EAAE,SAAU,oCAAoC,CAACrB,EAAG,wBAAwB,EAG3B,GAChQ,IIQpB,EACA,KACA,WACA,MAI8B,O,gDCnBhC,I,keCkGA,MClG4K,EDkG5K,CACA,mBAEA,YACA,SACA,oBACA,cACA,oBACA,8BACA,kBAGA,SAIA,iBAJA,SAIA,GACA,0CACA,GAEA,QACA,IACA,IACA,IACA,KAGA,OAEA,aACA,YACA,aAIA,cACA,WACA,8BAIA,SACA,aACA,aAIA,KA/CA,WAgDA,OACA,kBACA,iBACA,eACA,qBAGA,EAEA,S,+VAAA,KACA,SACA,WAIA,OACA,WADA,SACA,GACA,0BACA,sBAEA,GAGA,SACA,SADA,WAEA,wCACA,EAEA,gBALA,WAMA,+CACA,I,qIErKIY,EAAU,CAAC,EAEfA,EAAQC,kBAAoB,IAC5BD,EAAQE,cAAgB,IAElBF,EAAQG,OAAS,SAAc,KAAM,QAE3CH,EAAQI,OAAS,IACjBJ,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKJ,KAAW,YAAiB,WCPlD,SAXgB,E,SAAA,GACd,GJTW,WAAa,IAAIhB,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACG,YAAY,eAAe,CAACH,EAAG,MAAM,CAACG,YAAY,wBAAwB,CAACH,EAAG,MAAM,CAACG,YAAY,0BAA0BsC,MAAM,CAAC,uCAAkE,IAA1B7C,EAAI8C,WAAWhB,SAAe9B,EAAI+C,GAAI/C,EAAc,YAAE,SAASgD,GAAO,OAAO5C,EAAG,MAAM,CAAC+B,IAAIa,EAAMzC,YAAY,iCAAiCsC,MAAM,CAACI,SAAUjD,EAAIkD,cAAgBF,GAAOvC,GAAG,CAAC,MAAQ,SAASC,GAAQV,EAAIkD,YAAcF,CAAK,IAAI,CAAChD,EAAIa,GAAG,aAAab,EAAIc,GAAGd,EAAImD,GAAG,mBAAPnD,CAA2BgD,IAAQ,aAAa,IAAG,GAAGhD,EAAIa,GAAG,KAAKT,EAAG,kBAAkB,CAACG,YAAY,yBAAyBsC,MAAM,CAAC,sCAAiE,IAA1B7C,EAAI8C,WAAWhB,QAActB,MAAM,CAAC,sBAAsBR,EAAIoD,eAAe,gBAAgBpD,EAAIyB,EAAE,SAAU,sCAAsC,SAAWzB,EAAI8C,WAAW,QAAU9C,EAAIqD,aAAa,cAAc,IAAI,wBAAwB,GAAG,oBAAoBrD,EAAIkD,aAAazC,GAAG,CAAC,eAAeT,EAAIsD,UAAUrB,YAAYjC,EAAIkC,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASC,GACvjC,IAAIC,EAAOD,EAAIC,KACXiB,EAASlB,EAAIkB,OACbhB,EAAaF,EAAIE,WACrB,MAAO,CAAED,EAAkB,cAAElC,EAAG,KAAK,CAACG,YAAY,iBAAiBiD,MAAM,CAAGD,OAASA,EAAS,MAAQ/C,MAAM,CAAC,GAAM,8BAAiC8B,EAAO,KAAK,CAACtC,EAAIa,GAAG,eAAeb,EAAIc,GAAGd,EAAImD,GAAG,mBAAPnD,CAA2BsC,EAAKjD,KAAK,gBAAgBe,EAAG,OAAO,CAACI,MAAM,CAAC,KAAOR,EAAIwC,MAAMF,EAAKjD,IAAI,mBAAkB,EAAK,UAAsC,IAA3BW,EAAIyC,UAAUH,EAAKjD,IAAa,WAAakD,EAAW,UAAYvC,EAAI0C,WAAWjC,GAAG,CAAC,iBAAiBT,EAAI4C,sBAAsB,QAAQ,GAAG5C,EAAIa,GAAG,KAAKT,EAAG,MAAM,CAACG,YAAY,wBAAwB,CAACH,EAAG,eAAe,CAACI,MAAM,CAAC,OAASR,EAAIyD,aAAa,QAAUzD,EAAI0D,cAAc,YAAc1D,EAAI2D,eAAe,UAAW,GAAMlD,GAAG,CAAC,SAAWT,EAAIsD,YAAYtD,EAAIa,GAAG,KAAKT,EAAG,WAAW,CAACI,MAAM,CAAC,KAAO,UAAU,SAAWR,EAAIwB,SAA0C,IAA/BxB,EAAI4B,gBAAgBE,QAAcrB,GAAG,CAAC,MAAQT,EAAI4D,iBAAiB3B,YAAYjC,EAAIkC,GAAG,CAAC,CAACC,IAAI,OAAOC,GAAG,WAAW,MAAO,CAAGpC,EAAIwB,QAAyBxB,EAAIe,KAApBX,EAAG,aAAsBJ,EAAIa,GAAG,KAAMb,EAAW,QAAEI,EAAG,iBAAiBJ,EAAIe,KAAK,EAAE8C,OAAM,MAAS,CAAC7D,EAAIa,GAAG,WAAWb,EAAIc,GAAGd,EAAIyB,EAAE,SAAU,uBAAwB,CAAEqC,YAAa9D,EAAI8D,eAAgB,aAAa,IAAI,GAChkC,IIOpB,EACA,KACA,WACA,MAI8B,O,gDCnBhC,I,sBC6DA,MC7DiL,ED6DjL,CACA,wBAEA,YACA,oBACA,oBACA,+BAGA,gBAEA,OACA,SACA,aACA,YAEA,MACA,YACA,aAEA,OACA,YACA,aAEA,WACA,YACA,8BAGA,QACA,YACA,eAIA,UACA,OADA,WAEA,sBAEA,OADA,gCACA,CACA,EAEA,KAPA,WAQA,mBACA,eAEA,UACA,EAEA,WAdA,WAeA,2BACA,QACA,kBACA,kCACA,IACA,WACA,EAEA,WAvBA,WAwBA,wDACA,EAEA,WA3BA,WA4BA,4BACA,uDAEA,uDACA,EAUA,GA1CA,WA6CA,IACA,EADA,YACA,yBAGA,gCACA,+BADA,oBAMA,aACA,SAIA,yEACA,GAGA,SACA,SADA,WAEA,0BACA,EAEA,QALA,WAMA,qBACA,EAEA,uBATA,SASA,GAEA,uDACA,2BACA,I,oIElKI9C,EAAU,CAAC,EAEfA,EAAQC,kBAAoB,IAC5BD,EAAQE,cAAgB,IAElBF,EAAQG,OAAS,SAAc,KAAM,QAE3CH,EAAQI,OAAS,IACjBJ,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKJ,KAAW,YAAiB,W,cCf9C,EAAU,CAAC,EAEf,EAAQC,kBAAoB,IAC5B,EAAQC,cAAgB,IAElB,EAAQC,OAAS,SAAc,KAAM,QAE3C,EAAQC,OAAS,IACjB,EAAQC,mBAAqB,IAEhB,IAAI,IAAS,GAKJ,KAAW,YAAiB,WCNlD,SAXgB,E,SAAA,GACd,GLVW,WAAa,IAAIrB,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACG,YAAY,oBAAoBsC,MAAM,CAAC,0BAA2B7C,EAAI+D,QAAQvD,MAAM,CAAC,KAAO,YAAY,CAAGR,EAAI+D,OAAmP/D,EAAIe,KAA/OX,EAAG,WAAW,CAACG,YAAY,0BAA0BC,MAAM,CAAC,KAAO,YAAYC,GAAG,CAAC,MAAQT,EAAIgE,UAAU/B,YAAYjC,EAAIkC,GAAG,CAAC,CAACC,IAAI,OAAOC,GAAG,WAAW,MAAO,CAAChC,EAAG,YAAY,CAACI,MAAM,CAAC,KAAO,MAAM,EAAEqD,OAAM,IAAO,MAAK,EAAM,cAAuB7D,EAAIa,GAAG,KAAKT,EAAG,MAAM,CAACG,YAAY,4BAA4B,CAACH,EAAG,KAAK,CAACG,YAAY,iCAAiCE,GAAG,CAAC,MAAQT,EAAIiE,UAAU,CAACjE,EAAIa,GAAG,WAAWb,EAAIc,GAAGd,EAAIV,MAAM,YAAYU,EAAIa,GAAG,KAAKT,EAAG,MAAM,CAACG,YAAY,kCAAkCP,EAAIa,GAAG,KAAKb,EAAI2B,GAAG,aAAa,GAAG3B,EAAIa,GAAG,KAAMb,EAAIkE,OAAc,QAAE9D,EAAG,MAAM,CAACG,YAAY,8BAA8B,CAACP,EAAI2B,GAAG,YAAY,GAAG3B,EAAIe,KAAKf,EAAIa,GAAG,KAAKT,EAAG,gBAAgB,CAAC+D,WAAW,CAAC,CAAC7E,KAAK,OAAO8E,QAAQ,SAASC,MAAOrE,EAAW,QAAEsE,WAAW,YAAY/D,YAAY,8BAA8BP,EAAIa,GAAG,KAAKT,EAAG,MAAM,CAACG,YAAY,oCAAoC,CAACP,EAAI2B,GAAG,UAAU,IAAI,EAAE,GACvlC,IKYpB,EACA,KACA,WACA,MAI8B,O","sources":["webpack:///photos/src/components/Collection/CollectionContent.vue?vue&type=style&index=0&id=312d69fb&lang=scss&scoped=true&","webpack:///photos/src/components/FilesPicker.vue?vue&type=style&index=0&id=0810cf23&lang=scss&scoped=true&","webpack:///photos/src/components/HeaderNavigation.vue?vue&type=style&index=0&lang=scss&","webpack:///photos/src/components/HeaderNavigation.vue?vue&type=style&index=1&id=44b6cd5e&lang=scss&scoped=true&","webpack:///photos/node_modules/vue-material-design-icons/AlertCircle.vue","webpack:///photos/node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/AlertCircle.vue?489a","webpack:///photos/node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=template&id=2a2453f8&","webpack:///photos/node_modules/vue-material-design-icons/DownloadMultiple.vue","webpack:///photos/node_modules/vue-material-design-icons/DownloadMultiple.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/DownloadMultiple.vue?2e77","webpack:///photos/node_modules/vue-material-design-icons/DownloadMultiple.vue?vue&type=template&id=63c2fc60&","webpack:///photos/node_modules/vue-material-design-icons/ImagePlus.vue","webpack:///photos/node_modules/vue-material-design-icons/ImagePlus.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/ImagePlus.vue?8b12","webpack:///photos/node_modules/vue-material-design-icons/ImagePlus.vue?vue&type=template&id=6b6ee9f3&","webpack:///photos/src/components/Collection/CollectionContent.vue?vue&type=template&id=312d69fb&scoped=true&","webpack:///photos/src/components/Collection/CollectionContent.vue","webpack:///photos/src/components/Collection/CollectionContent.vue?vue&type=script&lang=js&","webpack://photos/./src/components/Collection/CollectionContent.vue?99f2","webpack://photos/./src/components/Collection/CollectionContent.vue?d20d","webpack:///photos/src/components/FilesPicker.vue?vue&type=template&id=0810cf23&scoped=true&","webpack:///photos/src/components/FilesPicker.vue","webpack:///photos/src/components/FilesPicker.vue?vue&type=script&lang=js&","webpack://photos/./src/components/FilesPicker.vue?5932","webpack://photos/./src/components/FilesPicker.vue?2782","webpack:///photos/src/components/HeaderNavigation.vue?vue&type=template&id=44b6cd5e&scoped=true&","webpack:///photos/src/components/HeaderNavigation.vue","webpack:///photos/src/components/HeaderNavigation.vue?vue&type=script&lang=js&","webpack://photos/./src/components/HeaderNavigation.vue?29e2","webpack://photos/./src/components/HeaderNavigation.vue?ad9c","webpack://photos/./src/components/HeaderNavigation.vue?6702"],"sourcesContent":["// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".collection[data-v-312d69fb]{display:flex;flex-direction:column}.collection__media[data-v-312d69fb]{padding:0 64px}@media only screen and (max-width: 1200px){.collection__media[data-v-312d69fb]{padding:0 4px}}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/Collection/CollectionContent.vue\"],\"names\":[],\"mappings\":\"AA8IA,6BACC,YAAA,CACA,qBAAA,CAEA,oCACC,cAAA,CAEA,2CAHD,oCAIE,aAAA,CAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.collection {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\n\\t&__media {\\n\\t\\tpadding: 0 64px;\\n\\n\\t\\t@media only screen and (max-width: 1200px) {\\n\\t\\t\\tpadding: 0 4px;\\n\\t\\t}\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".file-picker[data-v-0810cf23]{display:flex;flex-direction:column;padding:12px}.file-picker__content[data-v-0810cf23]{display:flex;align-items:flex-start;flex-grow:1;height:500px}.file-picker__navigation[data-v-0810cf23]{flex-basis:200px;overflow:scroll;margin-right:8px;padding-right:8px;height:100%}@media only screen and (max-width: 1200px){.file-picker__navigation[data-v-0810cf23]{flex-basis:100px}}.file-picker__navigation--placeholder[data-v-0810cf23]{background:var(--color-primary-light);border-radius:var(--border-radius-large)}.file-picker__navigation__month[data-v-0810cf23]{font-weight:bold;font-size:16px;border-radius:var(--border-radius-pill);padding:8px 16px;margin:4px 0;cursor:pointer}@media only screen and (max-width: 1200px){.file-picker__navigation__month[data-v-0810cf23]{text-align:center}}.file-picker__navigation__month[data-v-0810cf23]:hover{background:var(--color-background-dark)}.file-picker__navigation__month.selected[data-v-0810cf23]{background:var(--color-primary-element-lighter)}.file-picker__file-list[data-v-0810cf23]{flex-grow:1;min-width:0;height:100%}.file-picker__file-list--placeholder[data-v-0810cf23]{background:var(--color-primary-light);border-radius:var(--border-radius-large)}.file-picker__file-list .section-header[data-v-0810cf23]{font-weight:bold;font-size:20px;padding:8px 0 4px 0}.file-picker__file-list[data-v-0810cf23] .empty-content{position:absolute;width:100%;margin-top:0;height:100%;display:flex;flex-direction:column;justify-content:center}.file-picker__actions[data-v-0810cf23]{display:flex;justify-content:space-between;justify-items:center;padding-top:16px}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/FilesPicker.vue\"],\"names\":[],\"mappings\":\"AAuLA,8BACC,YAAA,CACA,qBAAA,CACA,YAAA,CAEA,uCACC,YAAA,CACA,sBAAA,CACA,WAAA,CACA,YAAA,CAGD,0CACC,gBAAA,CACA,eAAA,CACA,gBAAA,CACA,iBAAA,CACA,WAAA,CAEA,2CAPD,0CAQE,gBAAA,CAAA,CAGD,uDACC,qCAAA,CACA,wCAAA,CAGD,iDACC,gBAAA,CACA,cAAA,CACA,uCAAA,CACA,gBAAA,CACA,YAAA,CACA,cAAA,CAEA,2CARD,iDASE,iBAAA,CAAA,CAGD,uDACC,uCAAA,CAGD,0DACC,+CAAA,CAKH,yCACC,WAAA,CACA,WAAA,CACA,WAAA,CAEA,sDACC,qCAAA,CACA,wCAAA,CAGD,yDACC,gBAAA,CACA,cAAA,CACA,mBAAA,CAGD,yDACC,iBAAA,CACA,UAAA,CACA,YAAA,CACA,WAAA,CACA,YAAA,CACA,qBAAA,CACA,sBAAA,CAIF,uCACC,YAAA,CACA,6BAAA,CACA,oBAAA,CACA,gBAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.file-picker {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\tpadding: 12px;\\n\\n\\t&__content {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: flex-start;\\n\\t\\tflex-grow: 1;\\n\\t\\theight: 500px;\\n\\t}\\n\\n\\t&__navigation {\\n\\t\\tflex-basis: 200px;\\n\\t\\toverflow: scroll;\\n\\t\\tmargin-right: 8px;\\n\\t\\tpadding-right: 8px;\\n\\t\\theight: 100%;\\n\\n\\t\\t@media only screen and (max-width: 1200px) {\\n\\t\\t\\tflex-basis: 100px;\\n\\t\\t}\\n\\n\\t\\t&--placeholder {\\n\\t\\t\\tbackground: var(--color-primary-light);\\n\\t\\t\\tborder-radius: var(--border-radius-large);\\n\\t\\t}\\n\\n\\t\\t&__month {\\n\\t\\t\\tfont-weight: bold;\\n\\t\\t\\tfont-size: 16px;\\n\\t\\t\\tborder-radius: var(--border-radius-pill);\\n\\t\\t\\tpadding: 8px 16px;\\n\\t\\t\\tmargin: 4px 0;\\n\\t\\t\\tcursor: pointer;\\n\\n\\t\\t\\t@media only screen and (max-width: 1200px) {\\n\\t\\t\\t\\ttext-align: center;\\n\\t\\t\\t}\\n\\n\\t\\t\\t&:hover {\\n\\t\\t\\t\\tbackground: var(--color-background-dark);\\n\\t\\t\\t}\\n\\n\\t\\t\\t&.selected {\\n\\t\\t\\t\\tbackground: var(--color-primary-element-lighter);\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t&__file-list {\\n\\t\\tflex-grow: 1;\\n\\t\\tmin-width: 0;\\n\\t\\theight: 100%;\\n\\n\\t\\t&--placeholder {\\n\\t\\t\\tbackground: var(--color-primary-light);\\n\\t\\t\\tborder-radius: var(--border-radius-large);\\n\\t\\t}\\n\\n\\t\\t.section-header {\\n\\t\\t\\tfont-weight: bold;\\n\\t\\t\\tfont-size: 20px;\\n\\t\\t\\tpadding: 8px 0 4px 0;\\n\\t\\t}\\n\\n\\t\\t::v-deep .empty-content {\\n\\t\\t\\tposition: absolute;\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\tmargin-top: 0;\\n\\t\\t\\theight: 100%;\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tflex-direction: column;\\n\\t\\t\\tjustify-content: center;\\n\\t\\t}\\n\\t}\\n\\n\\t&__actions {\\n\\t\\tdisplay: flex;\\n\\t\\tjustify-content: space-between;\\n\\t\\tjustify-items: center;\\n\\t\\tpadding-top: 16px;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \":root{--photos-navigation-height: 64px;--photos-navigation-spacing: calc((var(--photos-navigation-height) - 44px) / 2)}button.app-navigation-toggle{top:0 !important;right:calc(var(--photos-navigation-height)*-1) !important;margin:var(--photos-navigation-spacing) !important}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/HeaderNavigation.vue\"],\"names\":[],\"mappings\":\"AAoLA,MACC,gCAAA,CAEA,+EAAA,CAID,6BAEC,gBAAA,CACA,yDAAA,CACA,kDAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n:root {\\n\\t--photos-navigation-height: 64px;\\n\\t// header height - button size\\n\\t--photos-navigation-spacing: calc((var(--photos-navigation-height) - 44px) / 2);\\n}\\n\\n// Properly position the navigation toggle button\\nbutton.app-navigation-toggle {\\n\\t// App-navigation have a 4px margin top\\n\\ttop: 0 !important;\\n\\tright: calc(var(--photos-navigation-height) * -1) !important;\\n\\tmargin: var(--photos-navigation-spacing) !important;\\n}\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".photos-navigation[data-v-44b6cd5e]{position:-webkit-sticky;position:sticky;z-index:20;top:0;display:flex;align-items:center;width:100%;min-height:var(--photos-navigation-height);padding:0 var(--photos-navigation-height);background:var(--color-main-background)}.photos-navigation__back[data-v-44b6cd5e]{position:absolute;left:0;margin:var(--photos-navigation-spacing) !important}.photos-navigation__title[data-v-44b6cd5e]{max-width:50%;margin-right:calc(2*var(--photos-navigation-spacing));display:flex;flex-direction:column}.photos-navigation__title__main[data-v-44b6cd5e]{margin:0;cursor:pointer}.photos-navigation__title__main[data-v-44b6cd5e],.photos-navigation__title__sub[data-v-44b6cd5e]{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.photos-navigation__loader[data-v-44b6cd5e]{margin-left:32px}.photos-navigation__content-right[data-v-44b6cd5e]{display:flex;align-items:center;justify-content:center;margin-left:auto}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/HeaderNavigation.vue\"],\"names\":[],\"mappings\":\"AAqMA,oCACC,uBAAA,CAAA,eAAA,CACA,UAAA,CACA,KAAA,CACA,YAAA,CACA,kBAAA,CACA,UAAA,CACA,0CAAA,CACA,yCAAA,CACA,uCAAA,CAEA,0CAEC,iBAAA,CACA,MAAA,CACA,kDAAA,CAGD,2CACC,aAAA,CACA,qDAAA,CACA,YAAA,CACA,qBAAA,CAEA,iDACC,QAAA,CACA,cAAA,CAGD,iGACC,eAAA,CACA,kBAAA,CACA,sBAAA,CAIF,4CACC,gBAAA,CAGD,mDACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,gBAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.photos-navigation {\\n\\tposition: sticky;\\n\\tz-index: 20;\\n\\ttop: 0;\\n\\tdisplay: flex;\\n\\talign-items: center;\\n\\twidth: 100%;\\n\\tmin-height: var(--photos-navigation-height);\\n\\tpadding: 0 var(--photos-navigation-height);\\n\\tbackground: var(--color-main-background);\\n\\n\\t&__back {\\n\\t\\t// Above the navigation menu\\n\\t\\tposition: absolute;\\n\\t\\tleft: 0;\\n\\t\\tmargin: var(--photos-navigation-spacing) !important;\\n\\t}\\n\\n\\t&__title {\\n\\t\\tmax-width: 50%;\\n\\t\\tmargin-right: calc(2 * var(--photos-navigation-spacing));\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\n\\t\\t&__main {\\n\\t\\t\\tmargin: 0;\\n\\t\\t\\tcursor: pointer;\\n\\t\\t}\\n\\n\\t\\t&__main, &__sub {\\n\\t\\t\\toverflow: hidden;\\n\\t\\t\\twhite-space: nowrap;\\n\\t\\t\\ttext-overflow: ellipsis;\\n\\t\\t}\\n\\t}\\n\\n\\t&__loader {\\n\\t\\tmargin-left: 32px;\\n\\t}\\n\\n\\t&__content-right {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\tjustify-content: center;\\n\\t\\tmargin-left: auto;\\n\\t}\\n}\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./AlertCircle.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./AlertCircle.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AlertCircle.vue?vue&type=template&id=2a2453f8&\"\nimport script from \"./AlertCircle.vue?vue&type=script&lang=js&\"\nexport * from \"./AlertCircle.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon alert-circle-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M13,13H11V7H13M13,17H11V15H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./DownloadMultiple.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./DownloadMultiple.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./DownloadMultiple.vue?vue&type=template&id=63c2fc60&\"\nimport script from \"./DownloadMultiple.vue?vue&type=script&lang=js&\"\nexport * from \"./DownloadMultiple.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon download-multiple-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M9,1V7H5L12,14L19,7H15V1H9M5,16V18H19V16H5M5,20V22H19V20H5Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ImagePlus.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ImagePlus.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ImagePlus.vue?vue&type=template&id=6b6ee9f3&\"\nimport script from \"./ImagePlus.vue?vue&type=script&lang=js&\"\nexport * from \"./ImagePlus.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon image-plus-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M18 15V18H15V20H18V23H20V20H23V18H20V15H18M13.3 21H5C3.9 21 3 20.1 3 19V5C3 3.9 3.9 3 5 3H19C20.1 3 21 3.9 21 5V13.3C20.4 13.1 19.7 13 19 13C17.9 13 16.8 13.3 15.9 13.9L14.5 12L11 16.5L8.5 13.5L5 18H13.1C13 18.3 13 18.7 13 19C13 19.7 13.1 20.4 13.3 21Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.collection === undefined && !_vm.loading)?_c('NcEmptyContent',{staticClass:\"empty-content-with-illustration\",attrs:{\"title\":_vm.t('photos', 'This collection does not exist')}},[_c('FolderMultipleImage')],1):(_vm.error)?_c('NcEmptyContent',{attrs:{\"title\":_vm.t('photos', 'An error occurred')}},[_c('AlertCircle',{attrs:{\"slot\":\"icon\"},slot:\"icon\"})],1):_c('div',{staticClass:\"collection\"},[_vm._t(\"header\",null,{\"selectedFileIds\":_vm.selectedFileIds}),_vm._v(\" \"),(_vm.collectionFileIds.length === 0 && !_vm.loading)?_vm._t(\"empty-content\"):_vm._e(),_vm._v(\" \"),(_vm.collection !== undefined)?_c('FilesListViewer',{staticClass:\"collection__media\",attrs:{\"container-element\":_vm.appContent,\"file-ids\":_vm.collectionFileIds,\"base-height\":_vm.isMobile ? 120 : 200,\"loading\":_vm.loading},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar file = ref.file;\nvar visibility = ref.visibility;\nreturn _c('File',{attrs:{\"file\":_vm.files[file.id],\"allow-selection\":true,\"selected\":_vm.selection[file.id] === true,\"visibility\":visibility,\"semaphore\":_vm.semaphore},on:{\"click\":_vm.openViewer,\"select-toggled\":_vm.onFileSelectToggle}})}}],null,false,3592900521)}):_vm._e()],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CollectionContent.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!./CollectionContent.vue?vue&type=script&lang=js&\"","\n import API from \"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./CollectionContent.vue?vue&type=style&index=0&id=312d69fb&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./CollectionContent.vue?vue&type=style&index=0&id=312d69fb&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./CollectionContent.vue?vue&type=template&id=312d69fb&scoped=true&\"\nimport script from \"./CollectionContent.vue?vue&type=script&lang=js&\"\nexport * from \"./CollectionContent.vue?vue&type=script&lang=js&\"\nimport style0 from \"./CollectionContent.vue?vue&type=style&index=0&id=312d69fb&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 \"312d69fb\",\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:\"file-picker\"},[_c('div',{staticClass:\"file-picker__content\"},[_c('div',{staticClass:\"file-picker__navigation\",class:{'file-picker__navigation--placeholder': _vm.monthsList.length === 0}},_vm._l((_vm.monthsList),function(month){return _c('div',{key:month,staticClass:\"file-picker__navigation__month\",class:{selected: _vm.targetMonth === month},on:{\"click\":function($event){_vm.targetMonth = month}}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm._f(\"dateMonthAndYear\")(month))+\"\\n\\t\\t\\t\")])}),0),_vm._v(\" \"),_c('FilesListViewer',{staticClass:\"file-picker__file-list\",class:{'file-picker__file-list--placeholder': _vm.monthsList.length === 0},attrs:{\"file-ids-by-section\":_vm.fileIdsByMonth,\"empty-message\":_vm.t('photos', 'There are no photos or videos yet!'),\"sections\":_vm.monthsList,\"loading\":_vm.loadingFiles,\"base-height\":100,\"section-header-height\":50,\"scroll-to-section\":_vm.targetMonth},on:{\"need-content\":_vm.getFiles},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar file = ref.file;\nvar height = ref.height;\nvar visibility = ref.visibility;\nreturn [(file.sectionHeader)?_c('h3',{staticClass:\"section-header\",style:({ height: (height + \"px\")}),attrs:{\"id\":(\"file-picker-section-header-\" + (file.id))}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm._f(\"dateMonthAndYear\")(file.id))+\"\\n\\t\\t\\t\\t\")]):_c('File',{attrs:{\"file\":_vm.files[file.id],\"allow-selection\":true,\"selected\":_vm.selection[file.id] === true,\"visibility\":visibility,\"semaphore\":_vm.semaphore},on:{\"select-toggled\":_vm.onFileSelectToggle}})]}}])})],1),_vm._v(\" \"),_c('div',{staticClass:\"file-picker__actions\"},[_c('UploadPicker',{attrs:{\"accept\":_vm.allowedMimes,\"context\":_vm.uploadContext,\"destination\":_vm.photosLocation,\"multiple\":true},on:{\"uploaded\":_vm.getFiles}}),_vm._v(\" \"),_c('NcButton',{attrs:{\"type\":\"primary\",\"disabled\":_vm.loading || _vm.selectedFileIds.length === 0},on:{\"click\":_vm.emitPickedEvent},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(!_vm.loading)?_c('ImagePlus'):_vm._e(),_vm._v(\" \"),(_vm.loading)?_c('NcLoadingIcon'):_vm._e()]},proxy:true}])},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('photos', 'Add to {destination}', { destination: _vm.destination }))+\"\\n\\t\\t\")])],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesPicker.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!./FilesPicker.vue?vue&type=script&lang=js&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./FilesPicker.vue?vue&type=style&index=0&id=0810cf23&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./FilesPicker.vue?vue&type=style&index=0&id=0810cf23&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesPicker.vue?vue&type=template&id=0810cf23&scoped=true&\"\nimport script from \"./FilesPicker.vue?vue&type=script&lang=js&\"\nexport * from \"./FilesPicker.vue?vue&type=script&lang=js&\"\nimport style0 from \"./FilesPicker.vue?vue&type=style&index=0&id=0810cf23&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 \"0810cf23\",\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:\"photos-navigation\",class:{'photos-navigation--root': _vm.isRoot},attrs:{\"role\":\"toolbar\"}},[(!_vm.isRoot)?_c('NcButton',{staticClass:\"photos-navigation__back\",attrs:{\"type\":\"tertiary\"},on:{\"click\":_vm.folderUp},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('ArrowLeft',{attrs:{\"size\":20}})]},proxy:true}],null,false,1821202730)}):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"photos-navigation__title\"},[_c('h2',{staticClass:\"photos-navigation__title__main\",on:{\"click\":_vm.refresh}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.name)+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('div',{staticClass:\"photos-navigation__title__sub\"}),_vm._v(\" \"),_vm._t(\"subtitle\")],2),_vm._v(\" \"),(_vm.$slots.default)?_c('div',{staticClass:\"photos-navigation__content\"},[_vm._t(\"default\")],2):_vm._e(),_vm._v(\" \"),_c('NcLoadingIcon',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.loading),expression:\"loading\"}],staticClass:\"photos-navigation__loader\"}),_vm._v(\" \"),_c('div',{staticClass:\"photos-navigation__content-right\"},[_vm._t(\"right\")],2)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HeaderNavigation.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!./HeaderNavigation.vue?vue&type=script&lang=js&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./HeaderNavigation.vue?vue&type=style&index=0&lang=scss&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./HeaderNavigation.vue?vue&type=style&index=0&lang=scss&\";\n export default content && content.locals ? content.locals : undefined;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./HeaderNavigation.vue?vue&type=style&index=1&id=44b6cd5e&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./HeaderNavigation.vue?vue&type=style&index=1&id=44b6cd5e&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./HeaderNavigation.vue?vue&type=template&id=44b6cd5e&scoped=true&\"\nimport script from \"./HeaderNavigation.vue?vue&type=script&lang=js&\"\nexport * from \"./HeaderNavigation.vue?vue&type=script&lang=js&\"\nimport style0 from \"./HeaderNavigation.vue?vue&type=style&index=0&lang=scss&\"\nimport style1 from \"./HeaderNavigation.vue?vue&type=style&index=1&id=44b6cd5e&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 \"44b6cd5e\",\n null\n \n)\n\nexport default component.exports"],"names":["___CSS_LOADER_EXPORT___","push","module","id","name","emits","props","title","type","String","fillColor","default","size","Number","_vm","this","_h","$createElement","_c","_self","_b","staticClass","attrs","on","$event","$emit","$attrs","_v","_s","_e","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","undefined","collection","loading","t","slot","_t","selectedFileIds","collectionFileIds","length","appContent","isMobile","scopedSlots","_u","key","fn","ref","file","visibility","files","selection","semaphore","openViewer","onFileSelectToggle","class","monthsList","_l","month","selected","targetMonth","_f","fileIdsByMonth","loadingFiles","getFiles","height","style","allowedMimes","uploadContext","photosLocation","emitPickedEvent","proxy","destination","isRoot","folderUp","refresh","$slots","directives","rawName","value","expression"],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-node_modules_vue-material-design-icons_ImageMultiple_vue-src_components_EmptyContent_vue.js b/js/photos-node_modules_vue-material-design-icons_ImageMultiple_vue-src_components_EmptyContent_vue.js deleted file mode 100644 index 875565d18..000000000 --- a/js/photos-node_modules_vue-material-design-icons_ImageMultiple_vue-src_components_EmptyContent_vue.js +++ /dev/null @@ -1,591 +0,0 @@ -(self["webpackChunkphotos"] = self["webpackChunkphotos"] || []).push([["node_modules_vue-material-design-icons_ImageMultiple_vue-src_components_EmptyContent_vue"],{ - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/EmptyContent.vue?vue&type=script&lang=js&": -/*!**********************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/EmptyContent.vue?vue&type=script&lang=js& ***! - \**********************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js"); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'EmptyContent', - props: { - illustrationName: { - type: String, - default: '' - } - }, - - data() { - return { - illustration: '' - }; - }, - - computed: { - /** - * Does this component have an illustration - * - * @return {boolean} - */ - haveIllustration() { - return this.illustrationName !== ''; - }, - - /** - * Is the illustration loaded - * - * @return {boolean} - */ - isLoaded() { - if (!this.haveIllustration) { - return true; - } - - return this.illustration !== ''; - }, - - /** - * The component is ready if the illustration - * is done loading or if there is none - * - * @return {boolean} - */ - isReady() { - return !this.haveIllustration || this.haveIllustration && this.isLoaded; - } - - }, - - /** - * Fetch the new illustration as soon as it changes - */ - watch: { - illustrationName() { - this.getIllustration(); - } - - }, - - beforeMount() { - this.getIllustration(); - }, - - methods: { - /** - * Fetch the illustration as webpack chunk - */ - async getIllustration() { - this.illustration = ''; - - if (this.illustrationName !== '') { - try { - const illustration = await __webpack_require__("./src/assets/Illustrations lazy recursive ^\\.\\/.*\\.svg$")(`./${this.illustrationName}.svg`); - this.illustration = illustration.default; - } catch (error) { - console.error('Could not get the error illustration', error); - } - } - } - - } -}); - -/***/ }), - -/***/ "./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!./src/components/EmptyContent.vue?vue&type=style&index=0&lang=scss&": -/*!**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/components/EmptyContent.vue?vue&type=style&index=0&lang=scss& ***! - \**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".emptycontent {\n grid-column: 1/-1;\n margin-top: 20vh;\n}\n.illustration {\n min-width: 200px;\n max-width: 15%;\n width: 300px;\n margin: auto;\n margin-bottom: 20px;\n position: relative;\n}\n.illustration svg {\n width: 100%;\n height: 100%;\n max-height: 40vh;\n}\n.illustration [fill*=\"6c63ff\"] {\n fill: var(--color-primary-element);\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/EmptyContent.vue?vue&type=style&index=0&lang=scss&": -/*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/components/EmptyContent.vue?vue&type=style&index=0&lang=scss& ***! - \**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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_EmptyContent_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../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!./EmptyContent.vue?vue&type=style&index=0&lang=scss& */ "./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!./src/components/EmptyContent.vue?vue&type=style&index=0&lang=scss&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_EmptyContent_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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_EmptyContent_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_EmptyContent_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_EmptyContent_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/ImageMultiple.vue": -/*!******************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/ImageMultiple.vue ***! - \******************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _ImageMultiple_vue_vue_type_template_id_1fff908f___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./ImageMultiple.vue?vue&type=template&id=1fff908f& */ "./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=template&id=1fff908f&"); -/* harmony import */ var _ImageMultiple_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./ImageMultiple.vue?vue&type=script&lang=js& */ "./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=script&lang=js&"); -/* harmony import */ var _vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - - - -/* normalize component */ -; -var component = (0,_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])( - _ImageMultiple_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _ImageMultiple_vue_vue_type_template_id_1fff908f___WEBPACK_IMPORTED_MODULE_0__.render, - _ImageMultiple_vue_vue_type_template_id_1fff908f___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - null, - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "node_modules/vue-material-design-icons/ImageMultiple.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=script&lang=js&": -/*!******************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=script&lang=js& ***! - \******************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: "ImageMultipleIcon", - emits: ['click'], - props: { - title: { - type: String, - }, - fillColor: { - type: String, - default: "currentColor" - }, - size: { - type: Number, - default: 24 - } - } -}); - - -/***/ }), - -/***/ "./src/components/EmptyContent.vue": -/*!*****************************************!*\ - !*** ./src/components/EmptyContent.vue ***! - \*****************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _EmptyContent_vue_vue_type_template_id_6c3ea49c___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./EmptyContent.vue?vue&type=template&id=6c3ea49c& */ "./src/components/EmptyContent.vue?vue&type=template&id=6c3ea49c&"); -/* harmony import */ var _EmptyContent_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./EmptyContent.vue?vue&type=script&lang=js& */ "./src/components/EmptyContent.vue?vue&type=script&lang=js&"); -/* harmony import */ var _EmptyContent_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./EmptyContent.vue?vue&type=style&index=0&lang=scss& */ "./src/components/EmptyContent.vue?vue&type=style&index=0&lang=scss&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( - _EmptyContent_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _EmptyContent_vue_vue_type_template_id_6c3ea49c___WEBPACK_IMPORTED_MODULE_0__.render, - _EmptyContent_vue_vue_type_template_id_6c3ea49c___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - null, - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/EmptyContent.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/EmptyContent.vue?vue&type=script&lang=js&": -/*!******************************************************************!*\ - !*** ./src/components/EmptyContent.vue?vue&type=script&lang=js& ***! - \******************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_EmptyContent_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EmptyContent.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/EmptyContent.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_EmptyContent_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/components/EmptyContent.vue?vue&type=style&index=0&lang=scss&": -/*!***************************************************************************!*\ - !*** ./src/components/EmptyContent.vue?vue&type=style&index=0&lang=scss& ***! - \***************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_EmptyContent_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/style-loader/dist/cjs.js!../../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!./EmptyContent.vue?vue&type=style&index=0&lang=scss& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/EmptyContent.vue?vue&type=style&index=0&lang=scss&"); - - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=script&lang=js&": -/*!*******************************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=script&lang=js& ***! - \*******************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _vue_loader_lib_index_js_vue_loader_options_ImageMultiple_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/index.js??vue-loader-options!./ImageMultiple.vue?vue&type=script&lang=js& */ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_vue_loader_lib_index_js_vue_loader_options_ImageMultiple_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=template&id=1fff908f&": -/*!*************************************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=template&id=1fff908f& ***! - \*************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_ImageMultiple_vue_vue_type_template_id_1fff908f___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_ImageMultiple_vue_vue_type_template_id_1fff908f___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_ImageMultiple_vue_vue_type_template_id_1fff908f___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../vue-loader/lib/index.js??vue-loader-options!./ImageMultiple.vue?vue&type=template&id=1fff908f& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=template&id=1fff908f&"); - - -/***/ }), - -/***/ "./src/components/EmptyContent.vue?vue&type=template&id=6c3ea49c&": -/*!************************************************************************!*\ - !*** ./src/components/EmptyContent.vue?vue&type=template&id=6c3ea49c& ***! - \************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_EmptyContent_vue_vue_type_template_id_6c3ea49c___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_EmptyContent_vue_vue_type_template_id_6c3ea49c___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_EmptyContent_vue_vue_type_template_id_6c3ea49c___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EmptyContent.vue?vue&type=template&id=6c3ea49c& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/EmptyContent.vue?vue&type=template&id=6c3ea49c&"); - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=template&id=1fff908f&": -/*!****************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=template&id=1fff908f& ***! - \****************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c( - "span", - _vm._b( - { - staticClass: "material-design-icon image-multiple-icon", - attrs: { - "aria-hidden": !_vm.title, - "aria-label": _vm.title, - role: "img", - }, - on: { - click: function ($event) { - return _vm.$emit("click", $event) - }, - }, - }, - "span", - _vm.$attrs, - false - ), - [ - _c( - "svg", - { - staticClass: "material-design-icon__svg", - attrs: { - fill: _vm.fillColor, - width: _vm.size, - height: _vm.size, - viewBox: "0 0 24 24", - }, - }, - [ - _c( - "path", - { - attrs: { - d: "M22,16V4A2,2 0 0,0 20,2H8A2,2 0 0,0 6,4V16A2,2 0 0,0 8,18H20A2,2 0 0,0 22,16M11,12L13.03,14.71L16,11L20,16H8M2,6V20A2,2 0 0,0 4,22H18V20H4V6", - }, - }, - [_vm.title ? _c("title", [_vm._v(_vm._s(_vm.title))]) : _vm._e()] - ), - ] - ), - ] - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/EmptyContent.vue?vue&type=template&id=6c3ea49c&": -/*!***************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/EmptyContent.vue?vue&type=template&id=6c3ea49c& ***! - \***************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _vm.isReady - ? _c("div", { staticClass: "emptycontent" }, [ - _vm.haveIllustration - ? _c("div", { - staticClass: "illustration", - domProps: { innerHTML: _vm._s(_vm.illustration) }, - }) - : _c("div", { staticClass: "icon-error" }), - _vm._v(" "), - _c("h2", [_vm._t("default")], 2), - _vm._v(" "), - _c( - "p", - { - directives: [ - { - name: "show", - rawName: "v-show", - value: _vm.$slots.desc, - expression: "$slots.desc", - }, - ], - }, - [_vm._t("desc")], - 2 - ), - ]) - : _vm._e() -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./src/assets/Illustrations lazy recursive ^\\.\\/.*\\.svg$": -/*!***********************************************************************!*\ - !*** ./src/assets/Illustrations/ lazy ^\.\/.*\.svg$ namespace object ***! - \***********************************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var map = { - "./empty.svg": [ - "./src/assets/Illustrations/empty.svg", - "src_assets_Illustrations_empty_svg" - ], - "./folder.svg": [ - "./src/assets/Illustrations/folder.svg", - "src_assets_Illustrations_folder_svg" - ], - "./images.svg": [ - "./src/assets/Illustrations/images.svg", - "src_assets_Illustrations_images_svg" - ] -}; -function webpackAsyncContext(req) { - if(!__webpack_require__.o(map, req)) { - return Promise.resolve().then(() => { - var e = new Error("Cannot find module '" + req + "'"); - e.code = 'MODULE_NOT_FOUND'; - throw e; - }); - } - - var ids = map[req], id = ids[0]; - return __webpack_require__.e(ids[1]).then(() => { - return __webpack_require__.t(id, 1 | 16); - }); -} -webpackAsyncContext.keys = () => (Object.keys(map)); -webpackAsyncContext.id = "./src/assets/Illustrations lazy recursive ^\\.\\/.*\\.svg$"; -module.exports = webpackAsyncContext; - -/***/ }) - -}]); -//# sourceMappingURL=photos-node_modules_vue-material-design-icons_ImageMultiple_vue-src_components_EmptyContent_vue.js.map?v=3d12e050d77d54900415 \ No newline at end of file diff --git a/js/photos-node_modules_vue-material-design-icons_ImageMultiple_vue-src_components_EmptyContent_vue.js.map b/js/photos-node_modules_vue-material-design-icons_ImageMultiple_vue-src_components_EmptyContent_vue.js.map deleted file mode 100644 index 356285524..000000000 --- a/js/photos-node_modules_vue-material-design-icons_ImageMultiple_vue-src_components_EmptyContent_vue.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-node_modules_vue-material-design-icons_ImageMultiple_vue-src_components_EmptyContent_vue.js?v=3d12e050d77d54900415","mappings":";;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACpHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;ACtCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;ACpCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;;ACvCA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;ACrDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACnCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sources":["webpack:///photos/src/components/EmptyContent.vue?vue&type=script&lang=js&","webpack:///photos/src/components/EmptyContent.vue?vue&type=style&index=0&lang=scss&","webpack://photos/./src/components/EmptyContent.vue?7390","webpack:///photos/node_modules/vue-material-design-icons/ImageMultiple.vue","webpack:///photos/node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=script&lang=js&","webpack:///photos/src/components/EmptyContent.vue","webpack://photos/./src/components/EmptyContent.vue?2b0c","webpack://photos/./node_modules/vue-material-design-icons/ImageMultiple.vue?1443","webpack:///photos/node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=template&id=1fff908f&","webpack:///photos/src/components/EmptyContent.vue?vue&type=template&id=6c3ea49c&","webpack:///photos/src/assets/Illustrations|lazy|/^\\.\\/.*\\.svg$/|groupOptions: {}|namespace object"],"sourcesContent":["//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nexport default {\n name: 'EmptyContent',\n props: {\n illustrationName: {\n type: String,\n default: ''\n }\n },\n\n data() {\n return {\n illustration: ''\n };\n },\n\n computed: {\n /**\n * Does this component have an illustration\n *\n * @return {boolean}\n */\n haveIllustration() {\n return this.illustrationName !== '';\n },\n\n /**\n * Is the illustration loaded\n *\n * @return {boolean}\n */\n isLoaded() {\n if (!this.haveIllustration) {\n return true;\n }\n\n return this.illustration !== '';\n },\n\n /**\n * The component is ready if the illustration\n * is done loading or if there is none\n *\n * @return {boolean}\n */\n isReady() {\n return !this.haveIllustration || this.haveIllustration && this.isLoaded;\n }\n\n },\n\n /**\n * Fetch the new illustration as soon as it changes\n */\n watch: {\n illustrationName() {\n this.getIllustration();\n }\n\n },\n\n beforeMount() {\n this.getIllustration();\n },\n\n methods: {\n /**\n * Fetch the illustration as webpack chunk\n */\n async getIllustration() {\n this.illustration = '';\n\n if (this.illustrationName !== '') {\n try {\n const illustration = await import(`../assets/Illustrations/${this.illustrationName}.svg`);\n this.illustration = illustration.default;\n } catch (error) {\n console.error('Could not get the error illustration', error);\n }\n }\n }\n\n }\n};","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".emptycontent {\\n grid-column: 1/-1;\\n margin-top: 20vh;\\n}\\n.illustration {\\n min-width: 200px;\\n max-width: 15%;\\n width: 300px;\\n margin: auto;\\n margin-bottom: 20px;\\n position: relative;\\n}\\n.illustration svg {\\n width: 100%;\\n height: 100%;\\n max-height: 40vh;\\n}\\n.illustration [fill*=\\\"6c63ff\\\"] {\\n fill: var(--color-primary-element);\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./EmptyContent.vue?vue&type=style&index=0&lang=scss&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./EmptyContent.vue?vue&type=style&index=0&lang=scss&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./ImageMultiple.vue?vue&type=template&id=1fff908f&\"\nimport script from \"./ImageMultiple.vue?vue&type=script&lang=js&\"\nexport * from \"./ImageMultiple.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/louis/workspace/nextcloud/apps/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('1fff908f')) {\n api.createRecord('1fff908f', component.options)\n } else {\n api.reload('1fff908f', component.options)\n }\n module.hot.accept(\"./ImageMultiple.vue?vue&type=template&id=1fff908f&\", function () {\n api.rerender('1fff908f', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"node_modules/vue-material-design-icons/ImageMultiple.vue\"\nexport default component.exports","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nexport default {\n name: \"ImageMultipleIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n","import { render, staticRenderFns } from \"./EmptyContent.vue?vue&type=template&id=6c3ea49c&\"\nimport script from \"./EmptyContent.vue?vue&type=script&lang=js&\"\nexport * from \"./EmptyContent.vue?vue&type=script&lang=js&\"\nimport style0 from \"./EmptyContent.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\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/louis/workspace/nextcloud/apps/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('6c3ea49c')) {\n api.createRecord('6c3ea49c', component.options)\n } else {\n api.reload('6c3ea49c', component.options)\n }\n module.hot.accept(\"./EmptyContent.vue?vue&type=template&id=6c3ea49c&\", function () {\n api.rerender('6c3ea49c', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/EmptyContent.vue\"\nexport default component.exports","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EmptyContent.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!./EmptyContent.vue?vue&type=script&lang=js&\"","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ImageMultiple.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ImageMultiple.vue?vue&type=script&lang=js&\"","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"span\",\n _vm._b(\n {\n staticClass: \"material-design-icon image-multiple-icon\",\n attrs: {\n \"aria-hidden\": !_vm.title,\n \"aria-label\": _vm.title,\n role: \"img\",\n },\n on: {\n click: function ($event) {\n return _vm.$emit(\"click\", $event)\n },\n },\n },\n \"span\",\n _vm.$attrs,\n false\n ),\n [\n _c(\n \"svg\",\n {\n staticClass: \"material-design-icon__svg\",\n attrs: {\n fill: _vm.fillColor,\n width: _vm.size,\n height: _vm.size,\n viewBox: \"0 0 24 24\",\n },\n },\n [\n _c(\n \"path\",\n {\n attrs: {\n d: \"M22,16V4A2,2 0 0,0 20,2H8A2,2 0 0,0 6,4V16A2,2 0 0,0 8,18H20A2,2 0 0,0 22,16M11,12L13.03,14.71L16,11L20,16H8M2,6V20A2,2 0 0,0 4,22H18V20H4V6\",\n },\n },\n [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()]\n ),\n ]\n ),\n ]\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _vm.isReady\n ? _c(\"div\", { staticClass: \"emptycontent\" }, [\n _vm.haveIllustration\n ? _c(\"div\", {\n staticClass: \"illustration\",\n domProps: { innerHTML: _vm._s(_vm.illustration) },\n })\n : _c(\"div\", { staticClass: \"icon-error\" }),\n _vm._v(\" \"),\n _c(\"h2\", [_vm._t(\"default\")], 2),\n _vm._v(\" \"),\n _c(\n \"p\",\n {\n directives: [\n {\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.$slots.desc,\n expression: \"$slots.desc\",\n },\n ],\n },\n [_vm._t(\"desc\")],\n 2\n ),\n ])\n : _vm._e()\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var map = {\n\t\"./empty.svg\": [\n\t\t\"./src/assets/Illustrations/empty.svg\",\n\t\t\"src_assets_Illustrations_empty_svg\"\n\t],\n\t\"./folder.svg\": [\n\t\t\"./src/assets/Illustrations/folder.svg\",\n\t\t\"src_assets_Illustrations_folder_svg\"\n\t],\n\t\"./images.svg\": [\n\t\t\"./src/assets/Illustrations/images.svg\",\n\t\t\"src_assets_Illustrations_images_svg\"\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(() => {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\n\tvar ids = map[req], id = ids[0];\n\treturn __webpack_require__.e(ids[1]).then(() => {\n\t\treturn __webpack_require__.t(id, 1 | 16);\n\t});\n}\nwebpackAsyncContext.keys = () => (Object.keys(map));\nwebpackAsyncContext.id = \"./src/assets/Illustrations lazy recursive ^\\\\.\\\\/.*\\\\.svg$\";\nmodule.exports = webpackAsyncContext;"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-node_modules_vue-material-design-icons_ImageMultiple_vue-src_views_SharedAlbums_vue.js b/js/photos-node_modules_vue-material-design-icons_ImageMultiple_vue-src_views_SharedAlbums_vue.js deleted file mode 100644 index 611f0225c..000000000 --- a/js/photos-node_modules_vue-material-design-icons_ImageMultiple_vue-src_views_SharedAlbums_vue.js +++ /dev/null @@ -1,558 +0,0 @@ -"use strict"; -(self["webpackChunkphotos"] = self["webpackChunkphotos"] || []).push([["node_modules_vue-material-design-icons_ImageMultiple_vue-src_views_SharedAlbums_vue"],{ - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/SharedAlbums.vue?vue&type=script&lang=js&": -/*!*****************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/SharedAlbums.vue?vue&type=script&lang=js& ***! - \*****************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var vue_material_design_icons_FolderMultipleImage__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue-material-design-icons/FolderMultipleImage */ "./node_modules/vue-material-design-icons/FolderMultipleImage.vue"); -/* harmony import */ var _nextcloud_router__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/router */ "./node_modules/@nextcloud/router/dist/index.js"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @nextcloud/vue */ "./node_modules/@nextcloud/vue/dist/ncvuecomponents.js"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _mixins_FetchSharedAlbumsMixin_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../mixins/FetchSharedAlbumsMixin.js */ "./src/mixins/FetchSharedAlbumsMixin.js"); -/* harmony import */ var _components_Collection_CollectionsList_vue__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../components/Collection/CollectionsList.vue */ "./src/components/Collection/CollectionsList.vue"); -/* harmony import */ var _components_Collection_CollectionCover_vue__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../components/Collection/CollectionCover.vue */ "./src/components/Collection/CollectionCover.vue"); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - - - - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'SharedAlbums', - components: { - FolderMultipleImage: vue_material_design_icons_FolderMultipleImage__WEBPACK_IMPORTED_MODULE_0__["default"], - NcEmptyContent: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_2__.NcEmptyContent, - CollectionsList: _components_Collection_CollectionsList_vue__WEBPACK_IMPORTED_MODULE_4__["default"], - CollectionCover: _components_Collection_CollectionCover_vue__WEBPACK_IMPORTED_MODULE_5__["default"] - }, - filters: { - /** - * @param {string} lastPhoto The album's last photos. - */ - coverUrl: function coverUrl(lastPhoto) { - if (lastPhoto === -1) { - return ''; - } - - return (0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_1__.generateUrl)("/apps/photos/api/v1/preview/".concat(lastPhoto, "?x=", 512, "&y=", 512)); - } - }, - mixins: [_mixins_FetchSharedAlbumsMixin_js__WEBPACK_IMPORTED_MODULE_3__["default"]] -}); - -/***/ }), - -/***/ "./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!./src/views/SharedAlbums.vue?vue&type=style&index=0&id=3a88853a&lang=scss&scoped=true&": -/*!*****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/views/SharedAlbums.vue?vue&type=style&index=0&id=3a88853a&lang=scss&scoped=true& ***! - \*****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".albums-list[data-v-3a88853a] {\n display: flex;\n flex-direction: column;\n}\n.albums-list .album__name[data-v-3a88853a] {\n font-weight: normal;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/views/SharedAlbums.vue?vue&type=style&index=0&id=3a88853a&lang=scss&scoped=true&": -/*!*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/views/SharedAlbums.vue?vue&type=style&index=0&id=3a88853a&lang=scss&scoped=true& ***! - \*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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_SharedAlbums_vue_vue_type_style_index_0_id_3a88853a_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../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!./SharedAlbums.vue?vue&type=style&index=0&id=3a88853a&lang=scss&scoped=true& */ "./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!./src/views/SharedAlbums.vue?vue&type=style&index=0&id=3a88853a&lang=scss&scoped=true&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_SharedAlbums_vue_vue_type_style_index_0_id_3a88853a_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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_SharedAlbums_vue_vue_type_style_index_0_id_3a88853a_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_SharedAlbums_vue_vue_type_style_index_0_id_3a88853a_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_SharedAlbums_vue_vue_type_style_index_0_id_3a88853a_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/ImageMultiple.vue": -/*!******************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/ImageMultiple.vue ***! - \******************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _ImageMultiple_vue_vue_type_template_id_1fff908f___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./ImageMultiple.vue?vue&type=template&id=1fff908f& */ "./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=template&id=1fff908f&"); -/* harmony import */ var _ImageMultiple_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./ImageMultiple.vue?vue&type=script&lang=js& */ "./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=script&lang=js&"); -/* harmony import */ var _vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - - - -/* normalize component */ -; -var component = (0,_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])( - _ImageMultiple_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _ImageMultiple_vue_vue_type_template_id_1fff908f___WEBPACK_IMPORTED_MODULE_0__.render, - _ImageMultiple_vue_vue_type_template_id_1fff908f___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - null, - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "node_modules/vue-material-design-icons/ImageMultiple.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=script&lang=js&": -/*!******************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=script&lang=js& ***! - \******************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: "ImageMultipleIcon", - emits: ['click'], - props: { - title: { - type: String, - }, - fillColor: { - type: String, - default: "currentColor" - }, - size: { - type: Number, - default: 24 - } - } -}); - - -/***/ }), - -/***/ "./src/views/SharedAlbums.vue": -/*!************************************!*\ - !*** ./src/views/SharedAlbums.vue ***! - \************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _SharedAlbums_vue_vue_type_template_id_3a88853a_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./SharedAlbums.vue?vue&type=template&id=3a88853a&scoped=true& */ "./src/views/SharedAlbums.vue?vue&type=template&id=3a88853a&scoped=true&"); -/* harmony import */ var _SharedAlbums_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./SharedAlbums.vue?vue&type=script&lang=js& */ "./src/views/SharedAlbums.vue?vue&type=script&lang=js&"); -/* harmony import */ var _SharedAlbums_vue_vue_type_style_index_0_id_3a88853a_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./SharedAlbums.vue?vue&type=style&index=0&id=3a88853a&lang=scss&scoped=true& */ "./src/views/SharedAlbums.vue?vue&type=style&index=0&id=3a88853a&lang=scss&scoped=true&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( - _SharedAlbums_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _SharedAlbums_vue_vue_type_template_id_3a88853a_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render, - _SharedAlbums_vue_vue_type_template_id_3a88853a_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - "3a88853a", - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/views/SharedAlbums.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/views/SharedAlbums.vue?vue&type=script&lang=js&": -/*!*************************************************************!*\ - !*** ./src/views/SharedAlbums.vue?vue&type=script&lang=js& ***! - \*************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_SharedAlbums_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharedAlbums.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/SharedAlbums.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_SharedAlbums_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/views/SharedAlbums.vue?vue&type=style&index=0&id=3a88853a&lang=scss&scoped=true&": -/*!**********************************************************************************************!*\ - !*** ./src/views/SharedAlbums.vue?vue&type=style&index=0&id=3a88853a&lang=scss&scoped=true& ***! - \**********************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_SharedAlbums_vue_vue_type_style_index_0_id_3a88853a_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/style-loader/dist/cjs.js!../../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!./SharedAlbums.vue?vue&type=style&index=0&id=3a88853a&lang=scss&scoped=true& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/views/SharedAlbums.vue?vue&type=style&index=0&id=3a88853a&lang=scss&scoped=true&"); - - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=script&lang=js&": -/*!*******************************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=script&lang=js& ***! - \*******************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _vue_loader_lib_index_js_vue_loader_options_ImageMultiple_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/index.js??vue-loader-options!./ImageMultiple.vue?vue&type=script&lang=js& */ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_vue_loader_lib_index_js_vue_loader_options_ImageMultiple_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=template&id=1fff908f&": -/*!*************************************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=template&id=1fff908f& ***! - \*************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_ImageMultiple_vue_vue_type_template_id_1fff908f___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_ImageMultiple_vue_vue_type_template_id_1fff908f___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_ImageMultiple_vue_vue_type_template_id_1fff908f___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../vue-loader/lib/index.js??vue-loader-options!./ImageMultiple.vue?vue&type=template&id=1fff908f& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=template&id=1fff908f&"); - - -/***/ }), - -/***/ "./src/views/SharedAlbums.vue?vue&type=template&id=3a88853a&scoped=true&": -/*!*******************************************************************************!*\ - !*** ./src/views/SharedAlbums.vue?vue&type=template&id=3a88853a&scoped=true& ***! - \*******************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_SharedAlbums_vue_vue_type_template_id_3a88853a_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_SharedAlbums_vue_vue_type_template_id_3a88853a_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_SharedAlbums_vue_vue_type_template_id_3a88853a_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharedAlbums.vue?vue&type=template&id=3a88853a&scoped=true& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/SharedAlbums.vue?vue&type=template&id=3a88853a&scoped=true&"); - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=template&id=1fff908f&": -/*!****************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=template&id=1fff908f& ***! - \****************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c( - "span", - _vm._b( - { - staticClass: "material-design-icon image-multiple-icon", - attrs: { - "aria-hidden": !_vm.title, - "aria-label": _vm.title, - role: "img", - }, - on: { - click: function ($event) { - return _vm.$emit("click", $event) - }, - }, - }, - "span", - _vm.$attrs, - false - ), - [ - _c( - "svg", - { - staticClass: "material-design-icon__svg", - attrs: { - fill: _vm.fillColor, - width: _vm.size, - height: _vm.size, - viewBox: "0 0 24 24", - }, - }, - [ - _c( - "path", - { - attrs: { - d: "M22,16V4A2,2 0 0,0 20,2H8A2,2 0 0,0 6,4V16A2,2 0 0,0 8,18H20A2,2 0 0,0 22,16M11,12L13.03,14.71L16,11L20,16H8M2,6V20A2,2 0 0,0 4,22H18V20H4V6", - }, - }, - [_vm.title ? _c("title", [_vm._v(_vm._s(_vm.title))]) : _vm._e()] - ), - ] - ), - ] - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/SharedAlbums.vue?vue&type=template&id=3a88853a&scoped=true&": -/*!**********************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/SharedAlbums.vue?vue&type=template&id=3a88853a&scoped=true& ***! - \**********************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c( - "CollectionsList", - { - staticClass: "albums-list", - attrs: { - collections: _vm.sharedAlbums, - loading: _vm.loadingAlbums, - "collection-title": _vm.t("photos", "Shared albums"), - "collection-root": _vm.t("photos", "Shared albums"), - error: _vm.errorFetchingAlbums, - }, - scopedSlots: _vm._u([ - { - key: "default", - fn: function (ref) { - var collection = ref.collection - return _c( - "CollectionCover", - { - key: collection.basename, - attrs: { - link: "/sharedalbums/" + collection.basename, - "alt-img": _vm.t( - "photos", - "Cover photo for shared album {albumName}.", - { albumName: collection.basename } - ), - "cover-url": _vm._f("coverUrl")(collection.lastPhoto), - }, - }, - [ - _c("h2", { staticClass: "album__name" }, [ - _vm._v("\n\t\t\t" + _vm._s(collection.basename) + "\n\t\t"), - ]), - _vm._v(" "), - _c( - "div", - { - staticClass: "album__details", - attrs: { slot: "subtitle" }, - slot: "subtitle", - }, - [ - _vm._v( - "\n\t\t\t" + - _vm._s(collection.date) + - " ⸱ " + - _vm._s( - _vm.n( - "photos", - "%n item", - "%n photos and videos", - collection.nbItems - ) - ) + - "\n\t\t" - ), - ] - ), - ] - ) - }, - }, - ]), - }, - [ - _vm._v(" "), - _c( - "NcEmptyContent", - { - attrs: { - slot: "empty-collections-list", - title: _vm.t("photos", "There is no album yet!"), - }, - slot: "empty-collections-list", - }, - [_c("FolderMultipleImage", { attrs: { slot: "icon" }, slot: "icon" })], - 1 - ), - ], - 1 - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }) - -}]); -//# sourceMappingURL=photos-node_modules_vue-material-design-icons_ImageMultiple_vue-src_views_SharedAlbums_vue.js.map?v=f86445d99f41f6f68b69 \ No newline at end of file diff --git a/js/photos-node_modules_vue-material-design-icons_ImageMultiple_vue-src_views_SharedAlbums_vue.js.map b/js/photos-node_modules_vue-material-design-icons_ImageMultiple_vue-src_views_SharedAlbums_vue.js.map deleted file mode 100644 index afd27d4c1..000000000 --- a/js/photos-node_modules_vue-material-design-icons_ImageMultiple_vue-src_views_SharedAlbums_vue.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-node_modules_vue-material-design-icons_ImageMultiple_vue-src_views_SharedAlbums_vue.js?v=f86445d99f41f6f68b69","mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;AC3EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;ACtCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACpCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;ACvCA;;;;;;;;;;;;;;;;;;;;;;;;;;;AEAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AGAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;ACrDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sources":["webpack:///photos/src/views/SharedAlbums.vue?vue&type=script&lang=js&","webpack:///photos/src/views/SharedAlbums.vue?vue&type=style&index=0&id=3a88853a&lang=scss&scoped=true&","webpack://photos/./src/views/SharedAlbums.vue?7c9e","webpack:///photos/node_modules/vue-material-design-icons/ImageMultiple.vue","webpack:///photos/node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=script&lang=js&","webpack:///photos/src/views/SharedAlbums.vue","webpack://photos/./src/views/SharedAlbums.vue?59a4","webpack://photos/./src/views/SharedAlbums.vue?14cb","webpack://photos/./node_modules/vue-material-design-icons/ImageMultiple.vue?1443","webpack:///photos/node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=template&id=1fff908f&","webpack:///photos/src/views/SharedAlbums.vue?vue&type=template&id=3a88853a&scoped=true&","webpack://photos/./node_modules/vue-material-design-icons/ImageMultiple.vue?eba6","webpack://photos/./src/views/SharedAlbums.vue?03bd"],"sourcesContent":["//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport FolderMultipleImage from 'vue-material-design-icons/FolderMultipleImage';\nimport { generateUrl } from '@nextcloud/router';\nimport { NcEmptyContent } from '@nextcloud/vue';\nimport FetchSharedAlbumsMixin from '../mixins/FetchSharedAlbumsMixin.js';\nimport CollectionsList from '../components/Collection/CollectionsList.vue';\nimport CollectionCover from '../components/Collection/CollectionCover.vue';\nexport default {\n name: 'SharedAlbums',\n components: {\n FolderMultipleImage: FolderMultipleImage,\n NcEmptyContent: NcEmptyContent,\n CollectionsList: CollectionsList,\n CollectionCover: CollectionCover\n },\n filters: {\n /**\n * @param {string} lastPhoto The album's last photos.\n */\n coverUrl: function coverUrl(lastPhoto) {\n if (lastPhoto === -1) {\n return '';\n }\n\n return generateUrl(\"/apps/photos/api/v1/preview/\".concat(lastPhoto, \"?x=\", 512, \"&y=\", 512));\n }\n },\n mixins: [FetchSharedAlbumsMixin]\n};","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".albums-list[data-v-3a88853a] {\\n display: flex;\\n flex-direction: column;\\n}\\n.albums-list .album__name[data-v-3a88853a] {\\n font-weight: normal;\\n overflow: hidden;\\n white-space: nowrap;\\n text-overflow: ellipsis;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./SharedAlbums.vue?vue&type=style&index=0&id=3a88853a&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./SharedAlbums.vue?vue&type=style&index=0&id=3a88853a&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./ImageMultiple.vue?vue&type=template&id=1fff908f&\"\nimport script from \"./ImageMultiple.vue?vue&type=script&lang=js&\"\nexport * from \"./ImageMultiple.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/admin/Docker/apps2/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('1fff908f')) {\n api.createRecord('1fff908f', component.options)\n } else {\n api.reload('1fff908f', component.options)\n }\n module.hot.accept(\"./ImageMultiple.vue?vue&type=template&id=1fff908f&\", function () {\n api.rerender('1fff908f', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"node_modules/vue-material-design-icons/ImageMultiple.vue\"\nexport default component.exports","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nexport default {\n name: \"ImageMultipleIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n","import { render, staticRenderFns } from \"./SharedAlbums.vue?vue&type=template&id=3a88853a&scoped=true&\"\nimport script from \"./SharedAlbums.vue?vue&type=script&lang=js&\"\nexport * from \"./SharedAlbums.vue?vue&type=script&lang=js&\"\nimport style0 from \"./SharedAlbums.vue?vue&type=style&index=0&id=3a88853a&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 \"3a88853a\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/admin/Docker/apps2/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('3a88853a')) {\n api.createRecord('3a88853a', component.options)\n } else {\n api.reload('3a88853a', component.options)\n }\n module.hot.accept(\"./SharedAlbums.vue?vue&type=template&id=3a88853a&scoped=true&\", function () {\n api.rerender('3a88853a', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/views/SharedAlbums.vue\"\nexport default component.exports","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharedAlbums.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!./SharedAlbums.vue?vue&type=script&lang=js&\"","export * from \"-!../../node_modules/style-loader/dist/cjs.js!../../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!./SharedAlbums.vue?vue&type=style&index=0&id=3a88853a&lang=scss&scoped=true&\"","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ImageMultiple.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ImageMultiple.vue?vue&type=script&lang=js&\"","export * from \"-!../vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../vue-loader/lib/index.js??vue-loader-options!./ImageMultiple.vue?vue&type=template&id=1fff908f&\"","export * from \"-!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharedAlbums.vue?vue&type=template&id=3a88853a&scoped=true&\"","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"span\",\n _vm._b(\n {\n staticClass: \"material-design-icon image-multiple-icon\",\n attrs: {\n \"aria-hidden\": !_vm.title,\n \"aria-label\": _vm.title,\n role: \"img\",\n },\n on: {\n click: function ($event) {\n return _vm.$emit(\"click\", $event)\n },\n },\n },\n \"span\",\n _vm.$attrs,\n false\n ),\n [\n _c(\n \"svg\",\n {\n staticClass: \"material-design-icon__svg\",\n attrs: {\n fill: _vm.fillColor,\n width: _vm.size,\n height: _vm.size,\n viewBox: \"0 0 24 24\",\n },\n },\n [\n _c(\n \"path\",\n {\n attrs: {\n d: \"M22,16V4A2,2 0 0,0 20,2H8A2,2 0 0,0 6,4V16A2,2 0 0,0 8,18H20A2,2 0 0,0 22,16M11,12L13.03,14.71L16,11L20,16H8M2,6V20A2,2 0 0,0 4,22H18V20H4V6\",\n },\n },\n [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()]\n ),\n ]\n ),\n ]\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"CollectionsList\",\n {\n staticClass: \"albums-list\",\n attrs: {\n collections: _vm.sharedAlbums,\n loading: _vm.loadingAlbums,\n \"collection-title\": _vm.t(\"photos\", \"Shared albums\"),\n \"collection-root\": _vm.t(\"photos\", \"Shared albums\"),\n error: _vm.errorFetchingAlbums,\n },\n scopedSlots: _vm._u([\n {\n key: \"default\",\n fn: function (ref) {\n var collection = ref.collection\n return _c(\n \"CollectionCover\",\n {\n key: collection.basename,\n attrs: {\n link: \"/sharedalbums/\" + collection.basename,\n \"alt-img\": _vm.t(\n \"photos\",\n \"Cover photo for shared album {albumName}.\",\n { albumName: collection.basename }\n ),\n \"cover-url\": _vm._f(\"coverUrl\")(collection.lastPhoto),\n },\n },\n [\n _c(\"h2\", { staticClass: \"album__name\" }, [\n _vm._v(\"\\n\\t\\t\\t\" + _vm._s(collection.basename) + \"\\n\\t\\t\"),\n ]),\n _vm._v(\" \"),\n _c(\n \"div\",\n {\n staticClass: \"album__details\",\n attrs: { slot: \"subtitle\" },\n slot: \"subtitle\",\n },\n [\n _vm._v(\n \"\\n\\t\\t\\t\" +\n _vm._s(collection.date) +\n \" ⸱ \" +\n _vm._s(\n _vm.n(\n \"photos\",\n \"%n item\",\n \"%n photos and videos\",\n collection.nbItems\n )\n ) +\n \"\\n\\t\\t\"\n ),\n ]\n ),\n ]\n )\n },\n },\n ]),\n },\n [\n _vm._v(\" \"),\n _c(\n \"NcEmptyContent\",\n {\n attrs: {\n slot: \"empty-collections-list\",\n title: _vm.t(\"photos\", \"There is no album yet!\"),\n },\n slot: \"empty-collections-list\",\n },\n [_c(\"FolderMultipleImage\", { attrs: { slot: \"icon\" }, slot: \"icon\" })],\n 1\n ),\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-node_modules_vue-material-design-icons_PackageVariant_vue-src_views_TagContent_vue.js b/js/photos-node_modules_vue-material-design-icons_PackageVariant_vue-src_views_TagContent_vue.js deleted file mode 100644 index a80e16768..000000000 --- a/js/photos-node_modules_vue-material-design-icons_PackageVariant_vue-src_views_TagContent_vue.js +++ /dev/null @@ -1,765 +0,0 @@ -"use strict"; -(self["webpackChunkphotos"] = self["webpackChunkphotos"] || []).push([["node_modules_vue-material-design-icons_PackageVariant_vue-src_views_TagContent_vue"],{ - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/TagContent.vue?vue&type=script&lang=js&": -/*!***************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/TagContent.vue?vue&type=script&lang=js& ***! - \***************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! vuex */ "./node_modules/vuex/dist/vuex.esm.js"); -/* harmony import */ var vue_material_design_icons_ArrowLeft__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue-material-design-icons/ArrowLeft */ "./node_modules/vue-material-design-icons/ArrowLeft.vue"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/vue */ "./node_modules/@nextcloud/vue/dist/ncvuecomponents.js"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _components_File_vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../components/File.vue */ "./src/components/File.vue"); -/* harmony import */ var _components_FilesListViewer_vue__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../components/FilesListViewer.vue */ "./src/components/FilesListViewer.vue"); -/* harmony import */ var _utils_semaphoreWithPriority_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../utils/semaphoreWithPriority.js */ "./src/utils/semaphoreWithPriority.js"); -/* harmony import */ var _mixins_FilesSelectionMixin_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../mixins/FilesSelectionMixin.js */ "./src/mixins/FilesSelectionMixin.js"); -/* harmony import */ var _mixins_AbortControllerMixin_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../mixins/AbortControllerMixin.js */ "./src/mixins/AbortControllerMixin.js"); -/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js"); -function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } - -function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } - -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } - -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - - - - - - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'TagContent', - components: { - File: _components_File_vue__WEBPACK_IMPORTED_MODULE_2__["default"], - FilesListViewer: _components_FilesListViewer_vue__WEBPACK_IMPORTED_MODULE_3__["default"], - NcEmptyContent: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_1__.NcEmptyContent, - NcActions: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_1__.NcActions, - NcActionButton: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_1__.NcActionButton, - NcLoadingIcon: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_1__.NcLoadingIcon, - ArrowLeft: vue_material_design_icons_ArrowLeft__WEBPACK_IMPORTED_MODULE_0__["default"] - }, - mixins: [_nextcloud_vue__WEBPACK_IMPORTED_MODULE_1__.isMobile, _mixins_FilesSelectionMixin_js__WEBPACK_IMPORTED_MODULE_5__["default"], _mixins_AbortControllerMixin_js__WEBPACK_IMPORTED_MODULE_6__["default"]], - props: { - path: { - type: String, - default: '' - } - }, - data: function data() { - return { - error: null, - loading: false, - semaphore: new _utils_semaphoreWithPriority_js__WEBPACK_IMPORTED_MODULE_4__["default"](30), - appContent: document.getElementById('app-content-vue') - }; - }, - computed: _objectSpread(_objectSpread({}, (0,vuex__WEBPACK_IMPORTED_MODULE_7__.mapGetters)(['files', 'tags', 'tagsNames'])), {}, { - // current tag id from current path - tagId: function tagId() { - return this.$store.getters.tagId(this.path); - }, - // current tag - tag: function tag() { - return this.tags[this.tagId]; - }, - // files list of the current tag - fileIds: function fileIds() { - return this.tag ? this.tag.files : []; - }, - isEmpty: function isEmpty() { - return this.fileIds.length === 0; - } - }), - watch: { - path: function path() { - var _this = this; - - return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() { - return regeneratorRuntime.wrap(function _callee$(_context) { - while (1) { - switch (_context.prev = _context.next) { - case 0: - _this.fetchContent(); - - case 1: - case "end": - return _context.stop(); - } - } - }, _callee); - }))(); - } - }, - beforeMount: function beforeMount() { - var _this2 = this; - - return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() { - return regeneratorRuntime.wrap(function _callee2$(_context2) { - while (1) { - switch (_context2.prev = _context2.next) { - case 0: - _this2.fetchContent(); - - case 1: - case "end": - return _context2.stop(); - } - } - }, _callee2); - }))(); - }, - methods: { - fetchContent: function fetchContent() { - var _this3 = this; - - return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee3() { - return regeneratorRuntime.wrap(function _callee3$(_context3) { - while (1) { - switch (_context3.prev = _context3.next) { - case 0: - // close any potential opened viewer - OCA.Viewer.close(); - _this3.loading = true; - _this3.error = null; - _context3.prev = 3; - - if (_this3.tags[_this3.tagId]) { - _context3.next = 7; - break; - } - - _context3.next = 7; - return _this3.$store.dispatch('fetchAllTags', { - signal: _this3.abortController.signal - }); - - case 7: - _context3.next = 9; - return _this3.$store.dispatch('fetchTagFiles', { - id: _this3.tagId, - signal: _this3.abortController.signal - }); - - case 9: - _context3.next = 15; - break; - - case 11: - _context3.prev = 11; - _context3.t0 = _context3["catch"](3); - console.error(_context3.t0); - _this3.error = true; - - case 15: - _context3.prev = 15; - // done loading - _this3.loading = false; - return _context3.finish(15); - - case 18: - case "end": - return _context3.stop(); - } - } - }, _callee3, null, [[3, 11, 15, 18]]); - }))(); - }, - openViewer: function openViewer(fileId) { - var _this4 = this; - - var file = this.files[fileId]; - OCA.Viewer.open({ - path: file.filename, - list: this.fileIds.map(function (fileId) { - return _this4.files[fileId]; - }), - loadMore: file.loadMore ? /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee4() { - return regeneratorRuntime.wrap(function _callee4$(_context4) { - while (1) { - switch (_context4.prev = _context4.next) { - case 0: - _context4.next = 2; - return file.loadMore(true); - - case 2: - return _context4.abrupt("return", _context4.sent); - - case 3: - case "end": - return _context4.stop(); - } - } - }, _callee4); - })) : function () { - return []; - }, - canLoop: file.canLoop - }); - } - } -}); - -/***/ }), - -/***/ "./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!./src/views/TagContent.vue?vue&type=style&index=0&id=5f4f85b9&scoped=true&lang=scss&": -/*!***************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/views/TagContent.vue?vue&type=style&index=0&id=5f4f85b9&scoped=true&lang=scss& ***! - \***************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".loader[data-v-5f4f85b9] {\n margin-top: 30vh;\n}\n.photos-navigation[data-v-5f4f85b9] {\n display: flex;\n height: 44px;\n padding: 0 40px;\n align-items: center;\n max-width: 100%;\n}\n.photos-navigation h2[data-v-5f4f85b9] {\n padding: 0;\n margin: 0;\n}\n.heading-subline[data-v-5f4f85b9] {\n margin-left: 85px;\n margin-top: -11px;\n color: var(--color-text-maxcontrast);\n}\n.tag__photos[data-v-5f4f85b9] {\n padding: 0 64px;\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/views/TagContent.vue?vue&type=style&index=0&id=5f4f85b9&scoped=true&lang=scss&": -/*!*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/views/TagContent.vue?vue&type=style&index=0&id=5f4f85b9&scoped=true&lang=scss& ***! - \*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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_TagContent_vue_vue_type_style_index_0_id_5f4f85b9_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../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!./TagContent.vue?vue&type=style&index=0&id=5f4f85b9&scoped=true&lang=scss& */ "./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!./src/views/TagContent.vue?vue&type=style&index=0&id=5f4f85b9&scoped=true&lang=scss&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_TagContent_vue_vue_type_style_index_0_id_5f4f85b9_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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_TagContent_vue_vue_type_style_index_0_id_5f4f85b9_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_TagContent_vue_vue_type_style_index_0_id_5f4f85b9_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_TagContent_vue_vue_type_style_index_0_id_5f4f85b9_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/PackageVariant.vue": -/*!*******************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/PackageVariant.vue ***! - \*******************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _PackageVariant_vue_vue_type_template_id_189d8f0b___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./PackageVariant.vue?vue&type=template&id=189d8f0b& */ "./node_modules/vue-material-design-icons/PackageVariant.vue?vue&type=template&id=189d8f0b&"); -/* harmony import */ var _PackageVariant_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./PackageVariant.vue?vue&type=script&lang=js& */ "./node_modules/vue-material-design-icons/PackageVariant.vue?vue&type=script&lang=js&"); -/* harmony import */ var _vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - - - -/* normalize component */ -; -var component = (0,_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])( - _PackageVariant_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _PackageVariant_vue_vue_type_template_id_189d8f0b___WEBPACK_IMPORTED_MODULE_0__.render, - _PackageVariant_vue_vue_type_template_id_189d8f0b___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - null, - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "node_modules/vue-material-design-icons/PackageVariant.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/PackageVariant.vue?vue&type=script&lang=js&": -/*!*******************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/PackageVariant.vue?vue&type=script&lang=js& ***! - \*******************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: "PackageVariantIcon", - emits: ['click'], - props: { - title: { - type: String, - }, - fillColor: { - type: String, - default: "currentColor" - }, - size: { - type: Number, - default: 24 - } - } -}); - - -/***/ }), - -/***/ "./src/views/TagContent.vue": -/*!**********************************!*\ - !*** ./src/views/TagContent.vue ***! - \**********************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _TagContent_vue_vue_type_template_id_5f4f85b9_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./TagContent.vue?vue&type=template&id=5f4f85b9&scoped=true& */ "./src/views/TagContent.vue?vue&type=template&id=5f4f85b9&scoped=true&"); -/* harmony import */ var _TagContent_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./TagContent.vue?vue&type=script&lang=js& */ "./src/views/TagContent.vue?vue&type=script&lang=js&"); -/* harmony import */ var _TagContent_vue_vue_type_style_index_0_id_5f4f85b9_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./TagContent.vue?vue&type=style&index=0&id=5f4f85b9&scoped=true&lang=scss& */ "./src/views/TagContent.vue?vue&type=style&index=0&id=5f4f85b9&scoped=true&lang=scss&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( - _TagContent_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _TagContent_vue_vue_type_template_id_5f4f85b9_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render, - _TagContent_vue_vue_type_template_id_5f4f85b9_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - "5f4f85b9", - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/views/TagContent.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/views/TagContent.vue?vue&type=script&lang=js&": -/*!***********************************************************!*\ - !*** ./src/views/TagContent.vue?vue&type=script&lang=js& ***! - \***********************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_TagContent_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TagContent.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/TagContent.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_TagContent_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/views/TagContent.vue?vue&type=style&index=0&id=5f4f85b9&scoped=true&lang=scss&": -/*!********************************************************************************************!*\ - !*** ./src/views/TagContent.vue?vue&type=style&index=0&id=5f4f85b9&scoped=true&lang=scss& ***! - \********************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_TagContent_vue_vue_type_style_index_0_id_5f4f85b9_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/style-loader/dist/cjs.js!../../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!./TagContent.vue?vue&type=style&index=0&id=5f4f85b9&scoped=true&lang=scss& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/views/TagContent.vue?vue&type=style&index=0&id=5f4f85b9&scoped=true&lang=scss&"); - - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/PackageVariant.vue?vue&type=script&lang=js&": -/*!********************************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/PackageVariant.vue?vue&type=script&lang=js& ***! - \********************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _vue_loader_lib_index_js_vue_loader_options_PackageVariant_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/index.js??vue-loader-options!./PackageVariant.vue?vue&type=script&lang=js& */ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/PackageVariant.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_vue_loader_lib_index_js_vue_loader_options_PackageVariant_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/PackageVariant.vue?vue&type=template&id=189d8f0b&": -/*!**************************************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/PackageVariant.vue?vue&type=template&id=189d8f0b& ***! - \**************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_PackageVariant_vue_vue_type_template_id_189d8f0b___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_PackageVariant_vue_vue_type_template_id_189d8f0b___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_PackageVariant_vue_vue_type_template_id_189d8f0b___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../vue-loader/lib/index.js??vue-loader-options!./PackageVariant.vue?vue&type=template&id=189d8f0b& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/PackageVariant.vue?vue&type=template&id=189d8f0b&"); - - -/***/ }), - -/***/ "./src/views/TagContent.vue?vue&type=template&id=5f4f85b9&scoped=true&": -/*!*****************************************************************************!*\ - !*** ./src/views/TagContent.vue?vue&type=template&id=5f4f85b9&scoped=true& ***! - \*****************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_TagContent_vue_vue_type_template_id_5f4f85b9_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_TagContent_vue_vue_type_template_id_5f4f85b9_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_TagContent_vue_vue_type_template_id_5f4f85b9_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TagContent.vue?vue&type=template&id=5f4f85b9&scoped=true& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/TagContent.vue?vue&type=template&id=5f4f85b9&scoped=true&"); - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/PackageVariant.vue?vue&type=template&id=189d8f0b&": -/*!*****************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/PackageVariant.vue?vue&type=template&id=189d8f0b& ***! - \*****************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c( - "span", - _vm._b( - { - staticClass: "material-design-icon package-variant-icon", - attrs: { - "aria-hidden": !_vm.title, - "aria-label": _vm.title, - role: "img", - }, - on: { - click: function ($event) { - return _vm.$emit("click", $event) - }, - }, - }, - "span", - _vm.$attrs, - false - ), - [ - _c( - "svg", - { - staticClass: "material-design-icon__svg", - attrs: { - fill: _vm.fillColor, - width: _vm.size, - height: _vm.size, - viewBox: "0 0 24 24", - }, - }, - [ - _c( - "path", - { - attrs: { - d: "M2,10.96C1.5,10.68 1.35,10.07 1.63,9.59L3.13,7C3.24,6.8 3.41,6.66 3.6,6.58L11.43,2.18C11.59,2.06 11.79,2 12,2C12.21,2 12.41,2.06 12.57,2.18L20.47,6.62C20.66,6.72 20.82,6.88 20.91,7.08L22.36,9.6C22.64,10.08 22.47,10.69 22,10.96L21,11.54V16.5C21,16.88 20.79,17.21 20.47,17.38L12.57,21.82C12.41,21.94 12.21,22 12,22C11.79,22 11.59,21.94 11.43,21.82L3.53,17.38C3.21,17.21 3,16.88 3,16.5V10.96C2.7,11.13 2.32,11.14 2,10.96M12,4.15V4.15L12,10.85V10.85L17.96,7.5L12,4.15M5,15.91L11,19.29V12.58L5,9.21V15.91M19,15.91V12.69L14,15.59C13.67,15.77 13.3,15.76 13,15.6V19.29L19,15.91M13.85,13.36L20.13,9.73L19.55,8.72L13.27,12.35L13.85,13.36Z", - }, - }, - [_vm.title ? _c("title", [_vm._v(_vm._s(_vm.title))]) : _vm._e()] - ), - ] - ), - ] - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/TagContent.vue?vue&type=template&id=5f4f85b9&scoped=true&": -/*!********************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/TagContent.vue?vue&type=template&id=5f4f85b9&scoped=true& ***! - \********************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _vm.error - ? _c("NcEmptyContent", { - attrs: { title: _vm.t("photos", "An error occurred") }, - }) - : _vm.loading - ? _c("NcLoadingIcon", { staticClass: "loader" }) - : _c( - "div", - [ - _c( - "div", - { staticClass: "photos-navigation" }, - [ - _c( - "NcActions", - { staticClass: "photos-navigation__back" }, - [ - _c( - "NcActionButton", - { - on: { - click: function ($event) { - return _vm.$router.push({ name: "tags" }) - }, - }, - scopedSlots: _vm._u([ - { - key: "icon", - fn: function () { - return [_c("ArrowLeft")] - }, - proxy: true, - }, - ]), - }, - [ - _vm._v( - "\n\t\t\t\t" + - _vm._s(_vm.t("photos", "Back to tags overview")) + - "\n\t\t\t" - ), - ] - ), - ], - 1 - ), - _vm._v(" "), - _c("h2", { staticClass: "photos-navigation__title" }, [ - _vm._v("\n\t\t\t" + _vm._s(_vm.path) + "\n\t\t"), - ]), - ], - 1 - ), - _vm._v(" "), - _c("div", { staticClass: "heading-subline" }, [ - _vm._v( - "\n\t\t" + - _vm._s( - _vm.n("photos", "%n photo", "%n photos", _vm.fileIds.length) - ) + - "\n\t" - ), - ]), - _vm._v(" "), - _vm.isEmpty - ? _c("NcEmptyContent", { - attrs: { - title: _vm.t("photos", "No photos with this tag yet"), - }, - }) - : _vm._e(), - _vm._v(" "), - _c("FilesListViewer", { - staticClass: "tag__photos", - attrs: { - "container-element": _vm.appContent, - "file-ids": _vm.fileIds, - "base-height": _vm.isMobile ? 120 : 200, - loading: _vm.loading, - }, - scopedSlots: _vm._u([ - { - key: "default", - fn: function (ref) { - var file = ref.file - var visibility = ref.visibility - return _c("File", { - attrs: { - file: _vm.files[file.id], - "allow-selection": true, - selected: _vm.selection[file.id] === true, - visibility: visibility, - semaphore: _vm.semaphore, - }, - on: { - click: _vm.openViewer, - "select-toggled": _vm.onFileSelectToggle, - }, - }) - }, - }, - ]), - }), - ], - 1 - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }) - -}]); -//# sourceMappingURL=photos-node_modules_vue-material-design-icons_PackageVariant_vue-src_views_TagContent_vue.js.map?v=f2a046ab75f04bf6dd90 \ No newline at end of file diff --git a/js/photos-node_modules_vue-material-design-icons_PackageVariant_vue-src_views_TagContent_vue.js.map b/js/photos-node_modules_vue-material-design-icons_PackageVariant_vue-src_views_TagContent_vue.js.map deleted file mode 100644 index 7d37a0f4b..000000000 --- a/js/photos-node_modules_vue-material-design-icons_PackageVariant_vue-src_views_TagContent_vue.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-node_modules_vue-material-design-icons_PackageVariant_vue-src_views_TagContent_vue.js?v=f2a046ab75f04bf6dd90","mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;AC/PA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;ACtCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACpCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;ACvCA;;;;;;;;;;;;;;;;;;;;;;;;;;;AEAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AGAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;ACrDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sources":["webpack:///photos/src/views/TagContent.vue?vue&type=script&lang=js&","webpack:///photos/src/views/TagContent.vue?vue&type=style&index=0&id=5f4f85b9&scoped=true&lang=scss&","webpack://photos/./src/views/TagContent.vue?3526","webpack:///photos/node_modules/vue-material-design-icons/PackageVariant.vue","webpack:///photos/node_modules/vue-material-design-icons/PackageVariant.vue?vue&type=script&lang=js&","webpack:///photos/src/views/TagContent.vue","webpack://photos/./src/views/TagContent.vue?bd55","webpack://photos/./src/views/TagContent.vue?beb8","webpack://photos/./node_modules/vue-material-design-icons/PackageVariant.vue?7ff5","webpack:///photos/node_modules/vue-material-design-icons/PackageVariant.vue?vue&type=template&id=189d8f0b&","webpack:///photos/src/views/TagContent.vue?vue&type=template&id=5f4f85b9&scoped=true&","webpack://photos/./node_modules/vue-material-design-icons/PackageVariant.vue?d8fb","webpack://photos/./src/views/TagContent.vue?fa69"],"sourcesContent":["function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport { mapGetters } from 'vuex';\nimport ArrowLeft from 'vue-material-design-icons/ArrowLeft';\nimport { NcEmptyContent, NcActions, NcActionButton, NcLoadingIcon, isMobile } from '@nextcloud/vue';\nimport File from '../components/File.vue';\nimport FilesListViewer from '../components/FilesListViewer.vue';\nimport SemaphoreWithPriority from '../utils/semaphoreWithPriority.js';\nimport FilesSelectionMixin from '../mixins/FilesSelectionMixin.js';\nimport AbortControllerMixin from '../mixins/AbortControllerMixin.js';\nexport default {\n name: 'TagContent',\n components: {\n File: File,\n FilesListViewer: FilesListViewer,\n NcEmptyContent: NcEmptyContent,\n NcActions: NcActions,\n NcActionButton: NcActionButton,\n NcLoadingIcon: NcLoadingIcon,\n ArrowLeft: ArrowLeft\n },\n mixins: [isMobile, FilesSelectionMixin, AbortControllerMixin],\n props: {\n path: {\n type: String,\n default: ''\n }\n },\n data: function data() {\n return {\n error: null,\n loading: false,\n semaphore: new SemaphoreWithPriority(30),\n appContent: document.getElementById('app-content-vue')\n };\n },\n computed: _objectSpread(_objectSpread({}, mapGetters(['files', 'tags', 'tagsNames'])), {}, {\n // current tag id from current path\n tagId: function tagId() {\n return this.$store.getters.tagId(this.path);\n },\n // current tag\n tag: function tag() {\n return this.tags[this.tagId];\n },\n // files list of the current tag\n fileIds: function fileIds() {\n return this.tag ? this.tag.files : [];\n },\n isEmpty: function isEmpty() {\n return this.fileIds.length === 0;\n }\n }),\n watch: {\n path: function path() {\n var _this = this;\n\n return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {\n return regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _this.fetchContent();\n\n case 1:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }))();\n }\n },\n beforeMount: function beforeMount() {\n var _this2 = this;\n\n return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() {\n return regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n _this2.fetchContent();\n\n case 1:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }))();\n },\n methods: {\n fetchContent: function fetchContent() {\n var _this3 = this;\n\n return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee3() {\n return regeneratorRuntime.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n // close any potential opened viewer\n OCA.Viewer.close();\n _this3.loading = true;\n _this3.error = null;\n _context3.prev = 3;\n\n if (_this3.tags[_this3.tagId]) {\n _context3.next = 7;\n break;\n }\n\n _context3.next = 7;\n return _this3.$store.dispatch('fetchAllTags', {\n signal: _this3.abortController.signal\n });\n\n case 7:\n _context3.next = 9;\n return _this3.$store.dispatch('fetchTagFiles', {\n id: _this3.tagId,\n signal: _this3.abortController.signal\n });\n\n case 9:\n _context3.next = 15;\n break;\n\n case 11:\n _context3.prev = 11;\n _context3.t0 = _context3[\"catch\"](3);\n console.error(_context3.t0);\n _this3.error = true;\n\n case 15:\n _context3.prev = 15;\n // done loading\n _this3.loading = false;\n return _context3.finish(15);\n\n case 18:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3, null, [[3, 11, 15, 18]]);\n }))();\n },\n openViewer: function openViewer(fileId) {\n var _this4 = this;\n\n var file = this.files[fileId];\n OCA.Viewer.open({\n path: file.filename,\n list: this.fileIds.map(function (fileId) {\n return _this4.files[fileId];\n }),\n loadMore: file.loadMore ? /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee4() {\n return regeneratorRuntime.wrap(function _callee4$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n _context4.next = 2;\n return file.loadMore(true);\n\n case 2:\n return _context4.abrupt(\"return\", _context4.sent);\n\n case 3:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _callee4);\n })) : function () {\n return [];\n },\n canLoop: file.canLoop\n });\n }\n }\n};","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".loader[data-v-5f4f85b9] {\\n margin-top: 30vh;\\n}\\n.photos-navigation[data-v-5f4f85b9] {\\n display: flex;\\n height: 44px;\\n padding: 0 40px;\\n align-items: center;\\n max-width: 100%;\\n}\\n.photos-navigation h2[data-v-5f4f85b9] {\\n padding: 0;\\n margin: 0;\\n}\\n.heading-subline[data-v-5f4f85b9] {\\n margin-left: 85px;\\n margin-top: -11px;\\n color: var(--color-text-maxcontrast);\\n}\\n.tag__photos[data-v-5f4f85b9] {\\n padding: 0 64px;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./TagContent.vue?vue&type=style&index=0&id=5f4f85b9&scoped=true&lang=scss&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./TagContent.vue?vue&type=style&index=0&id=5f4f85b9&scoped=true&lang=scss&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./PackageVariant.vue?vue&type=template&id=189d8f0b&\"\nimport script from \"./PackageVariant.vue?vue&type=script&lang=js&\"\nexport * from \"./PackageVariant.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/admin/Docker/apps2/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('189d8f0b')) {\n api.createRecord('189d8f0b', component.options)\n } else {\n api.reload('189d8f0b', component.options)\n }\n module.hot.accept(\"./PackageVariant.vue?vue&type=template&id=189d8f0b&\", function () {\n api.rerender('189d8f0b', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"node_modules/vue-material-design-icons/PackageVariant.vue\"\nexport default component.exports","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nexport default {\n name: \"PackageVariantIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n","import { render, staticRenderFns } from \"./TagContent.vue?vue&type=template&id=5f4f85b9&scoped=true&\"\nimport script from \"./TagContent.vue?vue&type=script&lang=js&\"\nexport * from \"./TagContent.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TagContent.vue?vue&type=style&index=0&id=5f4f85b9&scoped=true&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 \"5f4f85b9\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/admin/Docker/apps2/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('5f4f85b9')) {\n api.createRecord('5f4f85b9', component.options)\n } else {\n api.reload('5f4f85b9', component.options)\n }\n module.hot.accept(\"./TagContent.vue?vue&type=template&id=5f4f85b9&scoped=true&\", function () {\n api.rerender('5f4f85b9', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/views/TagContent.vue\"\nexport default component.exports","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TagContent.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!./TagContent.vue?vue&type=script&lang=js&\"","export * from \"-!../../node_modules/style-loader/dist/cjs.js!../../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!./TagContent.vue?vue&type=style&index=0&id=5f4f85b9&scoped=true&lang=scss&\"","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./PackageVariant.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./PackageVariant.vue?vue&type=script&lang=js&\"","export * from \"-!../vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../vue-loader/lib/index.js??vue-loader-options!./PackageVariant.vue?vue&type=template&id=189d8f0b&\"","export * from \"-!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TagContent.vue?vue&type=template&id=5f4f85b9&scoped=true&\"","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"span\",\n _vm._b(\n {\n staticClass: \"material-design-icon package-variant-icon\",\n attrs: {\n \"aria-hidden\": !_vm.title,\n \"aria-label\": _vm.title,\n role: \"img\",\n },\n on: {\n click: function ($event) {\n return _vm.$emit(\"click\", $event)\n },\n },\n },\n \"span\",\n _vm.$attrs,\n false\n ),\n [\n _c(\n \"svg\",\n {\n staticClass: \"material-design-icon__svg\",\n attrs: {\n fill: _vm.fillColor,\n width: _vm.size,\n height: _vm.size,\n viewBox: \"0 0 24 24\",\n },\n },\n [\n _c(\n \"path\",\n {\n attrs: {\n d: \"M2,10.96C1.5,10.68 1.35,10.07 1.63,9.59L3.13,7C3.24,6.8 3.41,6.66 3.6,6.58L11.43,2.18C11.59,2.06 11.79,2 12,2C12.21,2 12.41,2.06 12.57,2.18L20.47,6.62C20.66,6.72 20.82,6.88 20.91,7.08L22.36,9.6C22.64,10.08 22.47,10.69 22,10.96L21,11.54V16.5C21,16.88 20.79,17.21 20.47,17.38L12.57,21.82C12.41,21.94 12.21,22 12,22C11.79,22 11.59,21.94 11.43,21.82L3.53,17.38C3.21,17.21 3,16.88 3,16.5V10.96C2.7,11.13 2.32,11.14 2,10.96M12,4.15V4.15L12,10.85V10.85L17.96,7.5L12,4.15M5,15.91L11,19.29V12.58L5,9.21V15.91M19,15.91V12.69L14,15.59C13.67,15.77 13.3,15.76 13,15.6V19.29L19,15.91M13.85,13.36L20.13,9.73L19.55,8.72L13.27,12.35L13.85,13.36Z\",\n },\n },\n [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()]\n ),\n ]\n ),\n ]\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _vm.error\n ? _c(\"NcEmptyContent\", {\n attrs: { title: _vm.t(\"photos\", \"An error occurred\") },\n })\n : _vm.loading\n ? _c(\"NcLoadingIcon\", { staticClass: \"loader\" })\n : _c(\n \"div\",\n [\n _c(\n \"div\",\n { staticClass: \"photos-navigation\" },\n [\n _c(\n \"NcActions\",\n { staticClass: \"photos-navigation__back\" },\n [\n _c(\n \"NcActionButton\",\n {\n on: {\n click: function ($event) {\n return _vm.$router.push({ name: \"tags\" })\n },\n },\n scopedSlots: _vm._u([\n {\n key: \"icon\",\n fn: function () {\n return [_c(\"ArrowLeft\")]\n },\n proxy: true,\n },\n ]),\n },\n [\n _vm._v(\n \"\\n\\t\\t\\t\\t\" +\n _vm._s(_vm.t(\"photos\", \"Back to tags overview\")) +\n \"\\n\\t\\t\\t\"\n ),\n ]\n ),\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\"h2\", { staticClass: \"photos-navigation__title\" }, [\n _vm._v(\"\\n\\t\\t\\t\" + _vm._s(_vm.path) + \"\\n\\t\\t\"),\n ]),\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"heading-subline\" }, [\n _vm._v(\n \"\\n\\t\\t\" +\n _vm._s(\n _vm.n(\"photos\", \"%n photo\", \"%n photos\", _vm.fileIds.length)\n ) +\n \"\\n\\t\"\n ),\n ]),\n _vm._v(\" \"),\n _vm.isEmpty\n ? _c(\"NcEmptyContent\", {\n attrs: {\n title: _vm.t(\"photos\", \"No photos with this tag yet\"),\n },\n })\n : _vm._e(),\n _vm._v(\" \"),\n _c(\"FilesListViewer\", {\n staticClass: \"tag__photos\",\n attrs: {\n \"container-element\": _vm.appContent,\n \"file-ids\": _vm.fileIds,\n \"base-height\": _vm.isMobile ? 120 : 200,\n loading: _vm.loading,\n },\n scopedSlots: _vm._u([\n {\n key: \"default\",\n fn: function (ref) {\n var file = ref.file\n var visibility = ref.visibility\n return _c(\"File\", {\n attrs: {\n file: _vm.files[file.id],\n \"allow-selection\": true,\n selected: _vm.selection[file.id] === true,\n visibility: visibility,\n semaphore: _vm.semaphore,\n },\n on: {\n click: _vm.openViewer,\n \"select-toggled\": _vm.onFileSelectToggle,\n },\n })\n },\n },\n ]),\n }),\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-node_modules_vue-material-design-icons_Video_vue-src_views_TagContent_vue.js b/js/photos-node_modules_vue-material-design-icons_Video_vue-src_views_TagContent_vue.js deleted file mode 100644 index 19736581b..000000000 --- a/js/photos-node_modules_vue-material-design-icons_Video_vue-src_views_TagContent_vue.js +++ /dev/null @@ -1,1132 +0,0 @@ -(self["webpackChunkphotos"] = self["webpackChunkphotos"] || []).push([["node_modules_vue-material-design-icons_Video_vue-src_views_TagContent_vue"],{ - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/EmptyContent.vue?vue&type=script&lang=js&": -/*!**********************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/EmptyContent.vue?vue&type=script&lang=js& ***! - \**********************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js"); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'EmptyContent', - props: { - illustrationName: { - type: String, - default: '' - } - }, - - data() { - return { - illustration: '' - }; - }, - - computed: { - /** - * Does this component have an illustration - * - * @return {boolean} - */ - haveIllustration() { - return this.illustrationName !== ''; - }, - - /** - * Is the illustration loaded - * - * @return {boolean} - */ - isLoaded() { - if (!this.haveIllustration) { - return true; - } - - return this.illustration !== ''; - }, - - /** - * The component is ready if the illustration - * is done loading or if there is none - * - * @return {boolean} - */ - isReady() { - return !this.haveIllustration || this.haveIllustration && this.isLoaded; - } - - }, - - /** - * Fetch the new illustration as soon as it changes - */ - watch: { - illustrationName() { - this.getIllustration(); - } - - }, - - beforeMount() { - this.getIllustration(); - }, - - methods: { - /** - * Fetch the illustration as webpack chunk - */ - async getIllustration() { - this.illustration = ''; - - if (this.illustrationName !== '') { - try { - const illustration = await __webpack_require__("./src/assets/Illustrations lazy recursive ^\\.\\/.*\\.svg$")(`./${this.illustrationName}.svg`); - this.illustration = illustration.default; - } catch (error) { - console.error('Could not get the error illustration', error); - } - } - } - - } -}); - -/***/ }), - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/TagContent.vue?vue&type=script&lang=js&": -/*!***************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/TagContent.vue?vue&type=script&lang=js& ***! - \***************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! vuex */ "./node_modules/vuex/dist/vuex.esm.js"); -/* harmony import */ var _components_EmptyContent__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../components/EmptyContent */ "./src/components/EmptyContent.vue"); -/* harmony import */ var _components_File__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../components/File */ "./src/components/File.vue"); -/* harmony import */ var _components_FilesListViewer__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../components/FilesListViewer */ "./src/components/FilesListViewer.vue"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @nextcloud/vue */ "./node_modules/@nextcloud/vue/dist/ncvuecomponents.js"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _utils_semaphoreWithPriority__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../utils/semaphoreWithPriority */ "./src/utils/semaphoreWithPriority.js"); -/* harmony import */ var _mixins_FilesSelectionMixin__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../mixins/FilesSelectionMixin */ "./src/mixins/FilesSelectionMixin.js"); -Object(function webpackMissingModule() { var e = new Error("Cannot find module '@nextcloud/vue/dist/Components/Actions'"); e.code = 'MODULE_NOT_FOUND'; throw e; }()); -Object(function webpackMissingModule() { var e = new Error("Cannot find module '@nextcloud/vue/dist/Components/ActionButton'"); e.code = 'MODULE_NOT_FOUND'; throw e; }()); -/* harmony import */ var vue_material_design_icons_ArrowLeft__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! vue-material-design-icons/ArrowLeft */ "./node_modules/vue-material-design-icons/ArrowLeft.vue"); -/* harmony import */ var _mixins_AbortControllerMixin__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../mixins/AbortControllerMixin */ "./src/mixins/AbortControllerMixin.js"); -/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js"); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - - - - - - - - - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'TagContent', - components: { - File: _components_File__WEBPACK_IMPORTED_MODULE_1__["default"], - FilesListViewer: _components_FilesListViewer__WEBPACK_IMPORTED_MODULE_2__["default"], - EmptyContent: _components_EmptyContent__WEBPACK_IMPORTED_MODULE_0__["default"], - Actions: Object(function webpackMissingModule() { var e = new Error("Cannot find module '@nextcloud/vue/dist/Components/Actions'"); e.code = 'MODULE_NOT_FOUND'; throw e; }()), - ActionButton: Object(function webpackMissingModule() { var e = new Error("Cannot find module '@nextcloud/vue/dist/Components/ActionButton'"); e.code = 'MODULE_NOT_FOUND'; throw e; }()), - ArrowLeft: vue_material_design_icons_ArrowLeft__WEBPACK_IMPORTED_MODULE_7__["default"] - }, - mixins: [_nextcloud_vue__WEBPACK_IMPORTED_MODULE_3__.isMobile, _mixins_FilesSelectionMixin__WEBPACK_IMPORTED_MODULE_5__["default"], _mixins_AbortControllerMixin__WEBPACK_IMPORTED_MODULE_8__["default"]], - props: { - path: { - type: String, - default: '' - } - }, - - data() { - return { - error: null, - loading: false, - semaphore: new _utils_semaphoreWithPriority__WEBPACK_IMPORTED_MODULE_4__["default"](30) - }; - }, - - computed: { // global lists - ...(0,vuex__WEBPACK_IMPORTED_MODULE_9__.mapGetters)(['files', 'tags', 'tagsNames']), - - // current tag id from current path - tagId() { - return this.$store.getters.tagId(this.path); - }, - - // current tag - tag() { - return this.tags[this.tagId]; - }, - - // files list of the current tag - fileIds() { - return this.tag ? this.tag.files : []; - }, - - isEmpty() { - return this.fileIds.length === 0; - } - - }, - watch: { - async path() { - this.fetchContent(); - } - - }, - - async beforeMount() { - this.fetchContent(); - }, - - methods: { - async fetchContent() { - // close any potential opened viewer - OCA.Viewer.close(); // if we don't already have some cached data let's show a loader - - if (!this.tags[this.tagId]) { - this.loading = true; - await this.$store.dispatch('fetchAllTags', { - signal: this.abortController.signal - }); - } - - this.error = null; - - try { - await this.$store.dispatch('fetchTagFiles', { - id: this.tagId, - signal: this.abortController.signal - }); - } catch (error) { - console.error(error); - this.error = true; - } finally { - // done loading - this.loading = false; - } - }, - - openViewer(fileId) { - const file = this.files[fileId]; - OCA.Viewer.open({ - path: file.filename, - list: this.fileIds.map(fileId => this.files[fileId]), - loadMore: file.loadMore ? async () => await file.loadMore(true) : () => [], - canLoop: file.canLoop - }); - } - - } -}); - -/***/ }), - -/***/ "./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!./src/components/EmptyContent.vue?vue&type=style&index=0&lang=scss&": -/*!**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/components/EmptyContent.vue?vue&type=style&index=0&lang=scss& ***! - \**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".emptycontent {\n grid-column: 1/-1;\n margin-top: 20vh;\n}\n.illustration {\n min-width: 200px;\n max-width: 15%;\n width: 300px;\n margin: auto;\n margin-bottom: 20px;\n position: relative;\n}\n.illustration svg {\n width: 100%;\n height: 100%;\n max-height: 40vh;\n}\n.illustration [fill*=\"6c63ff\"] {\n fill: var(--color-primary-element);\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./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!./src/views/TagContent.vue?vue&type=style&index=0&id=5f4f85b9&scoped=true&lang=scss&": -/*!***************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/views/TagContent.vue?vue&type=style&index=0&id=5f4f85b9&scoped=true&lang=scss& ***! - \***************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".photos-navigation[data-v-5f4f85b9] {\n display: flex;\n height: 44px;\n padding: 0 40px;\n align-items: center;\n max-width: 100%;\n}\n.photos-navigation h2[data-v-5f4f85b9] {\n padding: 0;\n margin: 0;\n}\n.heading-subline[data-v-5f4f85b9] {\n margin-left: 85px;\n margin-top: -11px;\n color: var(--color-text-maxcontrast);\n}\n.tag__photos[data-v-5f4f85b9] {\n padding: 0 64px;\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/EmptyContent.vue?vue&type=style&index=0&lang=scss&": -/*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/components/EmptyContent.vue?vue&type=style&index=0&lang=scss& ***! - \**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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_EmptyContent_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../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!./EmptyContent.vue?vue&type=style&index=0&lang=scss& */ "./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!./src/components/EmptyContent.vue?vue&type=style&index=0&lang=scss&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_EmptyContent_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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_EmptyContent_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_EmptyContent_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_EmptyContent_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/views/TagContent.vue?vue&type=style&index=0&id=5f4f85b9&scoped=true&lang=scss&": -/*!*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/views/TagContent.vue?vue&type=style&index=0&id=5f4f85b9&scoped=true&lang=scss& ***! - \*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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_TagContent_vue_vue_type_style_index_0_id_5f4f85b9_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../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!./TagContent.vue?vue&type=style&index=0&id=5f4f85b9&scoped=true&lang=scss& */ "./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!./src/views/TagContent.vue?vue&type=style&index=0&id=5f4f85b9&scoped=true&lang=scss&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_TagContent_vue_vue_type_style_index_0_id_5f4f85b9_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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_TagContent_vue_vue_type_style_index_0_id_5f4f85b9_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_TagContent_vue_vue_type_style_index_0_id_5f4f85b9_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_TagContent_vue_vue_type_style_index_0_id_5f4f85b9_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/Video.vue": -/*!**********************************************************!*\ - !*** ./node_modules/vue-material-design-icons/Video.vue ***! - \**********************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _Video_vue_vue_type_template_id_ae109f02___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Video.vue?vue&type=template&id=ae109f02& */ "./node_modules/vue-material-design-icons/Video.vue?vue&type=template&id=ae109f02&"); -/* harmony import */ var _Video_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Video.vue?vue&type=script&lang=js& */ "./node_modules/vue-material-design-icons/Video.vue?vue&type=script&lang=js&"); -/* harmony import */ var _vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - - - -/* normalize component */ -; -var component = (0,_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])( - _Video_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _Video_vue_vue_type_template_id_ae109f02___WEBPACK_IMPORTED_MODULE_0__.render, - _Video_vue_vue_type_template_id_ae109f02___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - null, - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "node_modules/vue-material-design-icons/Video.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Video.vue?vue&type=script&lang=js&": -/*!**********************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Video.vue?vue&type=script&lang=js& ***! - \**********************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: "VideoIcon", - emits: ['click'], - props: { - title: { - type: String, - }, - fillColor: { - type: String, - default: "currentColor" - }, - size: { - type: Number, - default: 24 - } - } -}); - - -/***/ }), - -/***/ "./src/components/EmptyContent.vue": -/*!*****************************************!*\ - !*** ./src/components/EmptyContent.vue ***! - \*****************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _EmptyContent_vue_vue_type_template_id_6c3ea49c___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./EmptyContent.vue?vue&type=template&id=6c3ea49c& */ "./src/components/EmptyContent.vue?vue&type=template&id=6c3ea49c&"); -/* harmony import */ var _EmptyContent_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./EmptyContent.vue?vue&type=script&lang=js& */ "./src/components/EmptyContent.vue?vue&type=script&lang=js&"); -/* harmony import */ var _EmptyContent_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./EmptyContent.vue?vue&type=style&index=0&lang=scss& */ "./src/components/EmptyContent.vue?vue&type=style&index=0&lang=scss&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( - _EmptyContent_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _EmptyContent_vue_vue_type_template_id_6c3ea49c___WEBPACK_IMPORTED_MODULE_0__.render, - _EmptyContent_vue_vue_type_template_id_6c3ea49c___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - null, - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/EmptyContent.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/views/TagContent.vue": -/*!**********************************!*\ - !*** ./src/views/TagContent.vue ***! - \**********************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _TagContent_vue_vue_type_template_id_5f4f85b9_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./TagContent.vue?vue&type=template&id=5f4f85b9&scoped=true& */ "./src/views/TagContent.vue?vue&type=template&id=5f4f85b9&scoped=true&"); -/* harmony import */ var _TagContent_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./TagContent.vue?vue&type=script&lang=js& */ "./src/views/TagContent.vue?vue&type=script&lang=js&"); -/* harmony import */ var _TagContent_vue_vue_type_style_index_0_id_5f4f85b9_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./TagContent.vue?vue&type=style&index=0&id=5f4f85b9&scoped=true&lang=scss& */ "./src/views/TagContent.vue?vue&type=style&index=0&id=5f4f85b9&scoped=true&lang=scss&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( - _TagContent_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _TagContent_vue_vue_type_template_id_5f4f85b9_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render, - _TagContent_vue_vue_type_template_id_5f4f85b9_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - "5f4f85b9", - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/views/TagContent.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/EmptyContent.vue?vue&type=script&lang=js&": -/*!******************************************************************!*\ - !*** ./src/components/EmptyContent.vue?vue&type=script&lang=js& ***! - \******************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_EmptyContent_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EmptyContent.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/EmptyContent.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_EmptyContent_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/views/TagContent.vue?vue&type=script&lang=js&": -/*!***********************************************************!*\ - !*** ./src/views/TagContent.vue?vue&type=script&lang=js& ***! - \***********************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_TagContent_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TagContent.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/TagContent.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_TagContent_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/components/EmptyContent.vue?vue&type=style&index=0&lang=scss&": -/*!***************************************************************************!*\ - !*** ./src/components/EmptyContent.vue?vue&type=style&index=0&lang=scss& ***! - \***************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_EmptyContent_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/style-loader/dist/cjs.js!../../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!./EmptyContent.vue?vue&type=style&index=0&lang=scss& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/EmptyContent.vue?vue&type=style&index=0&lang=scss&"); - - -/***/ }), - -/***/ "./src/views/TagContent.vue?vue&type=style&index=0&id=5f4f85b9&scoped=true&lang=scss&": -/*!********************************************************************************************!*\ - !*** ./src/views/TagContent.vue?vue&type=style&index=0&id=5f4f85b9&scoped=true&lang=scss& ***! - \********************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_TagContent_vue_vue_type_style_index_0_id_5f4f85b9_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/style-loader/dist/cjs.js!../../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!./TagContent.vue?vue&type=style&index=0&id=5f4f85b9&scoped=true&lang=scss& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/views/TagContent.vue?vue&type=style&index=0&id=5f4f85b9&scoped=true&lang=scss&"); - - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/Video.vue?vue&type=script&lang=js&": -/*!***********************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/Video.vue?vue&type=script&lang=js& ***! - \***********************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _vue_loader_lib_index_js_vue_loader_options_Video_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/index.js??vue-loader-options!./Video.vue?vue&type=script&lang=js& */ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Video.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_vue_loader_lib_index_js_vue_loader_options_Video_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/Video.vue?vue&type=template&id=ae109f02&": -/*!*****************************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/Video.vue?vue&type=template&id=ae109f02& ***! - \*****************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_Video_vue_vue_type_template_id_ae109f02___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_Video_vue_vue_type_template_id_ae109f02___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_Video_vue_vue_type_template_id_ae109f02___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../vue-loader/lib/index.js??vue-loader-options!./Video.vue?vue&type=template&id=ae109f02& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Video.vue?vue&type=template&id=ae109f02&"); - - -/***/ }), - -/***/ "./src/components/EmptyContent.vue?vue&type=template&id=6c3ea49c&": -/*!************************************************************************!*\ - !*** ./src/components/EmptyContent.vue?vue&type=template&id=6c3ea49c& ***! - \************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_EmptyContent_vue_vue_type_template_id_6c3ea49c___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_EmptyContent_vue_vue_type_template_id_6c3ea49c___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_EmptyContent_vue_vue_type_template_id_6c3ea49c___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EmptyContent.vue?vue&type=template&id=6c3ea49c& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/EmptyContent.vue?vue&type=template&id=6c3ea49c&"); - - -/***/ }), - -/***/ "./src/views/TagContent.vue?vue&type=template&id=5f4f85b9&scoped=true&": -/*!*****************************************************************************!*\ - !*** ./src/views/TagContent.vue?vue&type=template&id=5f4f85b9&scoped=true& ***! - \*****************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_TagContent_vue_vue_type_template_id_5f4f85b9_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_TagContent_vue_vue_type_template_id_5f4f85b9_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_TagContent_vue_vue_type_template_id_5f4f85b9_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TagContent.vue?vue&type=template&id=5f4f85b9&scoped=true& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/TagContent.vue?vue&type=template&id=5f4f85b9&scoped=true&"); - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Video.vue?vue&type=template&id=ae109f02&": -/*!********************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Video.vue?vue&type=template&id=ae109f02& ***! - \********************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c( - "span", - _vm._b( - { - staticClass: "material-design-icon video-icon", - attrs: { - "aria-hidden": !_vm.title, - "aria-label": _vm.title, - role: "img", - }, - on: { - click: function ($event) { - return _vm.$emit("click", $event) - }, - }, - }, - "span", - _vm.$attrs, - false - ), - [ - _c( - "svg", - { - staticClass: "material-design-icon__svg", - attrs: { - fill: _vm.fillColor, - width: _vm.size, - height: _vm.size, - viewBox: "0 0 24 24", - }, - }, - [ - _c( - "path", - { - attrs: { - d: "M17,10.5V7A1,1 0 0,0 16,6H4A1,1 0 0,0 3,7V17A1,1 0 0,0 4,18H16A1,1 0 0,0 17,17V13.5L21,17.5V6.5L17,10.5Z", - }, - }, - [_vm.title ? _c("title", [_vm._v(_vm._s(_vm.title))]) : _vm._e()] - ), - ] - ), - ] - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/EmptyContent.vue?vue&type=template&id=6c3ea49c&": -/*!***************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/EmptyContent.vue?vue&type=template&id=6c3ea49c& ***! - \***************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _vm.isReady - ? _c("div", { staticClass: "emptycontent" }, [ - _vm.haveIllustration - ? _c("div", { - staticClass: "illustration", - domProps: { innerHTML: _vm._s(_vm.illustration) }, - }) - : _c("div", { staticClass: "icon-error" }), - _vm._v(" "), - _c("h2", [_vm._t("default")], 2), - _vm._v(" "), - _c( - "p", - { - directives: [ - { - name: "show", - rawName: "v-show", - value: _vm.$slots.desc, - expression: "$slots.desc", - }, - ], - }, - [_vm._t("desc")], - 2 - ), - ]) - : _vm._e() -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/TagContent.vue?vue&type=template&id=5f4f85b9&scoped=true&": -/*!********************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/TagContent.vue?vue&type=template&id=5f4f85b9&scoped=true& ***! - \********************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _vm.error - ? _c("EmptyContent", [ - _vm._v("\n\t" + _vm._s(_vm.t("photos", "An error occurred")) + "\n"), - ]) - : !_vm.loading - ? _c( - "div", - [ - _c( - "div", - { staticClass: "photos-navigation" }, - [ - _c( - "Actions", - { staticClass: "photos-navigation__back" }, - [ - _c( - "ActionButton", - { - on: { - click: function ($event) { - return _vm.$router.push({ name: "tags" }) - }, - }, - scopedSlots: _vm._u([ - { - key: "icon", - fn: function () { - return [_c("ArrowLeft")] - }, - proxy: true, - }, - ]), - }, - [ - _vm._v( - "\n\t\t\t\t" + - _vm._s(_vm.t("photos", "Back to tags overview")) + - "\n\t\t\t" - ), - ] - ), - ], - 1 - ), - _vm._v(" "), - _c("h2", { staticClass: "photos-navigation__title" }, [ - _vm._v("\n\t\t\t" + _vm._s(_vm.path) + "\n\t\t"), - ]), - ], - 1 - ), - _vm._v(" "), - _c("div", { staticClass: "heading-subline" }, [ - _vm._v( - "\n\t\t" + - _vm._s( - _vm.n("photos", "%n photo", "%n photos", _vm.tag.files.length) - ) + - "\n\t" - ), - ]), - _vm._v(" "), - _vm.isEmpty - ? _c( - "EmptyContent", - { - key: "emptycontent", - attrs: { "illustration-name": "empty" }, - scopedSlots: _vm._u( - [ - { - key: "desc", - fn: function () { - return [ - _vm._v( - "\n\t\t\t" + - _vm._s( - _vm.t( - "photos", - "Photos with tags will show up here" - ) - ) + - "\n\t\t" - ), - ] - }, - proxy: true, - }, - ], - null, - false, - 4132175345 - ), - }, - [ - _vm._v( - "\n\t\t" + _vm._s(_vm.t("photos", "No tags yet")) + "\n\t\t" - ), - ] - ) - : _vm._e(), - _vm._v(" "), - _c("FilesListViewer", { - staticClass: "tag__photos", - attrs: { - "use-window": true, - "file-ids": _vm.fileIds, - "base-height": _vm.isMobile ? 120 : 200, - loading: _vm.loading, - }, - scopedSlots: _vm._u([ - { - key: "default", - fn: function (ref) { - var file = ref.file - var visibility = ref.visibility - return _c("File", { - attrs: { - file: _vm.files[file.id], - "allow-selection": true, - selected: _vm.selection[file.id] === true, - visibility: visibility, - semaphore: _vm.semaphore, - }, - on: { - click: _vm.openViewer, - "select-toggled": _vm.onFileSelectToggle, - }, - }) - }, - }, - ]), - }), - ], - 1 - ) - : _vm._e() -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./src/assets/Illustrations lazy recursive ^\\.\\/.*\\.svg$": -/*!***********************************************************************!*\ - !*** ./src/assets/Illustrations/ lazy ^\.\/.*\.svg$ namespace object ***! - \***********************************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var map = { - "./empty.svg": [ - "./src/assets/Illustrations/empty.svg", - "src_assets_Illustrations_empty_svg" - ], - "./folder.svg": [ - "./src/assets/Illustrations/folder.svg", - "src_assets_Illustrations_folder_svg" - ], - "./images.svg": [ - "./src/assets/Illustrations/images.svg", - "src_assets_Illustrations_images_svg" - ] -}; -function webpackAsyncContext(req) { - if(!__webpack_require__.o(map, req)) { - return Promise.resolve().then(() => { - var e = new Error("Cannot find module '" + req + "'"); - e.code = 'MODULE_NOT_FOUND'; - throw e; - }); - } - - var ids = map[req], id = ids[0]; - return __webpack_require__.e(ids[1]).then(() => { - return __webpack_require__.t(id, 1 | 16); - }); -} -webpackAsyncContext.keys = () => (Object.keys(map)); -webpackAsyncContext.id = "./src/assets/Illustrations lazy recursive ^\\.\\/.*\\.svg$"; -module.exports = webpackAsyncContext; - -/***/ }) - -}]); -//# sourceMappingURL=photos-node_modules_vue-material-design-icons_Video_vue-src_views_TagContent_vue.js.map?v=dcf9e9d22728e8b7d313 \ No newline at end of file diff --git a/js/photos-node_modules_vue-material-design-icons_Video_vue-src_views_TagContent_vue.js.map b/js/photos-node_modules_vue-material-design-icons_Video_vue-src_views_TagContent_vue.js.map deleted file mode 100644 index 4071bf279..000000000 --- a/js/photos-node_modules_vue-material-design-icons_Video_vue-src_views_TagContent_vue.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-node_modules_vue-material-design-icons_Video_vue-src_views_TagContent_vue.js?v=dcf9e9d22728e8b7d313","mappings":";;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACpHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACtLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;ACtCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;ACpCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;;;;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;;ACvCA;;;;;;;;;;;;;;;;ACAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;ACrDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;ACnCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACjJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sources":["webpack:///photos/src/components/EmptyContent.vue?vue&type=script&lang=js&","webpack:///photos/src/views/TagContent.vue?vue&type=script&lang=js&","webpack:///photos/src/components/EmptyContent.vue?vue&type=style&index=0&lang=scss&","webpack:///photos/src/views/TagContent.vue?vue&type=style&index=0&id=5f4f85b9&scoped=true&lang=scss&","webpack://photos/./src/components/EmptyContent.vue?7390","webpack://photos/./src/views/TagContent.vue?3526","webpack:///photos/node_modules/vue-material-design-icons/Video.vue","webpack:///photos/node_modules/vue-material-design-icons/Video.vue?vue&type=script&lang=js&","webpack:///photos/src/components/EmptyContent.vue","webpack:///photos/src/views/TagContent.vue","webpack://photos/./src/components/EmptyContent.vue?2b0c","webpack://photos/./src/views/TagContent.vue?bd55","webpack://photos/./node_modules/vue-material-design-icons/Video.vue?f118","webpack:///photos/node_modules/vue-material-design-icons/Video.vue?vue&type=template&id=ae109f02&","webpack:///photos/src/components/EmptyContent.vue?vue&type=template&id=6c3ea49c&","webpack:///photos/src/views/TagContent.vue?vue&type=template&id=5f4f85b9&scoped=true&","webpack:///photos/src/assets/Illustrations|lazy|/^\\.\\/.*\\.svg$/|groupOptions: {}|namespace object"],"sourcesContent":["//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nexport default {\n name: 'EmptyContent',\n props: {\n illustrationName: {\n type: String,\n default: ''\n }\n },\n\n data() {\n return {\n illustration: ''\n };\n },\n\n computed: {\n /**\n * Does this component have an illustration\n *\n * @return {boolean}\n */\n haveIllustration() {\n return this.illustrationName !== '';\n },\n\n /**\n * Is the illustration loaded\n *\n * @return {boolean}\n */\n isLoaded() {\n if (!this.haveIllustration) {\n return true;\n }\n\n return this.illustration !== '';\n },\n\n /**\n * The component is ready if the illustration\n * is done loading or if there is none\n *\n * @return {boolean}\n */\n isReady() {\n return !this.haveIllustration || this.haveIllustration && this.isLoaded;\n }\n\n },\n\n /**\n * Fetch the new illustration as soon as it changes\n */\n watch: {\n illustrationName() {\n this.getIllustration();\n }\n\n },\n\n beforeMount() {\n this.getIllustration();\n },\n\n methods: {\n /**\n * Fetch the illustration as webpack chunk\n */\n async getIllustration() {\n this.illustration = '';\n\n if (this.illustrationName !== '') {\n try {\n const illustration = await import(`../assets/Illustrations/${this.illustrationName}.svg`);\n this.illustration = illustration.default;\n } catch (error) {\n console.error('Could not get the error illustration', error);\n }\n }\n }\n\n }\n};","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport { mapGetters } from 'vuex';\nimport EmptyContent from '../components/EmptyContent';\nimport File from '../components/File';\nimport FilesListViewer from '../components/FilesListViewer';\nimport { isMobile } from '@nextcloud/vue';\nimport SemaphoreWithPriority from '../utils/semaphoreWithPriority';\nimport FilesSelectionMixin from '../mixins/FilesSelectionMixin';\nimport Actions from '@nextcloud/vue/dist/Components/Actions';\nimport ActionButton from '@nextcloud/vue/dist/Components/ActionButton';\nimport ArrowLeft from 'vue-material-design-icons/ArrowLeft';\nimport AbortControllerMixin from '../mixins/AbortControllerMixin';\nexport default {\n name: 'TagContent',\n components: {\n File,\n FilesListViewer,\n EmptyContent,\n Actions,\n ActionButton,\n ArrowLeft\n },\n mixins: [isMobile, FilesSelectionMixin, AbortControllerMixin],\n props: {\n path: {\n type: String,\n default: ''\n }\n },\n\n data() {\n return {\n error: null,\n loading: false,\n semaphore: new SemaphoreWithPriority(30)\n };\n },\n\n computed: { // global lists\n ...mapGetters(['files', 'tags', 'tagsNames']),\n\n // current tag id from current path\n tagId() {\n return this.$store.getters.tagId(this.path);\n },\n\n // current tag\n tag() {\n return this.tags[this.tagId];\n },\n\n // files list of the current tag\n fileIds() {\n return this.tag ? this.tag.files : [];\n },\n\n isEmpty() {\n return this.fileIds.length === 0;\n }\n\n },\n watch: {\n async path() {\n this.fetchContent();\n }\n\n },\n\n async beforeMount() {\n this.fetchContent();\n },\n\n methods: {\n async fetchContent() {\n // close any potential opened viewer\n OCA.Viewer.close(); // if we don't already have some cached data let's show a loader\n\n if (!this.tags[this.tagId]) {\n this.loading = true;\n await this.$store.dispatch('fetchAllTags', {\n signal: this.abortController.signal\n });\n }\n\n this.error = null;\n\n try {\n await this.$store.dispatch('fetchTagFiles', {\n id: this.tagId,\n signal: this.abortController.signal\n });\n } catch (error) {\n console.error(error);\n this.error = true;\n } finally {\n // done loading\n this.loading = false;\n }\n },\n\n openViewer(fileId) {\n const file = this.files[fileId];\n OCA.Viewer.open({\n path: file.filename,\n list: this.fileIds.map(fileId => this.files[fileId]),\n loadMore: file.loadMore ? async () => await file.loadMore(true) : () => [],\n canLoop: file.canLoop\n });\n }\n\n }\n};","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".emptycontent {\\n grid-column: 1/-1;\\n margin-top: 20vh;\\n}\\n.illustration {\\n min-width: 200px;\\n max-width: 15%;\\n width: 300px;\\n margin: auto;\\n margin-bottom: 20px;\\n position: relative;\\n}\\n.illustration svg {\\n width: 100%;\\n height: 100%;\\n max-height: 40vh;\\n}\\n.illustration [fill*=\\\"6c63ff\\\"] {\\n fill: var(--color-primary-element);\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".photos-navigation[data-v-5f4f85b9] {\\n display: flex;\\n height: 44px;\\n padding: 0 40px;\\n align-items: center;\\n max-width: 100%;\\n}\\n.photos-navigation h2[data-v-5f4f85b9] {\\n padding: 0;\\n margin: 0;\\n}\\n.heading-subline[data-v-5f4f85b9] {\\n margin-left: 85px;\\n margin-top: -11px;\\n color: var(--color-text-maxcontrast);\\n}\\n.tag__photos[data-v-5f4f85b9] {\\n padding: 0 64px;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./EmptyContent.vue?vue&type=style&index=0&lang=scss&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./EmptyContent.vue?vue&type=style&index=0&lang=scss&\";\n export default content && content.locals ? content.locals : undefined;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./TagContent.vue?vue&type=style&index=0&id=5f4f85b9&scoped=true&lang=scss&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./TagContent.vue?vue&type=style&index=0&id=5f4f85b9&scoped=true&lang=scss&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Video.vue?vue&type=template&id=ae109f02&\"\nimport script from \"./Video.vue?vue&type=script&lang=js&\"\nexport * from \"./Video.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/louis/workspace/nextcloud/apps/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('ae109f02')) {\n api.createRecord('ae109f02', component.options)\n } else {\n api.reload('ae109f02', component.options)\n }\n module.hot.accept(\"./Video.vue?vue&type=template&id=ae109f02&\", function () {\n api.rerender('ae109f02', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"node_modules/vue-material-design-icons/Video.vue\"\nexport default component.exports","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nexport default {\n name: \"VideoIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n","import { render, staticRenderFns } from \"./EmptyContent.vue?vue&type=template&id=6c3ea49c&\"\nimport script from \"./EmptyContent.vue?vue&type=script&lang=js&\"\nexport * from \"./EmptyContent.vue?vue&type=script&lang=js&\"\nimport style0 from \"./EmptyContent.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\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/louis/workspace/nextcloud/apps/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('6c3ea49c')) {\n api.createRecord('6c3ea49c', component.options)\n } else {\n api.reload('6c3ea49c', component.options)\n }\n module.hot.accept(\"./EmptyContent.vue?vue&type=template&id=6c3ea49c&\", function () {\n api.rerender('6c3ea49c', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/EmptyContent.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./TagContent.vue?vue&type=template&id=5f4f85b9&scoped=true&\"\nimport script from \"./TagContent.vue?vue&type=script&lang=js&\"\nexport * from \"./TagContent.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TagContent.vue?vue&type=style&index=0&id=5f4f85b9&scoped=true&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 \"5f4f85b9\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/louis/workspace/nextcloud/apps/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('5f4f85b9')) {\n api.createRecord('5f4f85b9', component.options)\n } else {\n api.reload('5f4f85b9', component.options)\n }\n module.hot.accept(\"./TagContent.vue?vue&type=template&id=5f4f85b9&scoped=true&\", function () {\n api.rerender('5f4f85b9', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/views/TagContent.vue\"\nexport default component.exports","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EmptyContent.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!./EmptyContent.vue?vue&type=script&lang=js&\"","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TagContent.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!./TagContent.vue?vue&type=script&lang=js&\"","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Video.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Video.vue?vue&type=script&lang=js&\"","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"span\",\n _vm._b(\n {\n staticClass: \"material-design-icon video-icon\",\n attrs: {\n \"aria-hidden\": !_vm.title,\n \"aria-label\": _vm.title,\n role: \"img\",\n },\n on: {\n click: function ($event) {\n return _vm.$emit(\"click\", $event)\n },\n },\n },\n \"span\",\n _vm.$attrs,\n false\n ),\n [\n _c(\n \"svg\",\n {\n staticClass: \"material-design-icon__svg\",\n attrs: {\n fill: _vm.fillColor,\n width: _vm.size,\n height: _vm.size,\n viewBox: \"0 0 24 24\",\n },\n },\n [\n _c(\n \"path\",\n {\n attrs: {\n d: \"M17,10.5V7A1,1 0 0,0 16,6H4A1,1 0 0,0 3,7V17A1,1 0 0,0 4,18H16A1,1 0 0,0 17,17V13.5L21,17.5V6.5L17,10.5Z\",\n },\n },\n [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()]\n ),\n ]\n ),\n ]\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _vm.isReady\n ? _c(\"div\", { staticClass: \"emptycontent\" }, [\n _vm.haveIllustration\n ? _c(\"div\", {\n staticClass: \"illustration\",\n domProps: { innerHTML: _vm._s(_vm.illustration) },\n })\n : _c(\"div\", { staticClass: \"icon-error\" }),\n _vm._v(\" \"),\n _c(\"h2\", [_vm._t(\"default\")], 2),\n _vm._v(\" \"),\n _c(\n \"p\",\n {\n directives: [\n {\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.$slots.desc,\n expression: \"$slots.desc\",\n },\n ],\n },\n [_vm._t(\"desc\")],\n 2\n ),\n ])\n : _vm._e()\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _vm.error\n ? _c(\"EmptyContent\", [\n _vm._v(\"\\n\\t\" + _vm._s(_vm.t(\"photos\", \"An error occurred\")) + \"\\n\"),\n ])\n : !_vm.loading\n ? _c(\n \"div\",\n [\n _c(\n \"div\",\n { staticClass: \"photos-navigation\" },\n [\n _c(\n \"Actions\",\n { staticClass: \"photos-navigation__back\" },\n [\n _c(\n \"ActionButton\",\n {\n on: {\n click: function ($event) {\n return _vm.$router.push({ name: \"tags\" })\n },\n },\n scopedSlots: _vm._u([\n {\n key: \"icon\",\n fn: function () {\n return [_c(\"ArrowLeft\")]\n },\n proxy: true,\n },\n ]),\n },\n [\n _vm._v(\n \"\\n\\t\\t\\t\\t\" +\n _vm._s(_vm.t(\"photos\", \"Back to tags overview\")) +\n \"\\n\\t\\t\\t\"\n ),\n ]\n ),\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\"h2\", { staticClass: \"photos-navigation__title\" }, [\n _vm._v(\"\\n\\t\\t\\t\" + _vm._s(_vm.path) + \"\\n\\t\\t\"),\n ]),\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"heading-subline\" }, [\n _vm._v(\n \"\\n\\t\\t\" +\n _vm._s(\n _vm.n(\"photos\", \"%n photo\", \"%n photos\", _vm.tag.files.length)\n ) +\n \"\\n\\t\"\n ),\n ]),\n _vm._v(\" \"),\n _vm.isEmpty\n ? _c(\n \"EmptyContent\",\n {\n key: \"emptycontent\",\n attrs: { \"illustration-name\": \"empty\" },\n scopedSlots: _vm._u(\n [\n {\n key: \"desc\",\n fn: function () {\n return [\n _vm._v(\n \"\\n\\t\\t\\t\" +\n _vm._s(\n _vm.t(\n \"photos\",\n \"Photos with tags will show up here\"\n )\n ) +\n \"\\n\\t\\t\"\n ),\n ]\n },\n proxy: true,\n },\n ],\n null,\n false,\n 4132175345\n ),\n },\n [\n _vm._v(\n \"\\n\\t\\t\" + _vm._s(_vm.t(\"photos\", \"No tags yet\")) + \"\\n\\t\\t\"\n ),\n ]\n )\n : _vm._e(),\n _vm._v(\" \"),\n _c(\"FilesListViewer\", {\n staticClass: \"tag__photos\",\n attrs: {\n \"use-window\": true,\n \"file-ids\": _vm.fileIds,\n \"base-height\": _vm.isMobile ? 120 : 200,\n loading: _vm.loading,\n },\n scopedSlots: _vm._u([\n {\n key: \"default\",\n fn: function (ref) {\n var file = ref.file\n var visibility = ref.visibility\n return _c(\"File\", {\n attrs: {\n file: _vm.files[file.id],\n \"allow-selection\": true,\n selected: _vm.selection[file.id] === true,\n visibility: visibility,\n semaphore: _vm.semaphore,\n },\n on: {\n click: _vm.openViewer,\n \"select-toggled\": _vm.onFileSelectToggle,\n },\n })\n },\n },\n ]),\n }),\n ],\n 1\n )\n : _vm._e()\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var map = {\n\t\"./empty.svg\": [\n\t\t\"./src/assets/Illustrations/empty.svg\",\n\t\t\"src_assets_Illustrations_empty_svg\"\n\t],\n\t\"./folder.svg\": [\n\t\t\"./src/assets/Illustrations/folder.svg\",\n\t\t\"src_assets_Illustrations_folder_svg\"\n\t],\n\t\"./images.svg\": [\n\t\t\"./src/assets/Illustrations/images.svg\",\n\t\t\"src_assets_Illustrations_images_svg\"\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(() => {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\n\tvar ids = map[req], id = ids[0];\n\treturn __webpack_require__.e(ids[1]).then(() => {\n\t\treturn __webpack_require__.t(id, 1 | 16);\n\t});\n}\nwebpackAsyncContext.keys = () => (Object.keys(map));\nwebpackAsyncContext.id = \"./src/assets/Illustrations lazy recursive ^\\\\.\\\\/.*\\\\.svg$\";\nmodule.exports = webpackAsyncContext;"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-node_modules_vue-material-design-icons_Video_vue-src_views_Tags_vue.js b/js/photos-node_modules_vue-material-design-icons_Video_vue-src_views_Tags_vue.js deleted file mode 100644 index 215b7ccb6..000000000 --- a/js/photos-node_modules_vue-material-design-icons_Video_vue-src_views_Tags_vue.js +++ /dev/null @@ -1,1283 +0,0 @@ -"use strict"; -(self["webpackChunkphotos"] = self["webpackChunkphotos"] || []).push([["node_modules_vue-material-design-icons_Video_vue-src_views_Tags_vue"],{ - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Tag.vue?vue&type=script&lang=js&": -/*!*************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Tag.vue?vue&type=script&lang=js& ***! - \*************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! vuex */ "./node_modules/vuex/dist/vuex.esm.js"); -/* harmony import */ var _services_TaggedImages__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../services/TaggedImages */ "./src/services/TaggedImages.js"); -/* harmony import */ var _utils_CancelableRequest__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/CancelableRequest */ "./src/utils/CancelableRequest.js"); -/* harmony import */ var _FolderTagPreview__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./FolderTagPreview */ "./src/components/FolderTagPreview.vue"); -/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js"); -function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } - -function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } - -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } - -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'Tag', - components: { - FolderTagPreview: _FolderTagPreview__WEBPACK_IMPORTED_MODULE_2__["default"] - }, - inheritAttrs: false, - props: { - item: { - type: Object, - required: true - } - }, - data: function data() { - return { - cancelRequest: null - }; - }, - computed: _objectSpread(_objectSpread({}, (0,vuex__WEBPACK_IMPORTED_MODULE_3__.mapGetters)(['files', 'tags'])), {}, { - // files list of the current folder - folderContent: function folderContent() { - return this.tags[this.item.injected.id].files; - }, - fileList: function fileList() { - var _this = this; - - return this.folderContent ? this.folderContent.map(function (id) { - return _this.files[id]; - }).filter(function (file) { - return !!file; - }).slice(0, 4) // only get the 4 first images - : []; - } - }), - beforeDestroy: function beforeDestroy() { - // cancel any pending requests - if (this.cancelRequest) { - this.cancelRequest('Navigated away'); - } - }, - created: function created() { - var _this2 = this; - - return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() { - var _cancelableRequest, request, cancel, files; - - return regeneratorRuntime.wrap(function _callee$(_context) { - while (1) { - switch (_context.prev = _context.next) { - case 0: - // init cancellable request - _cancelableRequest = (0,_utils_CancelableRequest__WEBPACK_IMPORTED_MODULE_1__["default"])(_services_TaggedImages__WEBPACK_IMPORTED_MODULE_0__["default"]), request = _cancelableRequest.request, cancel = _cancelableRequest.cancel; - _this2.cancelRequest = cancel; - _context.prev = 2; - _context.next = 5; - return request(_this2.item.injected.id); - - case 5: - files = _context.sent; - - _this2.$store.dispatch('updateTag', { - id: _this2.item.injected.id, - files: files - }); - - _this2.$store.dispatch('appendFiles', files); - - _context.next = 13; - break; - - case 10: - _context.prev = 10; - _context.t0 = _context["catch"](2); - - if (_context.t0.response && _context.t0.response.status) { - console.error('Failed to get folder content', _this2.item.injected.id, _context.t0.response); - } - - case 13: - _context.prev = 13; - _this2.cancelRequest = null; - return _context.finish(13); - - case 16: - case "end": - return _context.stop(); - } - } - }, _callee, null, [[2, 10, 13, 16]]); - }))(); - } -}); - -/***/ }), - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/Tags.vue?vue&type=script&lang=js&": -/*!*********************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/Tags.vue?vue&type=script&lang=js& ***! - \*********************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! vuex */ "./node_modules/vuex/dist/vuex.esm.js"); -/* harmony import */ var vue_virtual_grid__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue-virtual-grid */ "./node_modules/vue-virtual-grid/dist/vue-virtual-grid.es.js"); -/* harmony import */ var _services_SystemTags__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../services/SystemTags */ "./src/services/SystemTags.js"); -/* harmony import */ var _services_TaggedImages__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../services/TaggedImages */ "./src/services/TaggedImages.js"); -/* harmony import */ var _components_EmptyContent__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../components/EmptyContent */ "./src/components/EmptyContent.vue"); -/* harmony import */ var _components_Tag__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../components/Tag */ "./src/components/Tag.vue"); -/* harmony import */ var _components_File__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../components/File */ "./src/components/File.vue"); -/* harmony import */ var _components_Navigation__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../components/Navigation */ "./src/components/Navigation.vue"); -/* harmony import */ var _mixins_GridConfig__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../mixins/GridConfig */ "./src/mixins/GridConfig.js"); -/* harmony import */ var _utils_CancelableRequest__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../utils/CancelableRequest */ "./src/utils/CancelableRequest.js"); -/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js"); -function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } - -function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } - -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } - -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - - - - - - - - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'Tags', - components: { - VirtualGrid: vue_virtual_grid__WEBPACK_IMPORTED_MODULE_0__["default"], - EmptyContent: _components_EmptyContent__WEBPACK_IMPORTED_MODULE_3__["default"], - Navigation: _components_Navigation__WEBPACK_IMPORTED_MODULE_6__["default"] - }, - mixins: [_mixins_GridConfig__WEBPACK_IMPORTED_MODULE_7__["default"]], - props: { - rootTitle: { - type: String, - required: true - }, - path: { - type: String, - default: '' - }, - isRoot: { - type: Boolean, - default: true - } - }, - data: function data() { - return { - error: null, - cancelRequest: null, - loading: false - }; - }, - computed: _objectSpread(_objectSpread({}, (0,vuex__WEBPACK_IMPORTED_MODULE_9__.mapGetters)(['files', 'tags', 'tagsNames'])), {}, { - // current tag id from current path - tagId: function tagId() { - return this.$store.getters.tagId(this.path); - }, - // current tag - tag: function tag() { - return this.tags[this.tagId]; - }, - tagsList: function tagsList() { - var _this = this; - - return Object.values(this.tagsNames).map(function (tagsId) { - return _this.tags[tagsId]; - }); - }, - // files list of the current tag - fileList: function fileList() { - var _this2 = this; - - return this.tag && this.tag.files.map(function (id) { - return _this2.files[id]; - }).filter(function (file) { - return !!file; - }); - }, - contentList: function contentList() { - var _this3 = this; - - if (this.isRoot) { - return this.tagsList.flatMap(function (tag) { - return tag.id === '' ? [] : [{ - id: "tag-".concat(tag.id), - injected: _objectSpread({}, tag), - width: 256, - height: 256, - columnSpan: 1, - renderComponent: _components_Tag__WEBPACK_IMPORTED_MODULE_4__["default"] - }]; - }); - } - - return this.fileList.map(function (file) { - return { - id: "file-".concat(file.fileid), - injected: _objectSpread(_objectSpread({}, file), {}, { - list: _this3.fileList - }), - width: 256, - height: 256, - columnSpan: 1, - renderComponent: _components_File__WEBPACK_IMPORTED_MODULE_5__["default"] - }; - }); - }, - isEmpty: function isEmpty() { - if (this.isRoot) { - return Object.keys(this.tagsNames).length === 0; - } - - return this.fileList.length === 0; - } - }), - watch: { - path: function path() { - var _this4 = this; - - return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() { - return regeneratorRuntime.wrap(function _callee$(_context) { - while (1) { - switch (_context.prev = _context.next) { - case 0: - if (_this4.tagId) { - _context.next = 3; - break; - } - - _context.next = 3; - return _this4.fetchRootContent(); - - case 3: - // if we're not in the root, we fetch the data - if (!_this4.isRoot) { - _this4.fetchContent(); - } - - case 4: - case "end": - return _context.stop(); - } - } - }, _callee); - }))(); - } - }, - beforeDestroy: function beforeDestroy() { - // cancel any pending requests - if (this.cancelRequest) { - this.cancelRequest('Navigated away'); - } - }, - beforeMount: function beforeMount() { - var _this5 = this; - - return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() { - return regeneratorRuntime.wrap(function _callee2$(_context2) { - while (1) { - switch (_context2.prev = _context2.next) { - case 0: - if (_this5.tagId) { - _context2.next = 3; - break; - } - - _context2.next = 3; - return _this5.fetchRootContent(); - - case 3: - // if we're not in the root, we fetch the data - if (!_this5.isRoot) { - _this5.fetchContent(); - } - - case 4: - case "end": - return _context2.stop(); - } - } - }, _callee2); - }))(); - }, - methods: { - fetchRootContent: function fetchRootContent() { - var _this6 = this; - - return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee3() { - var _cancelableRequest, request, cancel, tags; - - return regeneratorRuntime.wrap(function _callee3$(_context3) { - while (1) { - switch (_context3.prev = _context3.next) { - case 0: - // cancel any pending requests - if (_this6.cancelRequest) { - _this6.cancelRequest('Changed folder'); - } // close any potential opened viewer - - - OCA.Viewer.close(); // if we don't already have some cached data let's show a loader - - if (!_this6.tags[_this6.tagId]) { - _this6.loading = true; - } - - _this6.error = null; // init cancellable request - - _cancelableRequest = (0,_utils_CancelableRequest__WEBPACK_IMPORTED_MODULE_8__["default"])(_services_SystemTags__WEBPACK_IMPORTED_MODULE_1__["default"]), request = _cancelableRequest.request, cancel = _cancelableRequest.cancel; - _this6.cancelRequest = cancel; - _context3.prev = 6; - _context3.next = 9; - return request(); - - case 9: - tags = _context3.sent; - - _this6.$store.dispatch('updateTags', tags); - - _context3.next = 17; - break; - - case 13: - _context3.prev = 13; - _context3.t0 = _context3["catch"](6); - console.error(_context3.t0); - _this6.error = true; - - case 17: - _context3.prev = 17; - // done loading - _this6.loading = false; - _this6.cancelRequest = null; - return _context3.finish(17); - - case 21: - case "end": - return _context3.stop(); - } - } - }, _callee3, null, [[6, 13, 17, 21]]); - }))(); - }, - fetchContent: function fetchContent() { - var _this7 = this; - - return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee4() { - var _cancelableRequest2, request, cancel, files; - - return regeneratorRuntime.wrap(function _callee4$(_context4) { - while (1) { - switch (_context4.prev = _context4.next) { - case 0: - // cancel any pending requests - if (_this7.cancelRequest) { - _this7.cancelRequest(); - } // close any potential opened viewer - - - OCA.Viewer.close(); // if we don't already have some cached data let's show a loader - - if (!_this7.tags[_this7.tagId]) { - _this7.loading = true; - } - - _this7.error = null; // init cancellable request - - _cancelableRequest2 = (0,_utils_CancelableRequest__WEBPACK_IMPORTED_MODULE_8__["default"])(_services_TaggedImages__WEBPACK_IMPORTED_MODULE_2__["default"]), request = _cancelableRequest2.request, cancel = _cancelableRequest2.cancel; - _this7.cancelRequest = cancel; - _context4.prev = 6; - _context4.next = 9; - return request(_this7.tagId); - - case 9: - files = _context4.sent; - - _this7.$store.dispatch('updateTag', { - id: _this7.tagId, - files: files - }); - - _this7.$store.dispatch('appendFiles', files); - - _context4.next = 18; - break; - - case 14: - _context4.prev = 14; - _context4.t0 = _context4["catch"](6); - console.error(_context4.t0); - _this7.error = true; - - case 18: - _context4.prev = 18; - // done loading - _this7.loading = false; - _this7.cancelRequest = null; - return _context4.finish(18); - - case 22: - case "end": - return _context4.stop(); - } - } - }, _callee4, null, [[6, 14, 18, 22]]); - }))(); - } - } -}); - -/***/ }), - -/***/ "./src/services/SystemTags.js": -/*!************************************!*\ - !*** ./src/services/SystemTags.js ***! - \************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* export default binding */ __WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _DavClient__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./DavClient */ "./src/services/DavClient.js"); -/* harmony import */ var _utils_fileUtils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/fileUtils */ "./src/utils/fileUtils.js"); -function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } - -function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } - -/** - * @copyright Copyright (c) 2019 John Molakvoæ - * - * @author John Molakvoæ - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ - - -/** - * List system tags - * - * @param {string} path the path relative to the user root - * @param {object} [options] optional options for axios - * @return {Array} the file list - */ - -/* harmony default export */ function __WEBPACK_DEFAULT_EXPORT__(_x) { - return _ref.apply(this, arguments); -} - -function _ref() { - _ref = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(path) { - var options, - response, - _args = arguments; - return regeneratorRuntime.wrap(function _callee$(_context) { - while (1) { - switch (_context.prev = _context.next) { - case 0: - options = _args.length > 1 && _args[1] !== undefined ? _args[1] : {}; - _context.next = 3; - return _DavClient__WEBPACK_IMPORTED_MODULE_0__["default"].getDirectoryContents('/systemtags/', Object.assign({}, { - data: "\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t", - details: true - }, options)); - - case 3: - response = _context.sent; - return _context.abrupt("return", response.data.map(function (data) { - return (0,_utils_fileUtils__WEBPACK_IMPORTED_MODULE_1__.genFileInfo)(data); - })); - - case 5: - case "end": - return _context.stop(); - } - } - }, _callee); - })); - return _ref.apply(this, arguments); -} - -/***/ }), - -/***/ "./src/services/TaggedImages.js": -/*!**************************************!*\ - !*** ./src/services/TaggedImages.js ***! - \**************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* export default binding */ __WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _utils_fileUtils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils/fileUtils */ "./src/utils/fileUtils.js"); -/* harmony import */ var _nextcloud_auth__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/auth */ "./node_modules/@nextcloud/auth/dist/index.js"); -/* harmony import */ var _DavRequest__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./DavRequest */ "./src/services/DavRequest.js"); -/* harmony import */ var _AllowedMimes__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./AllowedMimes */ "./src/services/AllowedMimes.js"); -/* harmony import */ var _DavClient__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./DavClient */ "./src/services/DavClient.js"); -function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } - -function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } - -/** - * @copyright Copyright (c) 2019 John Molakvoæ - * - * @author John Molakvoæ - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ - - - - - -/** - * Get tagged files based on provided tag id - * - * @param {number} id the tag id to filter - * @param {object} [options] optional options for axios - * @return {Array} the file list - */ - -/* harmony default export */ function __WEBPACK_DEFAULT_EXPORT__(_x) { - return _ref.apply(this, arguments); -} - -function _ref() { - _ref = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(id) { - var options, - prefixPath, - response, - _args = arguments; - return regeneratorRuntime.wrap(function _callee$(_context) { - while (1) { - switch (_context.prev = _context.next) { - case 0: - options = _args.length > 1 && _args[1] !== undefined ? _args[1] : {}; - options = Object.assign({ - method: 'REPORT', - data: "\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t".concat(_DavRequest__WEBPACK_IMPORTED_MODULE_2__.props, "\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t").concat(id, "\n\t\t\t\t\n\t\t\t"), - details: true - }, options); - prefixPath = "/files/".concat((0,_nextcloud_auth__WEBPACK_IMPORTED_MODULE_1__.getCurrentUser)().uid); - _context.next = 5; - return _DavClient__WEBPACK_IMPORTED_MODULE_4__["default"].getDirectoryContents(prefixPath, options); - - case 5: - response = _context.sent; - return _context.abrupt("return", response.data.map(function (data) { - return (0,_utils_fileUtils__WEBPACK_IMPORTED_MODULE_0__.genFileInfo)(data); - }) // filter out unwanted mime because server REPORT service only support - // hardcoded props and mime is not one of them - // https://github.com/nextcloud/server/blob/5bf3d1bb384da56adbf205752be8f840aac3b0c5/apps/dav/lib/Connector/Sabre/FilesReportPlugin.php#L274 - .filter(function (file) { - return file.mime && _AllowedMimes__WEBPACK_IMPORTED_MODULE_3__["default"].indexOf(file.mime) !== -1; - }) // remove prefix path from full file path - .map(function (data) { - return Object.assign({}, data, { - filename: data.filename.replace(prefixPath, '') - }); - })); - - case 7: - case "end": - return _context.stop(); - } - } - }, _callee); - })); - return _ref.apply(this, arguments); -} - -/***/ }), - -/***/ "./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!./src/views/Tags.vue?vue&type=style&index=0&id=730c32d3&lang=scss&scoped=true&": -/*!*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/views/Tags.vue?vue&type=style&index=0&id=730c32d3&lang=scss&scoped=true& ***! - \*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, "@charset \"UTF-8\";\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ \n *\n * @author John Molakvoæ \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 .\n *\n */\n@media (min-width: 0px) and (max-width: 400px) {\n.grid-container[data-v-730c32d3] {\n padding: 0px 8px 256px 8px;\n}\n}\n@media (min-width: 400px) and (max-width: 700px) {\n.grid-container[data-v-730c32d3] {\n padding: 0px 8px 256px 8px;\n}\n}\n@media (min-width: 700px) and (max-width: 1024px) {\n.grid-container[data-v-730c32d3] {\n padding: 0px 44px 256px 44px;\n}\n}\n@media (min-width: 1024px) and (max-width: 1280px) {\n.grid-container[data-v-730c32d3] {\n padding: 0px 44px 256px 44px;\n}\n}\n@media (min-width: 1280px) and (max-width: 1440px) {\n.grid-container[data-v-730c32d3] {\n padding: 0px 66px 256px 66px;\n}\n}\n@media (min-width: 1440px) and (max-width: 1600px) {\n.grid-container[data-v-730c32d3] {\n padding: 0px 66px 256px 66px;\n}\n}\n@media (min-width: 1600px) and (max-width: 2048px) {\n.grid-container[data-v-730c32d3] {\n padding: 0px 66px 256px 66px;\n}\n}\n@media (min-width: 2048px) and (max-width: 2560px) {\n.grid-container[data-v-730c32d3] {\n padding: 0px 88px 256px 88px;\n}\n}\n@media (min-width: 2560px) and (max-width: 3440px) {\n.grid-container[data-v-730c32d3] {\n padding: 0px 88px 256px 88px;\n}\n}\n@media (min-width: 3440px) {\n.grid-container[data-v-730c32d3] {\n padding: 0px 88px 256px 88px;\n}\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/views/Tags.vue?vue&type=style&index=0&id=730c32d3&lang=scss&scoped=true&": -/*!*************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/views/Tags.vue?vue&type=style&index=0&id=730c32d3&lang=scss&scoped=true& ***! - \*************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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_Tags_vue_vue_type_style_index_0_id_730c32d3_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../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!./Tags.vue?vue&type=style&index=0&id=730c32d3&lang=scss&scoped=true& */ "./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!./src/views/Tags.vue?vue&type=style&index=0&id=730c32d3&lang=scss&scoped=true&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_Tags_vue_vue_type_style_index_0_id_730c32d3_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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_Tags_vue_vue_type_style_index_0_id_730c32d3_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_Tags_vue_vue_type_style_index_0_id_730c32d3_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_Tags_vue_vue_type_style_index_0_id_730c32d3_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/Video.vue": -/*!**********************************************************!*\ - !*** ./node_modules/vue-material-design-icons/Video.vue ***! - \**********************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _Video_vue_vue_type_template_id_ae109f02___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Video.vue?vue&type=template&id=ae109f02& */ "./node_modules/vue-material-design-icons/Video.vue?vue&type=template&id=ae109f02&"); -/* harmony import */ var _Video_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Video.vue?vue&type=script&lang=js& */ "./node_modules/vue-material-design-icons/Video.vue?vue&type=script&lang=js&"); -/* harmony import */ var _vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - - - -/* normalize component */ -; -var component = (0,_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])( - _Video_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _Video_vue_vue_type_template_id_ae109f02___WEBPACK_IMPORTED_MODULE_0__.render, - _Video_vue_vue_type_template_id_ae109f02___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - null, - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "node_modules/vue-material-design-icons/Video.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Video.vue?vue&type=script&lang=js&": -/*!**********************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Video.vue?vue&type=script&lang=js& ***! - \**********************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: "VideoIcon", - props: { - title: { - type: String, - }, - fillColor: { - type: String, - default: "currentColor" - }, - size: { - type: Number, - default: 24 - } - } -}); - - -/***/ }), - -/***/ "./src/components/Tag.vue": -/*!********************************!*\ - !*** ./src/components/Tag.vue ***! - \********************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _Tag_vue_vue_type_template_id_bb7ceecc___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Tag.vue?vue&type=template&id=bb7ceecc& */ "./src/components/Tag.vue?vue&type=template&id=bb7ceecc&"); -/* harmony import */ var _Tag_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Tag.vue?vue&type=script&lang=js& */ "./src/components/Tag.vue?vue&type=script&lang=js&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - - - -/* normalize component */ -; -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])( - _Tag_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _Tag_vue_vue_type_template_id_bb7ceecc___WEBPACK_IMPORTED_MODULE_0__.render, - _Tag_vue_vue_type_template_id_bb7ceecc___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - null, - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/Tag.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/views/Tags.vue": -/*!****************************!*\ - !*** ./src/views/Tags.vue ***! - \****************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _Tags_vue_vue_type_template_id_730c32d3_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Tags.vue?vue&type=template&id=730c32d3&scoped=true& */ "./src/views/Tags.vue?vue&type=template&id=730c32d3&scoped=true&"); -/* harmony import */ var _Tags_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Tags.vue?vue&type=script&lang=js& */ "./src/views/Tags.vue?vue&type=script&lang=js&"); -/* harmony import */ var _Tags_vue_vue_type_style_index_0_id_730c32d3_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Tags.vue?vue&type=style&index=0&id=730c32d3&lang=scss&scoped=true& */ "./src/views/Tags.vue?vue&type=style&index=0&id=730c32d3&lang=scss&scoped=true&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( - _Tags_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _Tags_vue_vue_type_template_id_730c32d3_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render, - _Tags_vue_vue_type_template_id_730c32d3_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - "730c32d3", - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/views/Tags.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/Tag.vue?vue&type=script&lang=js&": -/*!*********************************************************!*\ - !*** ./src/components/Tag.vue?vue&type=script&lang=js& ***! - \*********************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Tag_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tag.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Tag.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Tag_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/views/Tags.vue?vue&type=script&lang=js&": -/*!*****************************************************!*\ - !*** ./src/views/Tags.vue?vue&type=script&lang=js& ***! - \*****************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Tags_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tags.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/Tags.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Tags_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/views/Tags.vue?vue&type=style&index=0&id=730c32d3&lang=scss&scoped=true&": -/*!**************************************************************************************!*\ - !*** ./src/views/Tags.vue?vue&type=style&index=0&id=730c32d3&lang=scss&scoped=true& ***! - \**************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_Tags_vue_vue_type_style_index_0_id_730c32d3_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/style-loader/dist/cjs.js!../../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!./Tags.vue?vue&type=style&index=0&id=730c32d3&lang=scss&scoped=true& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/views/Tags.vue?vue&type=style&index=0&id=730c32d3&lang=scss&scoped=true&"); - - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/Video.vue?vue&type=script&lang=js&": -/*!***********************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/Video.vue?vue&type=script&lang=js& ***! - \***********************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _vue_loader_lib_index_js_vue_loader_options_Video_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/index.js??vue-loader-options!./Video.vue?vue&type=script&lang=js& */ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Video.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_vue_loader_lib_index_js_vue_loader_options_Video_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/Video.vue?vue&type=template&id=ae109f02&": -/*!*****************************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/Video.vue?vue&type=template&id=ae109f02& ***! - \*****************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_Video_vue_vue_type_template_id_ae109f02___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_Video_vue_vue_type_template_id_ae109f02___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_Video_vue_vue_type_template_id_ae109f02___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../vue-loader/lib/index.js??vue-loader-options!./Video.vue?vue&type=template&id=ae109f02& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Video.vue?vue&type=template&id=ae109f02&"); - - -/***/ }), - -/***/ "./src/components/Tag.vue?vue&type=template&id=bb7ceecc&": -/*!***************************************************************!*\ - !*** ./src/components/Tag.vue?vue&type=template&id=bb7ceecc& ***! - \***************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Tag_vue_vue_type_template_id_bb7ceecc___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Tag_vue_vue_type_template_id_bb7ceecc___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Tag_vue_vue_type_template_id_bb7ceecc___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tag.vue?vue&type=template&id=bb7ceecc& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Tag.vue?vue&type=template&id=bb7ceecc&"); - - -/***/ }), - -/***/ "./src/views/Tags.vue?vue&type=template&id=730c32d3&scoped=true&": -/*!***********************************************************************!*\ - !*** ./src/views/Tags.vue?vue&type=template&id=730c32d3&scoped=true& ***! - \***********************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Tags_vue_vue_type_template_id_730c32d3_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Tags_vue_vue_type_template_id_730c32d3_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Tags_vue_vue_type_template_id_730c32d3_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tags.vue?vue&type=template&id=730c32d3&scoped=true& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/Tags.vue?vue&type=template&id=730c32d3&scoped=true&"); - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Video.vue?vue&type=template&id=ae109f02&": -/*!********************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Video.vue?vue&type=template&id=ae109f02& ***! - \********************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c( - "span", - _vm._b( - { - staticClass: "material-design-icon video-icon", - attrs: { - "aria-hidden": !_vm.title, - "aria-label": _vm.title, - role: "img", - }, - on: { - click: function ($event) { - return _vm.$emit("click", $event) - }, - }, - }, - "span", - _vm.$attrs, - false - ), - [ - _c( - "svg", - { - staticClass: "material-design-icon__svg", - attrs: { - fill: _vm.fillColor, - width: _vm.size, - height: _vm.size, - viewBox: "0 0 24 24", - }, - }, - [ - _c( - "path", - { - attrs: { - d: "M17,10.5V7A1,1 0 0,0 16,6H4A1,1 0 0,0 3,7V17A1,1 0 0,0 4,18H16A1,1 0 0,0 17,17V13.5L21,17.5V6.5L17,10.5Z", - }, - }, - [_vm.title ? _c("title", [_vm._v(_vm._s(_vm.title))]) : _vm._e()] - ), - ] - ), - ] - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Tag.vue?vue&type=template&id=bb7ceecc&": -/*!******************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Tag.vue?vue&type=template&id=bb7ceecc& ***! - \******************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c("FolderTagPreview", { - attrs: { - id: _vm.item.injected.id, - icon: "icon-tag", - name: _vm.item.injected.displayName, - path: _vm.item.injected.displayName, - "file-list": _vm.fileList, - }, - }) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/Tags.vue?vue&type=template&id=730c32d3&scoped=true&": -/*!**************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/Tags.vue?vue&type=template&id=730c32d3&scoped=true& ***! - \**************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _vm.error - ? _c("EmptyContent", [ - _vm._v("\n\t" + _vm._s(_vm.t("photos", "An error occurred")) + "\n"), - ]) - : !_vm.loading - ? _c( - "div", - [ - _c("Navigation", { - key: "navigation", - attrs: { - basename: _vm.path, - filename: "/" + _vm.path, - "root-title": _vm.rootTitle, - }, - }), - _vm._v(" "), - _vm.isEmpty - ? _c( - "EmptyContent", - { - key: "emptycontent", - attrs: { "illustration-name": "empty" }, - scopedSlots: _vm._u( - [ - { - key: "desc", - fn: function () { - return [ - _vm._v( - "\n\t\t\t" + - _vm._s( - _vm.t( - "photos", - "Photos with tags will show up here" - ) - ) + - "\n\t\t" - ), - ] - }, - proxy: true, - }, - ], - null, - false, - 4132175345 - ), - }, - [ - _vm._v( - "\n\t\t" + _vm._s(_vm.t("photos", "No tags yet")) + "\n\t\t" - ), - ] - ) - : _c( - "div", - { staticClass: "grid-container" }, - [ - _c("VirtualGrid", { - ref: "virtualgrid", - attrs: { - items: _vm.contentList, - "get-column-count": function () { - return _vm.gridConfig.count - }, - "get-grid-gap": function () { - return _vm.gridConfig.gap - }, - }, - }), - ], - 1 - ), - ], - 1 - ) - : _vm._e() -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }) - -}]); -//# sourceMappingURL=photos-node_modules_vue-material-design-icons_Video_vue-src_views_Tags_vue.js.map?v=df58bd3e9ae540a3cb20 \ No newline at end of file diff --git a/js/photos-node_modules_vue-material-design-icons_Video_vue-src_views_Tags_vue.js.map b/js/photos-node_modules_vue-material-design-icons_Video_vue-src_views_Tags_vue.js.map deleted file mode 100644 index 19b69bdb2..000000000 --- a/js/photos-node_modules_vue-material-design-icons_Video_vue-src_views_Tags_vue.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-node_modules_vue-material-design-icons_Video_vue-src_views_Tags_vue.js?v=df58bd3e9ae540a3cb20","mappings":";;;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;ACvIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;ACpWA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACrEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;ACtFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;ACtCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;ACnCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;;;;ACtCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;ACvCA;;;;;;;;;;;;;;;ACAA;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;ACrDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sources":["webpack:///photos/src/components/Tag.vue?vue&type=script&lang=js&","webpack:///photos/src/views/Tags.vue?vue&type=script&lang=js&","webpack:///photos/src/services/SystemTags.js","webpack:///photos/src/services/TaggedImages.js","webpack:///photos/src/views/Tags.vue?vue&type=style&index=0&id=730c32d3&lang=scss&scoped=true&","webpack://photos/./src/views/Tags.vue?9829","webpack:///photos/node_modules/vue-material-design-icons/Video.vue","webpack:///photos/node_modules/vue-material-design-icons/Video.vue?vue&type=script&lang=js&","webpack:///photos/src/components/Tag.vue","webpack:///photos/src/views/Tags.vue","webpack://photos/./src/components/Tag.vue?86d1","webpack://photos/./src/views/Tags.vue?8481","webpack://photos/./node_modules/vue-material-design-icons/Video.vue?f118","webpack:///photos/node_modules/vue-material-design-icons/Video.vue?vue&type=template&id=ae109f02&","webpack:///photos/src/components/Tag.vue?vue&type=template&id=bb7ceecc&","webpack:///photos/src/views/Tags.vue?vue&type=template&id=730c32d3&scoped=true&"],"sourcesContent":["function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport { mapGetters } from 'vuex';\nimport getTaggedImages from '../services/TaggedImages';\nimport cancelableRequest from '../utils/CancelableRequest';\nimport FolderTagPreview from './FolderTagPreview';\nexport default {\n name: 'Tag',\n components: {\n FolderTagPreview: FolderTagPreview\n },\n inheritAttrs: false,\n props: {\n item: {\n type: Object,\n required: true\n }\n },\n data: function data() {\n return {\n cancelRequest: null\n };\n },\n computed: _objectSpread(_objectSpread({}, mapGetters(['files', 'tags'])), {}, {\n // files list of the current folder\n folderContent: function folderContent() {\n return this.tags[this.item.injected.id].files;\n },\n fileList: function fileList() {\n var _this = this;\n\n return this.folderContent ? this.folderContent.map(function (id) {\n return _this.files[id];\n }).filter(function (file) {\n return !!file;\n }).slice(0, 4) // only get the 4 first images\n : [];\n }\n }),\n beforeDestroy: function beforeDestroy() {\n // cancel any pending requests\n if (this.cancelRequest) {\n this.cancelRequest('Navigated away');\n }\n },\n created: function created() {\n var _this2 = this;\n\n return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {\n var _cancelableRequest, request, cancel, files;\n\n return regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n // init cancellable request\n _cancelableRequest = cancelableRequest(getTaggedImages), request = _cancelableRequest.request, cancel = _cancelableRequest.cancel;\n _this2.cancelRequest = cancel;\n _context.prev = 2;\n _context.next = 5;\n return request(_this2.item.injected.id);\n\n case 5:\n files = _context.sent;\n\n _this2.$store.dispatch('updateTag', {\n id: _this2.item.injected.id,\n files: files\n });\n\n _this2.$store.dispatch('appendFiles', files);\n\n _context.next = 13;\n break;\n\n case 10:\n _context.prev = 10;\n _context.t0 = _context[\"catch\"](2);\n\n if (_context.t0.response && _context.t0.response.status) {\n console.error('Failed to get folder content', _this2.item.injected.id, _context.t0.response);\n }\n\n case 13:\n _context.prev = 13;\n _this2.cancelRequest = null;\n return _context.finish(13);\n\n case 16:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, null, [[2, 10, 13, 16]]);\n }))();\n }\n};","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport { mapGetters } from 'vuex';\nimport VirtualGrid from 'vue-virtual-grid';\nimport getSystemTags from '../services/SystemTags';\nimport getTaggedImages from '../services/TaggedImages';\nimport EmptyContent from '../components/EmptyContent';\nimport Tag from '../components/Tag';\nimport File from '../components/File';\nimport Navigation from '../components/Navigation';\nimport GridConfigMixin from '../mixins/GridConfig';\nimport cancelableRequest from '../utils/CancelableRequest';\nexport default {\n name: 'Tags',\n components: {\n VirtualGrid: VirtualGrid,\n EmptyContent: EmptyContent,\n Navigation: Navigation\n },\n mixins: [GridConfigMixin],\n props: {\n rootTitle: {\n type: String,\n required: true\n },\n path: {\n type: String,\n default: ''\n },\n isRoot: {\n type: Boolean,\n default: true\n }\n },\n data: function data() {\n return {\n error: null,\n cancelRequest: null,\n loading: false\n };\n },\n computed: _objectSpread(_objectSpread({}, mapGetters(['files', 'tags', 'tagsNames'])), {}, {\n // current tag id from current path\n tagId: function tagId() {\n return this.$store.getters.tagId(this.path);\n },\n // current tag\n tag: function tag() {\n return this.tags[this.tagId];\n },\n tagsList: function tagsList() {\n var _this = this;\n\n return Object.values(this.tagsNames).map(function (tagsId) {\n return _this.tags[tagsId];\n });\n },\n // files list of the current tag\n fileList: function fileList() {\n var _this2 = this;\n\n return this.tag && this.tag.files.map(function (id) {\n return _this2.files[id];\n }).filter(function (file) {\n return !!file;\n });\n },\n contentList: function contentList() {\n var _this3 = this;\n\n if (this.isRoot) {\n return this.tagsList.flatMap(function (tag) {\n return tag.id === '' ? [] : [{\n id: \"tag-\".concat(tag.id),\n injected: _objectSpread({}, tag),\n width: 256,\n height: 256,\n columnSpan: 1,\n renderComponent: Tag\n }];\n });\n }\n\n return this.fileList.map(function (file) {\n return {\n id: \"file-\".concat(file.fileid),\n injected: _objectSpread(_objectSpread({}, file), {}, {\n list: _this3.fileList\n }),\n width: 256,\n height: 256,\n columnSpan: 1,\n renderComponent: File\n };\n });\n },\n isEmpty: function isEmpty() {\n if (this.isRoot) {\n return Object.keys(this.tagsNames).length === 0;\n }\n\n return this.fileList.length === 0;\n }\n }),\n watch: {\n path: function path() {\n var _this4 = this;\n\n return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {\n return regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n if (_this4.tagId) {\n _context.next = 3;\n break;\n }\n\n _context.next = 3;\n return _this4.fetchRootContent();\n\n case 3:\n // if we're not in the root, we fetch the data\n if (!_this4.isRoot) {\n _this4.fetchContent();\n }\n\n case 4:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }))();\n }\n },\n beforeDestroy: function beforeDestroy() {\n // cancel any pending requests\n if (this.cancelRequest) {\n this.cancelRequest('Navigated away');\n }\n },\n beforeMount: function beforeMount() {\n var _this5 = this;\n\n return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() {\n return regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n if (_this5.tagId) {\n _context2.next = 3;\n break;\n }\n\n _context2.next = 3;\n return _this5.fetchRootContent();\n\n case 3:\n // if we're not in the root, we fetch the data\n if (!_this5.isRoot) {\n _this5.fetchContent();\n }\n\n case 4:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }))();\n },\n methods: {\n fetchRootContent: function fetchRootContent() {\n var _this6 = this;\n\n return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee3() {\n var _cancelableRequest, request, cancel, tags;\n\n return regeneratorRuntime.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n // cancel any pending requests\n if (_this6.cancelRequest) {\n _this6.cancelRequest('Changed folder');\n } // close any potential opened viewer\n\n\n OCA.Viewer.close(); // if we don't already have some cached data let's show a loader\n\n if (!_this6.tags[_this6.tagId]) {\n _this6.loading = true;\n }\n\n _this6.error = null; // init cancellable request\n\n _cancelableRequest = cancelableRequest(getSystemTags), request = _cancelableRequest.request, cancel = _cancelableRequest.cancel;\n _this6.cancelRequest = cancel;\n _context3.prev = 6;\n _context3.next = 9;\n return request();\n\n case 9:\n tags = _context3.sent;\n\n _this6.$store.dispatch('updateTags', tags);\n\n _context3.next = 17;\n break;\n\n case 13:\n _context3.prev = 13;\n _context3.t0 = _context3[\"catch\"](6);\n console.error(_context3.t0);\n _this6.error = true;\n\n case 17:\n _context3.prev = 17;\n // done loading\n _this6.loading = false;\n _this6.cancelRequest = null;\n return _context3.finish(17);\n\n case 21:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3, null, [[6, 13, 17, 21]]);\n }))();\n },\n fetchContent: function fetchContent() {\n var _this7 = this;\n\n return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee4() {\n var _cancelableRequest2, request, cancel, files;\n\n return regeneratorRuntime.wrap(function _callee4$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n // cancel any pending requests\n if (_this7.cancelRequest) {\n _this7.cancelRequest();\n } // close any potential opened viewer\n\n\n OCA.Viewer.close(); // if we don't already have some cached data let's show a loader\n\n if (!_this7.tags[_this7.tagId]) {\n _this7.loading = true;\n }\n\n _this7.error = null; // init cancellable request\n\n _cancelableRequest2 = cancelableRequest(getTaggedImages), request = _cancelableRequest2.request, cancel = _cancelableRequest2.cancel;\n _this7.cancelRequest = cancel;\n _context4.prev = 6;\n _context4.next = 9;\n return request(_this7.tagId);\n\n case 9:\n files = _context4.sent;\n\n _this7.$store.dispatch('updateTag', {\n id: _this7.tagId,\n files: files\n });\n\n _this7.$store.dispatch('appendFiles', files);\n\n _context4.next = 18;\n break;\n\n case 14:\n _context4.prev = 14;\n _context4.t0 = _context4[\"catch\"](6);\n console.error(_context4.t0);\n _this7.error = true;\n\n case 18:\n _context4.prev = 18;\n // done loading\n _this7.loading = false;\n _this7.cancelRequest = null;\n return _context4.finish(18);\n\n case 22:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _callee4, null, [[6, 14, 18, 22]]);\n }))();\n }\n }\n};","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ \n *\n * @author John Molakvoæ \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 .\n *\n */\nimport client from './DavClient';\nimport { genFileInfo } from '../utils/fileUtils';\n/**\n * List system tags\n *\n * @param {string} path the path relative to the user root\n * @param {object} [options] optional options for axios\n * @return {Array} the file list\n */\n\nexport default function (_x) {\n return _ref.apply(this, arguments);\n}\n\nfunction _ref() {\n _ref = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(path) {\n var options,\n response,\n _args = arguments;\n return regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n options = _args.length > 1 && _args[1] !== undefined ? _args[1] : {};\n _context.next = 3;\n return client.getDirectoryContents('/systemtags/', Object.assign({}, {\n data: \"\\n\\t\\t\\t\\n\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\n\\t\\t\\t\",\n details: true\n }, options));\n\n case 3:\n response = _context.sent;\n return _context.abrupt(\"return\", response.data.map(function (data) {\n return genFileInfo(data);\n }));\n\n case 5:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n return _ref.apply(this, arguments);\n}","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ \n *\n * @author John Molakvoæ \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 .\n *\n */\nimport { genFileInfo } from '../utils/fileUtils';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport { props } from './DavRequest';\nimport allowedMimes from './AllowedMimes';\nimport client from './DavClient';\n/**\n * Get tagged files based on provided tag id\n *\n * @param {number} id the tag id to filter\n * @param {object} [options] optional options for axios\n * @return {Array} the file list\n */\n\nexport default function (_x) {\n return _ref.apply(this, arguments);\n}\n\nfunction _ref() {\n _ref = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(id) {\n var options,\n prefixPath,\n response,\n _args = arguments;\n return regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n options = _args.length > 1 && _args[1] !== undefined ? _args[1] : {};\n options = Object.assign({\n method: 'REPORT',\n data: \"\\n\\t\\t\\t\\n\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\".concat(props, \"\\n\\t\\t\\t\\t\\n\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\").concat(id, \"\\n\\t\\t\\t\\t\\n\\t\\t\\t\"),\n details: true\n }, options);\n prefixPath = \"/files/\".concat(getCurrentUser().uid);\n _context.next = 5;\n return client.getDirectoryContents(prefixPath, options);\n\n case 5:\n response = _context.sent;\n return _context.abrupt(\"return\", response.data.map(function (data) {\n return genFileInfo(data);\n }) // filter out unwanted mime because server REPORT service only support\n // hardcoded props and mime is not one of them\n // https://github.com/nextcloud/server/blob/5bf3d1bb384da56adbf205752be8f840aac3b0c5/apps/dav/lib/Connector/Sabre/FilesReportPlugin.php#L274\n .filter(function (file) {\n return file.mime && allowedMimes.indexOf(file.mime) !== -1;\n }) // remove prefix path from full file path\n .map(function (data) {\n return Object.assign({}, data, {\n filename: data.filename.replace(prefixPath, '')\n });\n }));\n\n case 7:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n return _ref.apply(this, arguments);\n}","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"@charset \\\"UTF-8\\\";\\n/**\\n * @copyright Copyright (c) 2019 John Molakvoæ \\n *\\n * @author John Molakvoæ \\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 .\\n *\\n */\\n@media (min-width: 0px) and (max-width: 400px) {\\n.grid-container[data-v-730c32d3] {\\n padding: 0px 8px 256px 8px;\\n}\\n}\\n@media (min-width: 400px) and (max-width: 700px) {\\n.grid-container[data-v-730c32d3] {\\n padding: 0px 8px 256px 8px;\\n}\\n}\\n@media (min-width: 700px) and (max-width: 1024px) {\\n.grid-container[data-v-730c32d3] {\\n padding: 0px 44px 256px 44px;\\n}\\n}\\n@media (min-width: 1024px) and (max-width: 1280px) {\\n.grid-container[data-v-730c32d3] {\\n padding: 0px 44px 256px 44px;\\n}\\n}\\n@media (min-width: 1280px) and (max-width: 1440px) {\\n.grid-container[data-v-730c32d3] {\\n padding: 0px 66px 256px 66px;\\n}\\n}\\n@media (min-width: 1440px) and (max-width: 1600px) {\\n.grid-container[data-v-730c32d3] {\\n padding: 0px 66px 256px 66px;\\n}\\n}\\n@media (min-width: 1600px) and (max-width: 2048px) {\\n.grid-container[data-v-730c32d3] {\\n padding: 0px 66px 256px 66px;\\n}\\n}\\n@media (min-width: 2048px) and (max-width: 2560px) {\\n.grid-container[data-v-730c32d3] {\\n padding: 0px 88px 256px 88px;\\n}\\n}\\n@media (min-width: 2560px) and (max-width: 3440px) {\\n.grid-container[data-v-730c32d3] {\\n padding: 0px 88px 256px 88px;\\n}\\n}\\n@media (min-width: 3440px) {\\n.grid-container[data-v-730c32d3] {\\n padding: 0px 88px 256px 88px;\\n}\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./Tags.vue?vue&type=style&index=0&id=730c32d3&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./Tags.vue?vue&type=style&index=0&id=730c32d3&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Video.vue?vue&type=template&id=ae109f02&\"\nimport script from \"./Video.vue?vue&type=script&lang=js&\"\nexport * from \"./Video.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/admin/Docker/apps2/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('ae109f02')) {\n api.createRecord('ae109f02', component.options)\n } else {\n api.reload('ae109f02', component.options)\n }\n module.hot.accept(\"./Video.vue?vue&type=template&id=ae109f02&\", function () {\n api.rerender('ae109f02', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"node_modules/vue-material-design-icons/Video.vue\"\nexport default component.exports","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nexport default {\n name: \"VideoIcon\",\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n","import { render, staticRenderFns } from \"./Tag.vue?vue&type=template&id=bb7ceecc&\"\nimport script from \"./Tag.vue?vue&type=script&lang=js&\"\nexport * from \"./Tag.vue?vue&type=script&lang=js&\"\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\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/admin/Docker/apps2/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('bb7ceecc')) {\n api.createRecord('bb7ceecc', component.options)\n } else {\n api.reload('bb7ceecc', component.options)\n }\n module.hot.accept(\"./Tag.vue?vue&type=template&id=bb7ceecc&\", function () {\n api.rerender('bb7ceecc', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/Tag.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./Tags.vue?vue&type=template&id=730c32d3&scoped=true&\"\nimport script from \"./Tags.vue?vue&type=script&lang=js&\"\nexport * from \"./Tags.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Tags.vue?vue&type=style&index=0&id=730c32d3&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 \"730c32d3\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/admin/Docker/apps2/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('730c32d3')) {\n api.createRecord('730c32d3', component.options)\n } else {\n api.reload('730c32d3', component.options)\n }\n module.hot.accept(\"./Tags.vue?vue&type=template&id=730c32d3&scoped=true&\", function () {\n api.rerender('730c32d3', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/views/Tags.vue\"\nexport default component.exports","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tag.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!./Tag.vue?vue&type=script&lang=js&\"","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tags.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!./Tags.vue?vue&type=script&lang=js&\"","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Video.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Video.vue?vue&type=script&lang=js&\"","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"span\",\n _vm._b(\n {\n staticClass: \"material-design-icon video-icon\",\n attrs: {\n \"aria-hidden\": !_vm.title,\n \"aria-label\": _vm.title,\n role: \"img\",\n },\n on: {\n click: function ($event) {\n return _vm.$emit(\"click\", $event)\n },\n },\n },\n \"span\",\n _vm.$attrs,\n false\n ),\n [\n _c(\n \"svg\",\n {\n staticClass: \"material-design-icon__svg\",\n attrs: {\n fill: _vm.fillColor,\n width: _vm.size,\n height: _vm.size,\n viewBox: \"0 0 24 24\",\n },\n },\n [\n _c(\n \"path\",\n {\n attrs: {\n d: \"M17,10.5V7A1,1 0 0,0 16,6H4A1,1 0 0,0 3,7V17A1,1 0 0,0 4,18H16A1,1 0 0,0 17,17V13.5L21,17.5V6.5L17,10.5Z\",\n },\n },\n [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()]\n ),\n ]\n ),\n ]\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"FolderTagPreview\", {\n attrs: {\n id: _vm.item.injected.id,\n icon: \"icon-tag\",\n name: _vm.item.injected.displayName,\n path: _vm.item.injected.displayName,\n \"file-list\": _vm.fileList,\n },\n })\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _vm.error\n ? _c(\"EmptyContent\", [\n _vm._v(\"\\n\\t\" + _vm._s(_vm.t(\"photos\", \"An error occurred\")) + \"\\n\"),\n ])\n : !_vm.loading\n ? _c(\n \"div\",\n [\n _c(\"Navigation\", {\n key: \"navigation\",\n attrs: {\n basename: _vm.path,\n filename: \"/\" + _vm.path,\n \"root-title\": _vm.rootTitle,\n },\n }),\n _vm._v(\" \"),\n _vm.isEmpty\n ? _c(\n \"EmptyContent\",\n {\n key: \"emptycontent\",\n attrs: { \"illustration-name\": \"empty\" },\n scopedSlots: _vm._u(\n [\n {\n key: \"desc\",\n fn: function () {\n return [\n _vm._v(\n \"\\n\\t\\t\\t\" +\n _vm._s(\n _vm.t(\n \"photos\",\n \"Photos with tags will show up here\"\n )\n ) +\n \"\\n\\t\\t\"\n ),\n ]\n },\n proxy: true,\n },\n ],\n null,\n false,\n 4132175345\n ),\n },\n [\n _vm._v(\n \"\\n\\t\\t\" + _vm._s(_vm.t(\"photos\", \"No tags yet\")) + \"\\n\\t\\t\"\n ),\n ]\n )\n : _c(\n \"div\",\n { staticClass: \"grid-container\" },\n [\n _c(\"VirtualGrid\", {\n ref: \"virtualgrid\",\n attrs: {\n items: _vm.contentList,\n \"get-column-count\": function () {\n return _vm.gridConfig.count\n },\n \"get-grid-gap\": function () {\n return _vm.gridConfig.gap\n },\n },\n }),\n ],\n 1\n ),\n ],\n 1\n )\n : _vm._e()\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-src_assets_Illustrations_empty_svg.js b/js/photos-src_assets_Illustrations_empty_svg.js deleted file mode 100644 index d15bb2607..000000000 --- a/js/photos-src_assets_Illustrations_empty_svg.js +++ /dev/null @@ -1,14 +0,0 @@ -"use strict"; -(self["webpackChunkphotos"] = self["webpackChunkphotos"] || []).push([["src_assets_Illustrations_empty_svg"],{ - -/***/ "./src/assets/Illustrations/empty.svg": -/*!********************************************!*\ - !*** ./src/assets/Illustrations/empty.svg ***! - \********************************************/ -/***/ ((module) => { - -module.exports = "empty"; - -/***/ }) - -}]); \ No newline at end of file diff --git a/js/photos-src_assets_Illustrations_folder_svg.js b/js/photos-src_assets_Illustrations_folder_svg.js deleted file mode 100644 index 6b518f00f..000000000 --- a/js/photos-src_assets_Illustrations_folder_svg.js +++ /dev/null @@ -1,14 +0,0 @@ -"use strict"; -(self["webpackChunkphotos"] = self["webpackChunkphotos"] || []).push([["src_assets_Illustrations_folder_svg"],{ - -/***/ "./src/assets/Illustrations/folder.svg": -/*!*********************************************!*\ - !*** ./src/assets/Illustrations/folder.svg ***! - \*********************************************/ -/***/ ((module) => { - -module.exports = "folder"; - -/***/ }) - -}]); \ No newline at end of file diff --git a/js/photos-src_assets_Illustrations_images_svg.js b/js/photos-src_assets_Illustrations_images_svg.js deleted file mode 100644 index 26ef22f0b..000000000 --- a/js/photos-src_assets_Illustrations_images_svg.js +++ /dev/null @@ -1,14 +0,0 @@ -"use strict"; -(self["webpackChunkphotos"] = self["webpackChunkphotos"] || []).push([["src_assets_Illustrations_images_svg"],{ - -/***/ "./src/assets/Illustrations/images.svg": -/*!*********************************************!*\ - !*** ./src/assets/Illustrations/images.svg ***! - \*********************************************/ -/***/ ((module) => { - -module.exports = "images"; - -/***/ }) - -}]); \ No newline at end of file diff --git a/js/photos-src_components_Actions_ActionDownload_vue-src_components_Collection_CollectionContent_vue-src-519192.js b/js/photos-src_components_Actions_ActionDownload_vue-src_components_Collection_CollectionContent_vue-src-519192.js deleted file mode 100644 index 9bb2b1b9e..000000000 --- a/js/photos-src_components_Actions_ActionDownload_vue-src_components_Collection_CollectionContent_vue-src-519192.js +++ /dev/null @@ -1,1400 +0,0 @@ -(self["webpackChunkphotos"] = self["webpackChunkphotos"] || []).push([["src_components_Actions_ActionDownload_vue-src_components_Collection_CollectionContent_vue-src-519192"],{ - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Actions/ActionDownload.vue?vue&type=script&lang=js&": -/*!********************************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Actions/ActionDownload.vue?vue&type=script&lang=js& ***! - \********************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! vuex */ "./node_modules/vuex/dist/vuex.esm.js"); -/* harmony import */ var _nextcloud_router__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/router */ "./node_modules/@nextcloud/router/dist/index.js"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/vue */ "./node_modules/@nextcloud/vue/dist/ncvuecomponents.js"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue__WEBPACK_IMPORTED_MODULE_1__); -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } - -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'ActionDownload', - components: { - NcActionLink: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_1__.NcActionLink - }, - props: { - title: { - type: String, - required: true - }, - selectedFileIds: { - type: Array, - required: true - } - }, - computed: _objectSpread(_objectSpread({}, (0,vuex__WEBPACK_IMPORTED_MODULE_2__.mapGetters)(['files'])), {}, { - downloadUrl: function downloadUrl() { - var params = new URLSearchParams(); - params.append('files', JSON.stringify(this.fileNames)); - return (0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_0__.generateUrl)("/apps/files/ajax/download.php?".concat(params)); - }, - fileNames: function fileNames() { - var _this = this; - - return this.selectedFileIds.map(function (fileId) { - return _this.files[fileId].filename; - }); - } - }) -}); - -/***/ }), - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Collection/CollectionContent.vue?vue&type=script&lang=js&": -/*!**************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Collection/CollectionContent.vue?vue&type=script&lang=js& ***! - \**************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! vuex */ "./node_modules/vuex/dist/vuex.esm.js"); -/* harmony import */ var vue_material_design_icons_AlertCircle__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue-material-design-icons/AlertCircle */ "./node_modules/vue-material-design-icons/AlertCircle.vue"); -/* harmony import */ var vue_material_design_icons_FolderMultipleImage__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! vue-material-design-icons/FolderMultipleImage */ "./node_modules/vue-material-design-icons/FolderMultipleImage.vue"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @nextcloud/vue */ "./node_modules/@nextcloud/vue/dist/ncvuecomponents.js"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _mixins_FilesSelectionMixin_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../mixins/FilesSelectionMixin.js */ "./src/mixins/FilesSelectionMixin.js"); -/* harmony import */ var _FilesListViewer_vue__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! .././FilesListViewer.vue */ "./src/components/FilesListViewer.vue"); -/* harmony import */ var _File_vue__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! .././File.vue */ "./src/components/File.vue"); -/* harmony import */ var _assets_Illustrations_folder_svg__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../assets/Illustrations/folder.svg */ "./src/assets/Illustrations/folder.svg"); -/* harmony import */ var _utils_semaphoreWithPriority_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../utils/semaphoreWithPriority.js */ "./src/utils/semaphoreWithPriority.js"); -function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } - -function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } - -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } - -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - - - - - - - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'CollectionContent', - components: { - AlertCircle: vue_material_design_icons_AlertCircle__WEBPACK_IMPORTED_MODULE_0__["default"], - FolderMultipleImage: vue_material_design_icons_FolderMultipleImage__WEBPACK_IMPORTED_MODULE_1__["default"], - NcEmptyContent: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_2__.NcEmptyContent, - FilesListViewer: _FilesListViewer_vue__WEBPACK_IMPORTED_MODULE_4__["default"], - File: _File_vue__WEBPACK_IMPORTED_MODULE_5__["default"] - }, - mixins: [_mixins_FilesSelectionMixin_js__WEBPACK_IMPORTED_MODULE_3__["default"], _nextcloud_vue__WEBPACK_IMPORTED_MODULE_2__.isMobile], - props: { - collection: { - type: Object, - default: function _default() { - return undefined; - } - }, - collectionFileIds: { - type: Array, - required: true - }, - loading: { - type: Boolean, - default: false - }, - error: { - type: [Error], - default: '' - }, - semaphore: { - type: _utils_semaphoreWithPriority_js__WEBPACK_IMPORTED_MODULE_7__["default"], - required: true - } - }, - data: function data() { - return { - FolderIllustration: _assets_Illustrations_folder_svg__WEBPACK_IMPORTED_MODULE_6__, - appContent: document.getElementById('app-content-vue') - }; - }, - computed: _objectSpread({}, (0,vuex__WEBPACK_IMPORTED_MODULE_8__.mapGetters)(['files'])), - methods: { - openViewer: function openViewer(fileId) { - var _this = this; - - var file = this.files[fileId]; - OCA.Viewer.open({ - fileInfo: file, - list: this.collectionFileIds.map(function (fileId) { - return _this.files[fileId]; - }).filter(function (file) { - return !file.sectionHeader; - }), - loadMore: file.loadMore ? /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() { - return regeneratorRuntime.wrap(function _callee$(_context) { - while (1) { - switch (_context.prev = _context.next) { - case 0: - _context.next = 2; - return file.loadMore(true); - - case 2: - return _context.abrupt("return", _context.sent); - - case 3: - case "end": - return _context.stop(); - } - } - }, _callee); - })) : function () { - return []; - }, - canLoop: file.canLoop - }); - } - } -}); - -/***/ }), - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FilesPicker.vue?vue&type=script&lang=js&": -/*!*********************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FilesPicker.vue?vue&type=script&lang=js& ***! - \*********************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! vuex */ "./node_modules/vuex/dist/vuex.esm.js"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/vue */ "./node_modules/@nextcloud/vue/dist/ncvuecomponents.js"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _nextcloud_upload__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/upload */ "./node_modules/@nextcloud/upload/dist/index.esm.js"); -/* harmony import */ var _nextcloud_moment__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @nextcloud/moment */ "./node_modules/@nextcloud/moment/dist/index.js"); -/* harmony import */ var _nextcloud_moment__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_moment__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var vue_material_design_icons_ImagePlus__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! vue-material-design-icons/ImagePlus */ "./node_modules/vue-material-design-icons/ImagePlus.vue"); -/* harmony import */ var _FilesListViewer_vue__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./FilesListViewer.vue */ "./src/components/FilesListViewer.vue"); -/* harmony import */ var _File_vue__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./File.vue */ "./src/components/File.vue"); -/* harmony import */ var _mixins_FetchFilesMixin_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../mixins/FetchFilesMixin.js */ "./src/mixins/FetchFilesMixin.js"); -/* harmony import */ var _mixins_FilesSelectionMixin_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../mixins/FilesSelectionMixin.js */ "./src/mixins/FilesSelectionMixin.js"); -/* harmony import */ var _mixins_FilesByMonthMixin_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../mixins/FilesByMonthMixin.js */ "./src/mixins/FilesByMonthMixin.js"); -/* harmony import */ var _mixins_UserConfig_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../mixins/UserConfig.js */ "./src/mixins/UserConfig.js"); -/* harmony import */ var _services_AllowedMimes_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../services/AllowedMimes.js */ "./src/services/AllowedMimes.js"); -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } - -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - - - - - - - - - - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'FilesPicker', - components: { - File: _File_vue__WEBPACK_IMPORTED_MODULE_5__["default"], - FilesListViewer: _FilesListViewer_vue__WEBPACK_IMPORTED_MODULE_4__["default"], - ImagePlus: vue_material_design_icons_ImagePlus__WEBPACK_IMPORTED_MODULE_3__["default"], - NcButton: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_0__.NcButton, - NcLoadingIcon: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_0__.NcLoadingIcon, - UploadPicker: _nextcloud_upload__WEBPACK_IMPORTED_MODULE_1__.UploadPicker - }, - filters: { - /** - * @param {string} date - In the following format: YYYYMM - */ - dateMonthAndYear: function dateMonthAndYear(date) { - return _nextcloud_moment__WEBPACK_IMPORTED_MODULE_2___default()(date, 'YYYYMM').format('MMMM YYYY'); - } - }, - mixins: [_mixins_FetchFilesMixin_js__WEBPACK_IMPORTED_MODULE_6__["default"], _mixins_FilesByMonthMixin_js__WEBPACK_IMPORTED_MODULE_8__["default"], _mixins_FilesSelectionMixin_js__WEBPACK_IMPORTED_MODULE_7__["default"], _mixins_UserConfig_js__WEBPACK_IMPORTED_MODULE_9__["default"]], - props: { - // Label to show in the submit button. - destination: { - type: String, - required: true - }, - // List of file ids to not show. - blacklistIds: { - type: Array, - default: function _default() { - return []; - } - }, - // Whether we should disable the submit button and show a spinner. - loading: { - type: Boolean, - default: false - } - }, - data: function data() { - return { - allowedMimes: _services_AllowedMimes_js__WEBPACK_IMPORTED_MODULE_10__["default"], - targetMonth: null, - uploadContext: { - route: 'albumpicker' - } - }; - }, - computed: _objectSpread({}, (0,vuex__WEBPACK_IMPORTED_MODULE_11__.mapGetters)(['files'])), - watch: { - monthsList: function monthsList(value) { - if (this.targetMonth === null) { - this.targetMonth = value[0]; - } - } - }, - methods: { - getFiles: function getFiles() { - this.fetchFiles('', {}, this.blacklistIds); - }, - emitPickedEvent: function emitPickedEvent() { - this.$emit('files-picked', this.selectedFileIds); - } - } -}); - -/***/ }), - -/***/ "./src/mixins/FilesByMonthMixin.js": -/*!*****************************************!*\ - !*** ./src/mixins/FilesByMonthMixin.js ***! - \*****************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; } - -function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } - -function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; } - -/** - * @copyright Copyright (c) 2022 Louis Chemineau - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'FilesByMonthMixin', - computed: { - /** - * @return {object} - */ - fileIdsByMonth: function fileIdsByMonth() { - var _this = this; - - var filesByMonth = {}; - - var _iterator = _createForOfIteratorHelper(this.fetchedFileIds), - _step; - - try { - for (_iterator.s(); !(_step = _iterator.n()).done;) { - var _filesByMonth$file$mo; - - var fileId = _step.value; - var file = this.files[fileId]; - filesByMonth[file.month] = (_filesByMonth$file$mo = filesByMonth[file.month]) !== null && _filesByMonth$file$mo !== void 0 ? _filesByMonth$file$mo : []; - filesByMonth[file.month].push(file.fileid); - } // Sort files in sections. - - } catch (err) { - _iterator.e(err); - } finally { - _iterator.f(); - } - - Object.keys(filesByMonth).forEach(function (month) { - return filesByMonth[month].sort(_this.sortFilesByTimestamp); - }); - return filesByMonth; - }, - - /** - * @return {string[]} - */ - monthsList: function monthsList() { - return Object.keys(this.fileIdsByMonth).sort(function (month1, month2) { - return month1 > month2 ? -1 : 1; - }); - } - } -}); - -/***/ }), - -/***/ "./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!./src/components/Collection/CollectionContent.vue?vue&type=style&index=0&id=6a4155da&lang=scss&scoped=true&": -/*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/components/Collection/CollectionContent.vue?vue&type=style&index=0&id=6a4155da&lang=scss&scoped=true& ***! - \**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".collection[data-v-6a4155da] {\n display: flex;\n flex-direction: column;\n}\n.collection__media[data-v-6a4155da] {\n padding: 0 64px;\n}\n@media only screen and (max-width: 1200px) {\n.collection__media[data-v-6a4155da] {\n padding: 0 4px;\n}\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./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!./src/components/FilesPicker.vue?vue&type=style&index=0&id=10d87d65&lang=scss&scoped=true&": -/*!*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/components/FilesPicker.vue?vue&type=style&index=0&id=10d87d65&lang=scss&scoped=true& ***! - \*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".file-picker[data-v-10d87d65] {\n display: flex;\n flex-direction: column;\n padding: 12px;\n}\n.file-picker__content[data-v-10d87d65] {\n display: flex;\n align-items: flex-start;\n flex-grow: 1;\n height: 500px;\n}\n.file-picker__navigation[data-v-10d87d65] {\n flex-basis: 200px;\n overflow: scroll;\n margin-right: 8px;\n padding-right: 8px;\n height: 100%;\n}\n@media only screen and (max-width: 1200px) {\n.file-picker__navigation[data-v-10d87d65] {\n flex-basis: 100px;\n}\n}\n.file-picker__navigation--placeholder[data-v-10d87d65] {\n background: var(--color-primary-light);\n border-radius: var(--border-radius-large);\n}\n.file-picker__navigation__month[data-v-10d87d65] {\n font-weight: bold;\n font-size: 16px;\n border-radius: var(--border-radius-pill);\n padding: 8px 16px;\n margin: 4px 0;\n cursor: pointer;\n}\n@media only screen and (max-width: 1200px) {\n.file-picker__navigation__month[data-v-10d87d65] {\n text-align: center;\n}\n}\n.file-picker__navigation__month[data-v-10d87d65]:hover {\n background: var(--color-background-dark);\n}\n.file-picker__navigation__month.selected[data-v-10d87d65] {\n background: var(--color-primary-element-lighter);\n}\n.file-picker__file-list[data-v-10d87d65] {\n flex-grow: 1;\n min-width: 0;\n height: 100%;\n}\n.file-picker__file-list--placeholder[data-v-10d87d65] {\n background: var(--color-primary-light);\n border-radius: var(--border-radius-large);\n}\n.file-picker__file-list .section-header[data-v-10d87d65] {\n font-weight: bold;\n font-size: 20px;\n padding: 8px 0 4px 0;\n}\n.file-picker__file-list[data-v-10d87d65] .empty-content {\n position: absolute;\n width: 100%;\n margin-top: 0;\n height: 100%;\n display: flex;\n flex-direction: column;\n justify-content: center;\n}\n.file-picker__actions[data-v-10d87d65] {\n display: flex;\n justify-content: space-between;\n justify-items: center;\n padding-top: 16px;\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/Collection/CollectionContent.vue?vue&type=style&index=0&id=6a4155da&lang=scss&scoped=true&": -/*!******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/components/Collection/CollectionContent.vue?vue&type=style&index=0&id=6a4155da&lang=scss&scoped=true& ***! - \******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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_CollectionContent_vue_vue_type_style_index_0_id_6a4155da_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../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!./CollectionContent.vue?vue&type=style&index=0&id=6a4155da&lang=scss&scoped=true& */ "./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!./src/components/Collection/CollectionContent.vue?vue&type=style&index=0&id=6a4155da&lang=scss&scoped=true&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_CollectionContent_vue_vue_type_style_index_0_id_6a4155da_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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_CollectionContent_vue_vue_type_style_index_0_id_6a4155da_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_CollectionContent_vue_vue_type_style_index_0_id_6a4155da_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_CollectionContent_vue_vue_type_style_index_0_id_6a4155da_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/FilesPicker.vue?vue&type=style&index=0&id=10d87d65&lang=scss&scoped=true&": -/*!*************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/components/FilesPicker.vue?vue&type=style&index=0&id=10d87d65&lang=scss&scoped=true& ***! - \*************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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_FilesPicker_vue_vue_type_style_index_0_id_10d87d65_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../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!./FilesPicker.vue?vue&type=style&index=0&id=10d87d65&lang=scss&scoped=true& */ "./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!./src/components/FilesPicker.vue?vue&type=style&index=0&id=10d87d65&lang=scss&scoped=true&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_FilesPicker_vue_vue_type_style_index_0_id_10d87d65_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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_FilesPicker_vue_vue_type_style_index_0_id_10d87d65_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_FilesPicker_vue_vue_type_style_index_0_id_10d87d65_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_FilesPicker_vue_vue_type_style_index_0_id_10d87d65_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./src/components/Actions/ActionDownload.vue": -/*!***************************************************!*\ - !*** ./src/components/Actions/ActionDownload.vue ***! - \***************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _ActionDownload_vue_vue_type_template_id_1aefa300___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./ActionDownload.vue?vue&type=template&id=1aefa300& */ "./src/components/Actions/ActionDownload.vue?vue&type=template&id=1aefa300&"); -/* harmony import */ var _ActionDownload_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./ActionDownload.vue?vue&type=script&lang=js& */ "./src/components/Actions/ActionDownload.vue?vue&type=script&lang=js&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - - - -/* normalize component */ -; -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])( - _ActionDownload_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _ActionDownload_vue_vue_type_template_id_1aefa300___WEBPACK_IMPORTED_MODULE_0__.render, - _ActionDownload_vue_vue_type_template_id_1aefa300___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - null, - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/Actions/ActionDownload.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/Collection/CollectionContent.vue": -/*!*********************************************************!*\ - !*** ./src/components/Collection/CollectionContent.vue ***! - \*********************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _CollectionContent_vue_vue_type_template_id_6a4155da_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./CollectionContent.vue?vue&type=template&id=6a4155da&scoped=true& */ "./src/components/Collection/CollectionContent.vue?vue&type=template&id=6a4155da&scoped=true&"); -/* harmony import */ var _CollectionContent_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./CollectionContent.vue?vue&type=script&lang=js& */ "./src/components/Collection/CollectionContent.vue?vue&type=script&lang=js&"); -/* harmony import */ var _CollectionContent_vue_vue_type_style_index_0_id_6a4155da_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./CollectionContent.vue?vue&type=style&index=0&id=6a4155da&lang=scss&scoped=true& */ "./src/components/Collection/CollectionContent.vue?vue&type=style&index=0&id=6a4155da&lang=scss&scoped=true&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( - _CollectionContent_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _CollectionContent_vue_vue_type_template_id_6a4155da_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render, - _CollectionContent_vue_vue_type_template_id_6a4155da_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - "6a4155da", - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/Collection/CollectionContent.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/FilesPicker.vue": -/*!****************************************!*\ - !*** ./src/components/FilesPicker.vue ***! - \****************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _FilesPicker_vue_vue_type_template_id_10d87d65_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./FilesPicker.vue?vue&type=template&id=10d87d65&scoped=true& */ "./src/components/FilesPicker.vue?vue&type=template&id=10d87d65&scoped=true&"); -/* harmony import */ var _FilesPicker_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./FilesPicker.vue?vue&type=script&lang=js& */ "./src/components/FilesPicker.vue?vue&type=script&lang=js&"); -/* harmony import */ var _FilesPicker_vue_vue_type_style_index_0_id_10d87d65_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./FilesPicker.vue?vue&type=style&index=0&id=10d87d65&lang=scss&scoped=true& */ "./src/components/FilesPicker.vue?vue&type=style&index=0&id=10d87d65&lang=scss&scoped=true&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( - _FilesPicker_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _FilesPicker_vue_vue_type_template_id_10d87d65_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render, - _FilesPicker_vue_vue_type_template_id_10d87d65_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - "10d87d65", - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/FilesPicker.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/Actions/ActionDownload.vue?vue&type=script&lang=js&": -/*!****************************************************************************!*\ - !*** ./src/components/Actions/ActionDownload.vue?vue&type=script&lang=js& ***! - \****************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_ActionDownload_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActionDownload.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Actions/ActionDownload.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_ActionDownload_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/components/Collection/CollectionContent.vue?vue&type=script&lang=js&": -/*!**********************************************************************************!*\ - !*** ./src/components/Collection/CollectionContent.vue?vue&type=script&lang=js& ***! - \**********************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_CollectionContent_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CollectionContent.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Collection/CollectionContent.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_CollectionContent_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/components/FilesPicker.vue?vue&type=script&lang=js&": -/*!*****************************************************************!*\ - !*** ./src/components/FilesPicker.vue?vue&type=script&lang=js& ***! - \*****************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesPicker_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesPicker.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FilesPicker.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesPicker_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/components/Collection/CollectionContent.vue?vue&type=style&index=0&id=6a4155da&lang=scss&scoped=true&": -/*!*******************************************************************************************************************!*\ - !*** ./src/components/Collection/CollectionContent.vue?vue&type=style&index=0&id=6a4155da&lang=scss&scoped=true& ***! - \*******************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_CollectionContent_vue_vue_type_style_index_0_id_6a4155da_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/style-loader/dist/cjs.js!../../../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!./CollectionContent.vue?vue&type=style&index=0&id=6a4155da&lang=scss&scoped=true& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/Collection/CollectionContent.vue?vue&type=style&index=0&id=6a4155da&lang=scss&scoped=true&"); - - -/***/ }), - -/***/ "./src/components/FilesPicker.vue?vue&type=style&index=0&id=10d87d65&lang=scss&scoped=true&": -/*!**************************************************************************************************!*\ - !*** ./src/components/FilesPicker.vue?vue&type=style&index=0&id=10d87d65&lang=scss&scoped=true& ***! - \**************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_FilesPicker_vue_vue_type_style_index_0_id_10d87d65_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/style-loader/dist/cjs.js!../../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!./FilesPicker.vue?vue&type=style&index=0&id=10d87d65&lang=scss&scoped=true& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/FilesPicker.vue?vue&type=style&index=0&id=10d87d65&lang=scss&scoped=true&"); - - -/***/ }), - -/***/ "./src/components/Actions/ActionDownload.vue?vue&type=template&id=1aefa300&": -/*!**********************************************************************************!*\ - !*** ./src/components/Actions/ActionDownload.vue?vue&type=template&id=1aefa300& ***! - \**********************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_ActionDownload_vue_vue_type_template_id_1aefa300___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_ActionDownload_vue_vue_type_template_id_1aefa300___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_ActionDownload_vue_vue_type_template_id_1aefa300___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActionDownload.vue?vue&type=template&id=1aefa300& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Actions/ActionDownload.vue?vue&type=template&id=1aefa300&"); - - -/***/ }), - -/***/ "./src/components/Collection/CollectionContent.vue?vue&type=template&id=6a4155da&scoped=true&": -/*!****************************************************************************************************!*\ - !*** ./src/components/Collection/CollectionContent.vue?vue&type=template&id=6a4155da&scoped=true& ***! - \****************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_CollectionContent_vue_vue_type_template_id_6a4155da_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_CollectionContent_vue_vue_type_template_id_6a4155da_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_CollectionContent_vue_vue_type_template_id_6a4155da_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CollectionContent.vue?vue&type=template&id=6a4155da&scoped=true& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Collection/CollectionContent.vue?vue&type=template&id=6a4155da&scoped=true&"); - - -/***/ }), - -/***/ "./src/components/FilesPicker.vue?vue&type=template&id=10d87d65&scoped=true&": -/*!***********************************************************************************!*\ - !*** ./src/components/FilesPicker.vue?vue&type=template&id=10d87d65&scoped=true& ***! - \***********************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesPicker_vue_vue_type_template_id_10d87d65_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesPicker_vue_vue_type_template_id_10d87d65_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesPicker_vue_vue_type_template_id_10d87d65_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesPicker.vue?vue&type=template&id=10d87d65&scoped=true& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FilesPicker.vue?vue&type=template&id=10d87d65&scoped=true&"); - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Actions/ActionDownload.vue?vue&type=template&id=1aefa300&": -/*!*************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Actions/ActionDownload.vue?vue&type=template&id=1aefa300& ***! - \*************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c( - "NcActionLink", - { - attrs: { - "close-after-click": true, - href: _vm.downloadUrl, - download: _vm.downloadUrl, - "aria-label": _vm.title, - }, - }, - [ - _vm._v("\n\t" + _vm._s(_vm.title) + "\n\t"), - _vm._t("icon", null, { slot: "icon" }), - ], - 2 - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Collection/CollectionContent.vue?vue&type=template&id=6a4155da&scoped=true&": -/*!*******************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Collection/CollectionContent.vue?vue&type=template&id=6a4155da&scoped=true& ***! - \*******************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _vm.collection === undefined && !_vm.loading - ? _c( - "NcEmptyContent", - { - staticClass: "empty-content-with-illustration", - attrs: { title: _vm.t("photos", "This collection does not exist") }, - }, - [_c("FolderMultipleImage")], - 1 - ) - : _vm.error - ? _c( - "NcEmptyContent", - { attrs: { title: _vm.t("photos", "An error occurred") } }, - [_c("AlertCircle", { attrs: { slot: "icon" }, slot: "icon" })], - 1 - ) - : _c( - "div", - { staticClass: "collection" }, - [ - _vm._t("header", null, { selectedFileIds: _vm.selectedFileIds }), - _vm._v(" "), - _vm.collectionFileIds.length === 0 && !_vm.loading - ? _vm._t("empty-content") - : _vm._e(), - _vm._v(" "), - _vm.collection !== undefined - ? _c("FilesListViewer", { - staticClass: "collection__media", - attrs: { - "container-element": _vm.appContent, - "file-ids": _vm.collectionFileIds, - "base-height": _vm.isMobile ? 120 : 200, - loading: _vm.loading, - }, - scopedSlots: _vm._u( - [ - { - key: "default", - fn: function (ref) { - var file = ref.file - var visibility = ref.visibility - return _c("File", { - attrs: { - file: _vm.files[file.id], - "allow-selection": true, - selected: _vm.selection[file.id] === true, - visibility: visibility, - semaphore: _vm.semaphore, - }, - on: { - click: _vm.openViewer, - "select-toggled": _vm.onFileSelectToggle, - }, - }) - }, - }, - ], - null, - false, - 3592900521 - ), - }) - : _vm._e(), - ], - 2 - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FilesPicker.vue?vue&type=template&id=10d87d65&scoped=true&": -/*!**************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FilesPicker.vue?vue&type=template&id=10d87d65&scoped=true& ***! - \**************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c("div", { staticClass: "file-picker" }, [ - _c( - "div", - { staticClass: "file-picker__content" }, - [ - _c( - "div", - { - staticClass: "file-picker__navigation", - class: { - "file-picker__navigation--placeholder": - _vm.monthsList.length === 0, - }, - }, - _vm._l(_vm.monthsList, function (month) { - return _c( - "div", - { - key: month, - staticClass: "file-picker__navigation__month", - class: { selected: _vm.targetMonth === month }, - on: { - click: function ($event) { - _vm.targetMonth = month - }, - }, - }, - [ - _vm._v( - "\n\t\t\t\t" + - _vm._s(_vm._f("dateMonthAndYear")(month)) + - "\n\t\t\t" - ), - ] - ) - }), - 0 - ), - _vm._v(" "), - _c("FilesListViewer", { - staticClass: "file-picker__file-list", - class: { - "file-picker__file-list--placeholder": _vm.monthsList.length === 0, - }, - attrs: { - "file-ids-by-section": _vm.fileIdsByMonth, - "empty-message": _vm.t( - "photos", - "There is no photos or videos yet!" - ), - sections: _vm.monthsList, - loading: _vm.loadingFiles, - "base-height": 100, - "section-header-height": 50, - "scroll-to-section": _vm.targetMonth, - }, - on: { "need-content": _vm.getFiles }, - scopedSlots: _vm._u([ - { - key: "default", - fn: function (ref) { - var file = ref.file - var height = ref.height - var visibility = ref.visibility - return [ - file.sectionHeader - ? _c( - "h3", - { - staticClass: "section-header", - style: { height: height + "px" }, - attrs: { - id: "file-picker-section-header-" + file.id, - }, - }, - [ - _vm._v( - "\n\t\t\t\t\t" + - _vm._s(_vm._f("dateMonthAndYear")(file.id)) + - "\n\t\t\t\t" - ), - ] - ) - : _c("File", { - attrs: { - file: _vm.files[file.id], - "allow-selection": true, - selected: _vm.selection[file.id] === true, - visibility: visibility, - semaphore: _vm.semaphore, - }, - on: { "select-toggled": _vm.onFileSelectToggle }, - }), - ] - }, - }, - ]), - }), - ], - 1 - ), - _vm._v(" "), - _c( - "div", - { staticClass: "file-picker__actions" }, - [ - _c("UploadPicker", { - attrs: { - accept: _vm.allowedMimes, - context: _vm.uploadContext, - destination: _vm.photosLocation, - multiple: true, - }, - on: { uploaded: _vm.getFiles }, - }), - _vm._v(" "), - _c( - "NcButton", - { - attrs: { - type: "primary", - disabled: _vm.loading || _vm.selectedFileIds.length === 0, - }, - on: { click: _vm.emitPickedEvent }, - scopedSlots: _vm._u([ - { - key: "icon", - fn: function () { - return [ - !_vm.loading ? _c("ImagePlus") : _vm._e(), - _vm._v(" "), - _vm.loading ? _c("NcLoadingIcon") : _vm._e(), - ] - }, - proxy: true, - }, - ]), - }, - [ - _vm._v( - "\n\t\t\t" + - _vm._s( - _vm.t("photos", "Add to {destination}", { - destination: _vm.destination, - }) - ) + - "\n\t\t" - ), - ] - ), - ], - 1 - ), - ]) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./src/assets/Illustrations/folder.svg": -/*!*********************************************!*\ - !*** ./src/assets/Illustrations/folder.svg ***! - \*********************************************/ -/***/ ((module) => { - -"use strict"; -module.exports = "folder"; - -/***/ }), - -/***/ "?d546": -/*!************************!*\ - !*** buffer (ignored) ***! - \************************/ -/***/ (() => { - -/* (ignored) */ - -/***/ }), - -/***/ "?8131": -/*!************************!*\ - !*** buffer (ignored) ***! - \************************/ -/***/ (() => { - -/* (ignored) */ - -/***/ }), - -/***/ "?3fc0": -/*!************************!*\ - !*** crypto (ignored) ***! - \************************/ -/***/ (() => { - -/* (ignored) */ - -/***/ }), - -/***/ "?cad2": -/*!**********************!*\ - !*** util (ignored) ***! - \**********************/ -/***/ (() => { - -/* (ignored) */ - -/***/ }), - -/***/ "?593c": -/*!**********************!*\ - !*** util (ignored) ***! - \**********************/ -/***/ (() => { - -/* (ignored) */ - -/***/ }), - -/***/ "?4068": -/*!************************!*\ - !*** buffer (ignored) ***! - \************************/ -/***/ (() => { - -/* (ignored) */ - -/***/ }), - -/***/ "?e7e4": -/*!************************!*\ - !*** buffer (ignored) ***! - \************************/ -/***/ (() => { - -/* (ignored) */ - -/***/ }), - -/***/ "?7bec": -/*!************************!*\ - !*** buffer (ignored) ***! - \************************/ -/***/ (() => { - -/* (ignored) */ - -/***/ }), - -/***/ "?802b": -/*!**********************!*\ - !*** util (ignored) ***! - \**********************/ -/***/ (() => { - -/* (ignored) */ - -/***/ }), - -/***/ "?1e44": -/*!**********************!*\ - !*** util (ignored) ***! - \**********************/ -/***/ (() => { - -/* (ignored) */ - -/***/ }), - -/***/ "?0aec": -/*!************************!*\ - !*** buffer (ignored) ***! - \************************/ -/***/ (() => { - -/* (ignored) */ - -/***/ }), - -/***/ "?fbf1": -/*!************************!*\ - !*** buffer (ignored) ***! - \************************/ -/***/ (() => { - -/* (ignored) */ - -/***/ }) - -}]); -//# sourceMappingURL=photos-src_components_Actions_ActionDownload_vue-src_components_Collection_CollectionContent_vue-src-519192.js.map?v=3869b5c10405b03b834f \ No newline at end of file diff --git a/js/photos-src_components_Actions_ActionDownload_vue-src_components_Collection_CollectionContent_vue-src-519192.js.map b/js/photos-src_components_Actions_ActionDownload_vue-src_components_Collection_CollectionContent_vue-src-519192.js.map deleted file mode 100644 index 25dbfe423..000000000 --- a/js/photos-src_components_Actions_ActionDownload_vue-src_components_Collection_CollectionContent_vue-src-519192.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-src_components_Actions_ActionDownload_vue-src_components_Collection_CollectionContent_vue-src-519192.js?v=3869b5c10405b03b834f","mappings":";;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;ACrEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1JA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;AClKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACxEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;;;;;ACtCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;;;;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;;ACvCA;;;;;;;;;;;;;;;;ACAA;;;;;;;;;;;;;;;;ACAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AKAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;ACvBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;AC3EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;ACjKA;;;;;;;;;;ACAA;;;;;;;;;;ACAA;;;;;;;;;;ACAA;;;;;;;;;;ACAA;;;;;;;;;;ACAA;;;;;;;;;;ACAA;;;;;;;;;;ACAA;;;;;;;;;;ACAA;;;;;;;;;;ACAA;;;;;;;;;;ACAA;;;;;;;;;;ACAA","sources":["webpack:///photos/src/components/Actions/ActionDownload.vue?vue&type=script&lang=js&","webpack:///photos/src/components/Collection/CollectionContent.vue?vue&type=script&lang=js&","webpack:///photos/src/components/FilesPicker.vue?vue&type=script&lang=js&","webpack:///photos/src/mixins/FilesByMonthMixin.js","webpack:///photos/src/components/Collection/CollectionContent.vue?vue&type=style&index=0&id=6a4155da&lang=scss&scoped=true&","webpack:///photos/src/components/FilesPicker.vue?vue&type=style&index=0&id=10d87d65&lang=scss&scoped=true&","webpack://photos/./src/components/Collection/CollectionContent.vue?0d6e","webpack://photos/./src/components/FilesPicker.vue?7e53","webpack:///photos/src/components/Actions/ActionDownload.vue","webpack:///photos/src/components/Collection/CollectionContent.vue","webpack:///photos/src/components/FilesPicker.vue","webpack://photos/./src/components/Actions/ActionDownload.vue?56d1","webpack://photos/./src/components/Collection/CollectionContent.vue?9acb","webpack://photos/./src/components/FilesPicker.vue?dba4","webpack://photos/./src/components/Collection/CollectionContent.vue?e6e4","webpack://photos/./src/components/FilesPicker.vue?4622","webpack:///photos/src/components/Collection/CollectionContent.vue?vue&type=template&id=6a4155da&scoped=true&","webpack:///photos/src/components/FilesPicker.vue?vue&type=template&id=10d87d65&scoped=true&","webpack://photos/./src/components/Actions/ActionDownload.vue?9b4a","webpack://photos/./src/components/Collection/CollectionContent.vue?9cae","webpack://photos/./src/components/FilesPicker.vue?8044","webpack:///photos/ignored|/home/admin/Docker/apps2/photos/node_modules/asn1.js/node_modules/bn.js/lib|buffer","webpack:///photos/ignored|/home/admin/Docker/apps2/photos/node_modules/bn.js/lib|buffer","webpack:///photos/ignored|/home/admin/Docker/apps2/photos/node_modules/brorand|crypto","webpack:///photos/ignored|/home/admin/Docker/apps2/photos/node_modules/browserify-sign/node_modules/readable-stream/lib/internal/streams|util","webpack:///photos/ignored|/home/admin/Docker/apps2/photos/node_modules/browserify-sign/node_modules/readable-stream/lib|util","webpack:///photos/ignored|/home/admin/Docker/apps2/photos/node_modules/create-ecdh/node_modules/bn.js/lib|buffer","webpack:///photos/ignored|/home/admin/Docker/apps2/photos/node_modules/diffie-hellman/node_modules/bn.js/lib|buffer","webpack:///photos/ignored|/home/admin/Docker/apps2/photos/node_modules/elliptic/node_modules/bn.js/lib|buffer","webpack:///photos/ignored|/home/admin/Docker/apps2/photos/node_modules/hash-base/node_modules/readable-stream/lib/internal/streams|util","webpack:///photos/ignored|/home/admin/Docker/apps2/photos/node_modules/hash-base/node_modules/readable-stream/lib|util","webpack:///photos/ignored|/home/admin/Docker/apps2/photos/node_modules/miller-rabin/node_modules/bn.js/lib|buffer","webpack:///photos/ignored|/home/admin/Docker/apps2/photos/node_modules/public-encrypt/node_modules/bn.js/lib|buffer"],"sourcesContent":["function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport { mapGetters } from 'vuex';\nimport { generateUrl } from '@nextcloud/router';\nimport { NcActionLink } from '@nextcloud/vue';\nexport default {\n name: 'ActionDownload',\n components: {\n NcActionLink: NcActionLink\n },\n props: {\n title: {\n type: String,\n required: true\n },\n selectedFileIds: {\n type: Array,\n required: true\n }\n },\n computed: _objectSpread(_objectSpread({}, mapGetters(['files'])), {}, {\n downloadUrl: function downloadUrl() {\n var params = new URLSearchParams();\n params.append('files', JSON.stringify(this.fileNames));\n return generateUrl(\"/apps/files/ajax/download.php?\".concat(params));\n },\n fileNames: function fileNames() {\n var _this = this;\n\n return this.selectedFileIds.map(function (fileId) {\n return _this.files[fileId].filename;\n });\n }\n })\n};","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport { mapGetters } from 'vuex';\nimport AlertCircle from 'vue-material-design-icons/AlertCircle';\nimport FolderMultipleImage from 'vue-material-design-icons/FolderMultipleImage';\nimport { NcEmptyContent, isMobile } from '@nextcloud/vue';\nimport FilesSelectionMixin from '../../mixins/FilesSelectionMixin.js';\nimport FilesListViewer from '.././FilesListViewer.vue';\nimport File from '.././File.vue';\nimport FolderIllustration from '../../assets/Illustrations/folder.svg';\nimport SemaphoreWithPriority from '../../utils/semaphoreWithPriority.js';\nexport default {\n name: 'CollectionContent',\n components: {\n AlertCircle: AlertCircle,\n FolderMultipleImage: FolderMultipleImage,\n NcEmptyContent: NcEmptyContent,\n FilesListViewer: FilesListViewer,\n File: File\n },\n mixins: [FilesSelectionMixin, isMobile],\n props: {\n collection: {\n type: Object,\n default: function _default() {\n return undefined;\n }\n },\n collectionFileIds: {\n type: Array,\n required: true\n },\n loading: {\n type: Boolean,\n default: false\n },\n error: {\n type: [Error],\n default: ''\n },\n semaphore: {\n type: SemaphoreWithPriority,\n required: true\n }\n },\n data: function data() {\n return {\n FolderIllustration: FolderIllustration,\n appContent: document.getElementById('app-content-vue')\n };\n },\n computed: _objectSpread({}, mapGetters(['files'])),\n methods: {\n openViewer: function openViewer(fileId) {\n var _this = this;\n\n var file = this.files[fileId];\n OCA.Viewer.open({\n fileInfo: file,\n list: this.collectionFileIds.map(function (fileId) {\n return _this.files[fileId];\n }).filter(function (file) {\n return !file.sectionHeader;\n }),\n loadMore: file.loadMore ? /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {\n return regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return file.loadMore(true);\n\n case 2:\n return _context.abrupt(\"return\", _context.sent);\n\n case 3:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n })) : function () {\n return [];\n },\n canLoop: file.canLoop\n });\n }\n }\n};","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport { mapGetters } from 'vuex';\nimport { NcButton, NcLoadingIcon } from '@nextcloud/vue';\nimport { UploadPicker } from '@nextcloud/upload';\nimport moment from '@nextcloud/moment';\nimport ImagePlus from 'vue-material-design-icons/ImagePlus';\nimport FilesListViewer from './FilesListViewer.vue';\nimport File from './File.vue';\nimport FetchFilesMixin from '../mixins/FetchFilesMixin.js';\nimport FilesSelectionMixin from '../mixins/FilesSelectionMixin.js';\nimport FilesByMonthMixin from '../mixins/FilesByMonthMixin.js';\nimport UserConfig from '../mixins/UserConfig.js';\nimport allowedMimes from '../services/AllowedMimes.js';\nexport default {\n name: 'FilesPicker',\n components: {\n File: File,\n FilesListViewer: FilesListViewer,\n ImagePlus: ImagePlus,\n NcButton: NcButton,\n NcLoadingIcon: NcLoadingIcon,\n UploadPicker: UploadPicker\n },\n filters: {\n /**\n * @param {string} date - In the following format: YYYYMM\n */\n dateMonthAndYear: function dateMonthAndYear(date) {\n return moment(date, 'YYYYMM').format('MMMM YYYY');\n }\n },\n mixins: [FetchFilesMixin, FilesByMonthMixin, FilesSelectionMixin, UserConfig],\n props: {\n // Label to show in the submit button.\n destination: {\n type: String,\n required: true\n },\n // List of file ids to not show.\n blacklistIds: {\n type: Array,\n default: function _default() {\n return [];\n }\n },\n // Whether we should disable the submit button and show a spinner.\n loading: {\n type: Boolean,\n default: false\n }\n },\n data: function data() {\n return {\n allowedMimes: allowedMimes,\n targetMonth: null,\n uploadContext: {\n route: 'albumpicker'\n }\n };\n },\n computed: _objectSpread({}, mapGetters(['files'])),\n watch: {\n monthsList: function monthsList(value) {\n if (this.targetMonth === null) {\n this.targetMonth = value[0];\n }\n }\n },\n methods: {\n getFiles: function getFiles() {\n this.fetchFiles('', {}, this.blacklistIds);\n },\n emitPickedEvent: function emitPickedEvent() {\n this.$emit('files-picked', this.selectedFileIds);\n }\n }\n};","function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\n/**\n * @copyright Copyright (c) 2022 Louis Chemineau \n *\n * @author Louis Chemineau \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 .\n *\n */\nexport default {\n name: 'FilesByMonthMixin',\n computed: {\n /**\n * @return {object}\n */\n fileIdsByMonth: function fileIdsByMonth() {\n var _this = this;\n\n var filesByMonth = {};\n\n var _iterator = _createForOfIteratorHelper(this.fetchedFileIds),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var _filesByMonth$file$mo;\n\n var fileId = _step.value;\n var file = this.files[fileId];\n filesByMonth[file.month] = (_filesByMonth$file$mo = filesByMonth[file.month]) !== null && _filesByMonth$file$mo !== void 0 ? _filesByMonth$file$mo : [];\n filesByMonth[file.month].push(file.fileid);\n } // Sort files in sections.\n\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n\n Object.keys(filesByMonth).forEach(function (month) {\n return filesByMonth[month].sort(_this.sortFilesByTimestamp);\n });\n return filesByMonth;\n },\n\n /**\n * @return {string[]}\n */\n monthsList: function monthsList() {\n return Object.keys(this.fileIdsByMonth).sort(function (month1, month2) {\n return month1 > month2 ? -1 : 1;\n });\n }\n }\n};","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".collection[data-v-6a4155da] {\\n display: flex;\\n flex-direction: column;\\n}\\n.collection__media[data-v-6a4155da] {\\n padding: 0 64px;\\n}\\n@media only screen and (max-width: 1200px) {\\n.collection__media[data-v-6a4155da] {\\n padding: 0 4px;\\n}\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".file-picker[data-v-10d87d65] {\\n display: flex;\\n flex-direction: column;\\n padding: 12px;\\n}\\n.file-picker__content[data-v-10d87d65] {\\n display: flex;\\n align-items: flex-start;\\n flex-grow: 1;\\n height: 500px;\\n}\\n.file-picker__navigation[data-v-10d87d65] {\\n flex-basis: 200px;\\n overflow: scroll;\\n margin-right: 8px;\\n padding-right: 8px;\\n height: 100%;\\n}\\n@media only screen and (max-width: 1200px) {\\n.file-picker__navigation[data-v-10d87d65] {\\n flex-basis: 100px;\\n}\\n}\\n.file-picker__navigation--placeholder[data-v-10d87d65] {\\n background: var(--color-primary-light);\\n border-radius: var(--border-radius-large);\\n}\\n.file-picker__navigation__month[data-v-10d87d65] {\\n font-weight: bold;\\n font-size: 16px;\\n border-radius: var(--border-radius-pill);\\n padding: 8px 16px;\\n margin: 4px 0;\\n cursor: pointer;\\n}\\n@media only screen and (max-width: 1200px) {\\n.file-picker__navigation__month[data-v-10d87d65] {\\n text-align: center;\\n}\\n}\\n.file-picker__navigation__month[data-v-10d87d65]:hover {\\n background: var(--color-background-dark);\\n}\\n.file-picker__navigation__month.selected[data-v-10d87d65] {\\n background: var(--color-primary-element-lighter);\\n}\\n.file-picker__file-list[data-v-10d87d65] {\\n flex-grow: 1;\\n min-width: 0;\\n height: 100%;\\n}\\n.file-picker__file-list--placeholder[data-v-10d87d65] {\\n background: var(--color-primary-light);\\n border-radius: var(--border-radius-large);\\n}\\n.file-picker__file-list .section-header[data-v-10d87d65] {\\n font-weight: bold;\\n font-size: 20px;\\n padding: 8px 0 4px 0;\\n}\\n.file-picker__file-list[data-v-10d87d65] .empty-content {\\n position: absolute;\\n width: 100%;\\n margin-top: 0;\\n height: 100%;\\n display: flex;\\n flex-direction: column;\\n justify-content: center;\\n}\\n.file-picker__actions[data-v-10d87d65] {\\n display: flex;\\n justify-content: space-between;\\n justify-items: center;\\n padding-top: 16px;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n import API from \"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./CollectionContent.vue?vue&type=style&index=0&id=6a4155da&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./CollectionContent.vue?vue&type=style&index=0&id=6a4155da&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./FilesPicker.vue?vue&type=style&index=0&id=10d87d65&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./FilesPicker.vue?vue&type=style&index=0&id=10d87d65&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./ActionDownload.vue?vue&type=template&id=1aefa300&\"\nimport script from \"./ActionDownload.vue?vue&type=script&lang=js&\"\nexport * from \"./ActionDownload.vue?vue&type=script&lang=js&\"\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\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/admin/Docker/apps2/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('1aefa300')) {\n api.createRecord('1aefa300', component.options)\n } else {\n api.reload('1aefa300', component.options)\n }\n module.hot.accept(\"./ActionDownload.vue?vue&type=template&id=1aefa300&\", function () {\n api.rerender('1aefa300', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/Actions/ActionDownload.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./CollectionContent.vue?vue&type=template&id=6a4155da&scoped=true&\"\nimport script from \"./CollectionContent.vue?vue&type=script&lang=js&\"\nexport * from \"./CollectionContent.vue?vue&type=script&lang=js&\"\nimport style0 from \"./CollectionContent.vue?vue&type=style&index=0&id=6a4155da&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 \"6a4155da\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/admin/Docker/apps2/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('6a4155da')) {\n api.createRecord('6a4155da', component.options)\n } else {\n api.reload('6a4155da', component.options)\n }\n module.hot.accept(\"./CollectionContent.vue?vue&type=template&id=6a4155da&scoped=true&\", function () {\n api.rerender('6a4155da', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/Collection/CollectionContent.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./FilesPicker.vue?vue&type=template&id=10d87d65&scoped=true&\"\nimport script from \"./FilesPicker.vue?vue&type=script&lang=js&\"\nexport * from \"./FilesPicker.vue?vue&type=script&lang=js&\"\nimport style0 from \"./FilesPicker.vue?vue&type=style&index=0&id=10d87d65&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 \"10d87d65\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/admin/Docker/apps2/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('10d87d65')) {\n api.createRecord('10d87d65', component.options)\n } else {\n api.reload('10d87d65', component.options)\n }\n module.hot.accept(\"./FilesPicker.vue?vue&type=template&id=10d87d65&scoped=true&\", function () {\n api.rerender('10d87d65', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/FilesPicker.vue\"\nexport default component.exports","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActionDownload.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!./ActionDownload.vue?vue&type=script&lang=js&\"","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CollectionContent.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!./CollectionContent.vue?vue&type=script&lang=js&\"","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesPicker.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!./FilesPicker.vue?vue&type=script&lang=js&\"","export * from \"-!../../../node_modules/style-loader/dist/cjs.js!../../../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!./CollectionContent.vue?vue&type=style&index=0&id=6a4155da&lang=scss&scoped=true&\"","export * from \"-!../../node_modules/style-loader/dist/cjs.js!../../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!./FilesPicker.vue?vue&type=style&index=0&id=10d87d65&lang=scss&scoped=true&\"","export * from \"-!../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CollectionContent.vue?vue&type=template&id=6a4155da&scoped=true&\"","export * from \"-!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesPicker.vue?vue&type=template&id=10d87d65&scoped=true&\"","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"NcActionLink\",\n {\n attrs: {\n \"close-after-click\": true,\n href: _vm.downloadUrl,\n download: _vm.downloadUrl,\n \"aria-label\": _vm.title,\n },\n },\n [\n _vm._v(\"\\n\\t\" + _vm._s(_vm.title) + \"\\n\\t\"),\n _vm._t(\"icon\", null, { slot: \"icon\" }),\n ],\n 2\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _vm.collection === undefined && !_vm.loading\n ? _c(\n \"NcEmptyContent\",\n {\n staticClass: \"empty-content-with-illustration\",\n attrs: { title: _vm.t(\"photos\", \"This collection does not exist\") },\n },\n [_c(\"FolderMultipleImage\")],\n 1\n )\n : _vm.error\n ? _c(\n \"NcEmptyContent\",\n { attrs: { title: _vm.t(\"photos\", \"An error occurred\") } },\n [_c(\"AlertCircle\", { attrs: { slot: \"icon\" }, slot: \"icon\" })],\n 1\n )\n : _c(\n \"div\",\n { staticClass: \"collection\" },\n [\n _vm._t(\"header\", null, { selectedFileIds: _vm.selectedFileIds }),\n _vm._v(\" \"),\n _vm.collectionFileIds.length === 0 && !_vm.loading\n ? _vm._t(\"empty-content\")\n : _vm._e(),\n _vm._v(\" \"),\n _vm.collection !== undefined\n ? _c(\"FilesListViewer\", {\n staticClass: \"collection__media\",\n attrs: {\n \"container-element\": _vm.appContent,\n \"file-ids\": _vm.collectionFileIds,\n \"base-height\": _vm.isMobile ? 120 : 200,\n loading: _vm.loading,\n },\n scopedSlots: _vm._u(\n [\n {\n key: \"default\",\n fn: function (ref) {\n var file = ref.file\n var visibility = ref.visibility\n return _c(\"File\", {\n attrs: {\n file: _vm.files[file.id],\n \"allow-selection\": true,\n selected: _vm.selection[file.id] === true,\n visibility: visibility,\n semaphore: _vm.semaphore,\n },\n on: {\n click: _vm.openViewer,\n \"select-toggled\": _vm.onFileSelectToggle,\n },\n })\n },\n },\n ],\n null,\n false,\n 3592900521\n ),\n })\n : _vm._e(),\n ],\n 2\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"div\", { staticClass: \"file-picker\" }, [\n _c(\n \"div\",\n { staticClass: \"file-picker__content\" },\n [\n _c(\n \"div\",\n {\n staticClass: \"file-picker__navigation\",\n class: {\n \"file-picker__navigation--placeholder\":\n _vm.monthsList.length === 0,\n },\n },\n _vm._l(_vm.monthsList, function (month) {\n return _c(\n \"div\",\n {\n key: month,\n staticClass: \"file-picker__navigation__month\",\n class: { selected: _vm.targetMonth === month },\n on: {\n click: function ($event) {\n _vm.targetMonth = month\n },\n },\n },\n [\n _vm._v(\n \"\\n\\t\\t\\t\\t\" +\n _vm._s(_vm._f(\"dateMonthAndYear\")(month)) +\n \"\\n\\t\\t\\t\"\n ),\n ]\n )\n }),\n 0\n ),\n _vm._v(\" \"),\n _c(\"FilesListViewer\", {\n staticClass: \"file-picker__file-list\",\n class: {\n \"file-picker__file-list--placeholder\": _vm.monthsList.length === 0,\n },\n attrs: {\n \"file-ids-by-section\": _vm.fileIdsByMonth,\n \"empty-message\": _vm.t(\n \"photos\",\n \"There is no photos or videos yet!\"\n ),\n sections: _vm.monthsList,\n loading: _vm.loadingFiles,\n \"base-height\": 100,\n \"section-header-height\": 50,\n \"scroll-to-section\": _vm.targetMonth,\n },\n on: { \"need-content\": _vm.getFiles },\n scopedSlots: _vm._u([\n {\n key: \"default\",\n fn: function (ref) {\n var file = ref.file\n var height = ref.height\n var visibility = ref.visibility\n return [\n file.sectionHeader\n ? _c(\n \"h3\",\n {\n staticClass: \"section-header\",\n style: { height: height + \"px\" },\n attrs: {\n id: \"file-picker-section-header-\" + file.id,\n },\n },\n [\n _vm._v(\n \"\\n\\t\\t\\t\\t\\t\" +\n _vm._s(_vm._f(\"dateMonthAndYear\")(file.id)) +\n \"\\n\\t\\t\\t\\t\"\n ),\n ]\n )\n : _c(\"File\", {\n attrs: {\n file: _vm.files[file.id],\n \"allow-selection\": true,\n selected: _vm.selection[file.id] === true,\n visibility: visibility,\n semaphore: _vm.semaphore,\n },\n on: { \"select-toggled\": _vm.onFileSelectToggle },\n }),\n ]\n },\n },\n ]),\n }),\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"file-picker__actions\" },\n [\n _c(\"UploadPicker\", {\n attrs: {\n accept: _vm.allowedMimes,\n context: _vm.uploadContext,\n destination: _vm.photosLocation,\n multiple: true,\n },\n on: { uploaded: _vm.getFiles },\n }),\n _vm._v(\" \"),\n _c(\n \"NcButton\",\n {\n attrs: {\n type: \"primary\",\n disabled: _vm.loading || _vm.selectedFileIds.length === 0,\n },\n on: { click: _vm.emitPickedEvent },\n scopedSlots: _vm._u([\n {\n key: \"icon\",\n fn: function () {\n return [\n !_vm.loading ? _c(\"ImagePlus\") : _vm._e(),\n _vm._v(\" \"),\n _vm.loading ? _c(\"NcLoadingIcon\") : _vm._e(),\n ]\n },\n proxy: true,\n },\n ]),\n },\n [\n _vm._v(\n \"\\n\\t\\t\\t\" +\n _vm._s(\n _vm.t(\"photos\", \"Add to {destination}\", {\n destination: _vm.destination,\n })\n ) +\n \"\\n\\t\\t\"\n ),\n ]\n ),\n ],\n 1\n ),\n ])\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","/* (ignored) */","/* (ignored) */","/* (ignored) */","/* (ignored) */","/* (ignored) */","/* (ignored) */","/* (ignored) */","/* (ignored) */","/* (ignored) */","/* (ignored) */","/* (ignored) */","/* (ignored) */"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-src_components_Collection_CollectionContent_vue-src_components_FilesPicker_vue-src_components-e841a5.js b/js/photos-src_components_Collection_CollectionContent_vue-src_components_FilesPicker_vue-src_components-e841a5.js deleted file mode 100644 index 42bb383c3..000000000 --- a/js/photos-src_components_Collection_CollectionContent_vue-src_components_FilesPicker_vue-src_components-e841a5.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkphotos=self.webpackChunkphotos||[]).push([["src_components_Collection_CollectionContent_vue-src_components_FilesPicker_vue-src_components-e841a5"],{99100:(n,t,e)=>{e.d(t,{Z:()=>l});var i=e(87537),o=e.n(i),a=e(23645),r=e.n(a)()(o());r.push([n.id,".collection[data-v-312d69fb]{display:flex;flex-direction:column}.collection__media[data-v-312d69fb]{padding:0 64px}@media only screen and (max-width: 1200px){.collection__media[data-v-312d69fb]{padding:0 4px}}","",{version:3,sources:["webpack://./src/components/Collection/CollectionContent.vue"],names:[],mappings:"AA8IA,6BACC,YAAA,CACA,qBAAA,CAEA,oCACC,cAAA,CAEA,2CAHD,oCAIE,aAAA,CAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.collection {\n\tdisplay: flex;\n\tflex-direction: column;\n\n\t&__media {\n\t\tpadding: 0 64px;\n\n\t\t@media only screen and (max-width: 1200px) {\n\t\t\tpadding: 0 4px;\n\t\t}\n\t}\n}\n'],sourceRoot:""}]);const l=r},36636:(n,t,e)=>{e.d(t,{Z:()=>l});var i=e(87537),o=e.n(i),a=e(23645),r=e.n(a)()(o());r.push([n.id,".file-picker[data-v-a0f8650e]{display:flex;flex-direction:column;padding:12px}.file-picker__content[data-v-a0f8650e]{display:flex;align-items:flex-start;flex-grow:1;height:500px}.file-picker__navigation[data-v-a0f8650e]{flex-basis:200px;overflow:scroll;margin-right:8px;padding-right:8px;height:100%}@media only screen and (max-width: 1200px){.file-picker__navigation[data-v-a0f8650e]{flex-basis:80px}}.file-picker__navigation--placeholder[data-v-a0f8650e]{background:var(--color-primary-light);border-radius:var(--border-radius-large)}.file-picker__navigation__month[data-v-a0f8650e]{font-weight:bold;font-size:16px;border-radius:var(--border-radius-pill);padding:8px 16px;margin:4px 0;cursor:pointer}@media only screen and (max-width: 1200px){.file-picker__navigation__month[data-v-a0f8650e]{text-align:center}}.file-picker__navigation__month[data-v-a0f8650e]:hover{background:var(--color-background-dark)}.file-picker__navigation__month.selected[data-v-a0f8650e]{background:var(--color-primary-element-lighter)}.file-picker__file-list[data-v-a0f8650e]{flex-grow:1;min-width:0;height:100%}.file-picker__file-list--placeholder[data-v-a0f8650e]{background:var(--color-primary-light);border-radius:var(--border-radius-large)}.file-picker__file-list .section-header[data-v-a0f8650e]{font-weight:bold;font-size:20px;padding:8px 0 4px 0}.file-picker__file-list[data-v-a0f8650e] .empty-content{margin-top:0;height:100%;display:flex;flex-direction:column;justify-content:center}.file-picker__actions[data-v-a0f8650e]{display:flex;justify-content:space-between;justify-items:center;padding-top:16px}","",{version:3,sources:["webpack://./src/components/FilesPicker.vue"],names:[],mappings:"AA+KA,8BACC,YAAA,CACA,qBAAA,CACA,YAAA,CAEA,uCACC,YAAA,CACA,sBAAA,CACA,WAAA,CACA,YAAA,CAGD,0CACC,gBAAA,CACA,eAAA,CACA,gBAAA,CACA,iBAAA,CACA,WAAA,CAEA,2CAPD,0CAQE,eAAA,CAAA,CAGD,uDACC,qCAAA,CACA,wCAAA,CAGD,iDACC,gBAAA,CACA,cAAA,CACA,uCAAA,CACA,gBAAA,CACA,YAAA,CACA,cAAA,CAEA,2CARD,iDASE,iBAAA,CAAA,CAGD,uDACC,uCAAA,CAGD,0DACC,+CAAA,CAKH,yCACC,WAAA,CACA,WAAA,CACA,WAAA,CAEA,sDACC,qCAAA,CACA,wCAAA,CAGD,yDACC,gBAAA,CACA,cAAA,CACA,mBAAA,CAGD,yDACC,YAAA,CACA,WAAA,CACA,YAAA,CACA,qBAAA,CACA,sBAAA,CAIF,uCACC,YAAA,CACA,6BAAA,CACA,oBAAA,CACA,gBAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.file-picker {\n\tdisplay: flex;\n\tflex-direction: column;\n\tpadding: 12px;\n\n\t&__content {\n\t\tdisplay: flex;\n\t\talign-items: flex-start;\n\t\tflex-grow: 1;\n\t\theight: 500px;\n\t}\n\n\t&__navigation {\n\t\tflex-basis: 200px;\n\t\toverflow: scroll;\n\t\tmargin-right: 8px;\n\t\tpadding-right: 8px;\n\t\theight: 100%;\n\n\t\t@media only screen and (max-width: 1200px) {\n\t\t\tflex-basis: 80px;\n\t\t}\n\n\t\t&--placeholder {\n\t\t\tbackground: var(--color-primary-light);\n\t\t\tborder-radius: var(--border-radius-large);\n\t\t}\n\n\t\t&__month {\n\t\t\tfont-weight: bold;\n\t\t\tfont-size: 16px;\n\t\t\tborder-radius: var(--border-radius-pill);\n\t\t\tpadding: 8px 16px;\n\t\t\tmargin: 4px 0;\n\t\t\tcursor: pointer;\n\n\t\t\t@media only screen and (max-width: 1200px) {\n\t\t\t\ttext-align: center;\n\t\t\t}\n\n\t\t\t&:hover {\n\t\t\t\tbackground: var(--color-background-dark);\n\t\t\t}\n\n\t\t\t&.selected {\n\t\t\t\tbackground: var(--color-primary-element-lighter);\n\t\t\t}\n\t\t}\n\t}\n\n\t&__file-list {\n\t\tflex-grow: 1;\n\t\tmin-width: 0;\n\t\theight: 100%;\n\n\t\t&--placeholder {\n\t\t\tbackground: var(--color-primary-light);\n\t\t\tborder-radius: var(--border-radius-large);\n\t\t}\n\n\t\t.section-header {\n\t\t\tfont-weight: bold;\n\t\t\tfont-size: 20px;\n\t\t\tpadding: 8px 0 4px 0;\n\t\t}\n\n\t\t::v-deep .empty-content {\n\t\t\tmargin-top: 0;\n\t\t\theight: 100%;\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t\tjustify-content: center;\n\t\t}\n\t}\n\n\t&__actions {\n\t\tdisplay: flex;\n\t\tjustify-content: space-between;\n\t\tjustify-items: center;\n\t\tpadding-top: 16px;\n\t}\n}\n'],sourceRoot:""}]);const l=r},6179:(n,t,e)=>{e.d(t,{Z:()=>l});var i=e(87537),o=e.n(i),a=e(23645),r=e.n(a)()(o());r.push([n.id,":root{--photos-navigation-height: 64px;--photos-navigation-spacing: calc((var(--photos-navigation-height) - 44px) / 2)}button.app-navigation-toggle{top:0 !important;right:calc(var(--photos-navigation-height)*-1) !important;margin:var(--photos-navigation-spacing) !important}","",{version:3,sources:["webpack://./src/components/HeaderNavigation.vue"],names:[],mappings:"AAgLA,MACC,gCAAA,CAEA,+EAAA,CAID,6BAEC,gBAAA,CACA,yDAAA,CACA,kDAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n:root {\n\t--photos-navigation-height: 64px;\n\t// header height - button size\n\t--photos-navigation-spacing: calc((var(--photos-navigation-height) - 44px) / 2);\n}\n\n// Properly position the navigation toggle button\nbutton.app-navigation-toggle {\n\t// App-navigation have a 4px margin top\n\ttop: 0 !important;\n\tright: calc(var(--photos-navigation-height) * -1) !important;\n\tmargin: var(--photos-navigation-spacing) !important;\n}\n\n'],sourceRoot:""}]);const l=r},84827:(n,t,e)=>{e.d(t,{Z:()=>l});var i=e(87537),o=e.n(i),a=e(23645),r=e.n(a)()(o());r.push([n.id,".photos-navigation[data-v-b9975c76]{position:-webkit-sticky;position:sticky;z-index:20;top:0;display:flex;align-items:center;width:100%;height:var(--photos-navigation-height);min-height:var(--photos-navigation-height);padding:0 var(--photos-navigation-height);background:var(--color-main-background)}.photos-navigation__back[data-v-b9975c76]{position:absolute;left:0;margin:var(--photos-navigation-spacing) !important}.photos-navigation__title[data-v-b9975c76]{overflow:hidden;margin:0;margin-right:calc(2*var(--photos-navigation-spacing));cursor:pointer;white-space:nowrap;text-overflow:ellipsis}.photos-navigation__loader[data-v-b9975c76]{margin-left:32px}.photos-navigation__content-right[data-v-b9975c76]{display:flex;align-items:center;justify-content:center;margin-left:auto}","",{version:3,sources:["webpack://./src/components/HeaderNavigation.vue"],names:[],mappings:"AAiMA,oCACC,uBAAA,CAAA,eAAA,CACA,UAAA,CACA,KAAA,CACA,YAAA,CACA,kBAAA,CACA,UAAA,CACA,sCAAA,CACA,0CAAA,CACA,yCAAA,CACA,uCAAA,CAEA,0CAEC,iBAAA,CACA,MAAA,CACA,kDAAA,CAGD,2CACC,eAAA,CACA,QAAA,CACA,qDAAA,CACA,cAAA,CACA,kBAAA,CACA,sBAAA,CAGD,4CACC,gBAAA,CAGD,mDACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,gBAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.photos-navigation {\n\tposition: sticky;\n\tz-index: 20;\n\ttop: 0;\n\tdisplay: flex;\n\talign-items: center;\n\twidth: 100%;\n\theight: var(--photos-navigation-height);\n\tmin-height: var(--photos-navigation-height);\n\tpadding: 0 var(--photos-navigation-height);\n\tbackground: var(--color-main-background);\n\n\t&__back {\n\t\t// Above the navigation menu\n\t\tposition: absolute;\n\t\tleft: 0;\n\t\tmargin: var(--photos-navigation-spacing) !important;\n\t}\n\n\t&__title {\n\t\toverflow: hidden;\n\t\tmargin: 0;\n\t\tmargin-right: calc(2 * var(--photos-navigation-spacing));\n\t\tcursor: pointer;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t}\n\n\t&__loader {\n\t\tmargin-left: 32px;\n\t}\n\n\t&__content-right {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\tmargin-left: auto;\n\t}\n}\n\n'],sourceRoot:""}]);const l=r},38352:(n,t,e)=>{e.d(t,{Z:()=>Z});var i=e(20629),o=e(24777),a=e(65322),r=e(33476),l=e(98171),s=e(90122),c=e(39448),p=e(80917),d=e(32114);function A(n,t,e,i,o,a,r){try{var l=n[a](r),s=l.value}catch(n){return void e(n)}l.done?t(s):Promise.resolve(s).then(i,o)}function f(n){return function(){var t=this,e=arguments;return new Promise((function(i,o){var a=n.apply(t,e);function r(n){A(a,i,o,r,l,"next",n)}function l(n){A(a,i,o,r,l,"throw",n)}r(void 0)}))}}function g(n,t){var e=Object.keys(n);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(n);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(n,t).enumerable}))),e.push.apply(e,i)}return e}function h(n,t,e){return t in n?Object.defineProperty(n,t,{value:e,enumerable:!0,configurable:!0,writable:!0}):n[t]=e,n}const u={name:"CollectionContent",components:{AlertCircle:o.Z,FolderMultipleImage:a.Z,NcEmptyContent:r.NcEmptyContent,FilesListViewer:s.Z,File:c.Z},mixins:[l.Z,r.isMobile],props:{collection:{type:Object,default:function(){}},collectionFileIds:{type:Array,required:!0},loading:{type:Boolean,default:!1},error:{type:[Error],default:""},semaphore:{type:d.Z,required:!0}},data:function(){return{FolderIllustration:p,appContent:document.getElementById("app-content-vue")}},computed:function(n){for(var t=1;t{e.d(t,{Z:()=>Z});var i=e(20629),o=e(61679),a=e(75843),r=e(80351),l=e.n(r),s=e(33476),c=e(66951),p=e(98171),d=e(90122),A=e(39448),f=e(28391);function g(n,t){var e=Object.keys(n);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(n);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(n,t).enumerable}))),e.push.apply(e,i)}return e}function h(n,t,e){return t in n?Object.defineProperty(n,t,{value:e,enumerable:!0,configurable:!0,writable:!0}):n[t]=e,n}const u={name:"FilesPicker",components:{ImagePlus:o.Z,Upload:a.Z,NcButton:s.NcButton,NcLoadingIcon:s.NcLoadingIcon,FilesListViewer:d.Z,File:A.Z},filters:{dateMonthAndYear:function(n){return l()(n,"YYYYMM").format("MMMM YYYY")}},mixins:[c.Z,f.Z,p.Z],props:{destination:{type:String,required:!0},blacklistIds:{type:Array,default:function(){return[]}},loading:{type:Boolean,default:!1}},data:function(){return{targetMonth:null}},computed:function(n){for(var t=1;t{i.d(e,{Z:()=>_});var o=i(76240),a=i(33476);const r={name:"HeaderNavigation",components:{ArrowLeft:o.default,NcButton:a.NcButton,NcLoadingIcon:a.NcLoadingIcon},inheritAttrs:!1,props:{loading:{type:Boolean,default:!1},path:{type:String,default:"/"},title:{type:String,required:!0},rootTitle:{type:String,default:t("photos","Photos")},params:{type:Object,default:null}},computed:{isRoot:function(){var n="/"===this.path;return this.toggleNavigationButton(!n),n},name:function(){return this.isRoot?this.rootTitle:this.title},parentPath:function(){var n=this.path.split("/");n.pop();var t=n.join("/");return this.isRoot||""===t.trim()?"/":n.join("/")},parentName:function(){return this.parentPath&&this.parentPath.split("/").pop()},backToText:function(){return"/"===this.parentPath?t("photos","Back to {folder}",{folder:this.rootTitle}):t("photos","Back to {folder}",{folder:this.parentName})},to:function(){var n=/^\/?(.*)/i.exec(this.parentPath)[1],t=Object.assign({},this.$route,{params:this.params||{path:n}}),e=t.name,i=t.params;return""===n?{name:e}:decodeURIComponent(this.$router.resolve({name:e,params:i}).resolved.path)}},methods:{folderUp:function(){this.$router.push(this.to)},refresh:function(){this.$emit("refresh")},toggleNavigationButton:function(n){document.querySelector("button.app-navigation-toggle").style.display=n?"none":null}}};var l=i(93379),s=i.n(l),c=i(7795),p=i.n(c),d=i(90569),A=i.n(d),f=i(3565),g=i.n(f),h=i(19216),u=i.n(h),m=i(44589),C=i.n(m),v=i(6179),y={};y.styleTagTransform=C(),y.setAttributes=g(),y.insert=A().bind(null,"head"),y.domAPI=p(),y.insertStyleElement=u();s()(v.Z,y);v.Z&&v.Z.locals&&v.Z.locals;var b=i(84827),x={};x.styleTagTransform=C(),x.setAttributes=g(),x.insert=A().bind(null,"head"),x.domAPI=p(),x.insertStyleElement=u();s()(b.Z,x);b.Z&&b.Z.locals&&b.Z.locals;const _=(0,i(51900).Z)(r,(function(){var n=this,t=n.$createElement,e=n._self._c||t;return e("div",{staticClass:"photos-navigation",class:{"photos-navigation--root":n.isRoot},attrs:{role:"toolbar"}},[n.isRoot?n._e():e("NcButton",{staticClass:"photos-navigation__back",attrs:{type:"tertiary"},on:{click:n.folderUp},scopedSlots:n._u([{key:"icon",fn:function(){return[e("ArrowLeft",{attrs:{size:20}})]},proxy:!0}],null,!1,1821202730)}),n._v(" "),e("h2",{staticClass:"photos-navigation__title",on:{click:n.refresh}},[n._v("\n\t\t"+n._s(n.name)+"\n\t")]),n._v(" "),n.$slots.default?e("div",{staticClass:"photos-navigation__content"},[n._t("default")],2):n._e(),n._v(" "),n.loading?e("NcLoadingIcon",{staticClass:"photos-navigation__loader"}):n._e(),n._v(" "),e("div",{staticClass:"photos-navigation__content-right"},[n._t("right")],2)],1)}),[],!1,null,"b9975c76",null).exports},80917:n=>{n.exports='folder'}}]); -//# sourceMappingURL=photos-src_components_Collection_CollectionContent_vue-src_components_FilesPicker_vue-src_components-e841a5.js.map?v=61e896e04f06eca31f86 \ No newline at end of file diff --git a/js/photos-src_components_Collection_CollectionContent_vue-src_components_FilesPicker_vue-src_components-e841a5.js.map b/js/photos-src_components_Collection_CollectionContent_vue-src_components_FilesPicker_vue-src_components-e841a5.js.map deleted file mode 100644 index ed149e744..000000000 --- a/js/photos-src_components_Collection_CollectionContent_vue-src_components_FilesPicker_vue-src_components-e841a5.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-src_components_Collection_CollectionContent_vue-src_components_FilesPicker_vue-src_components-e841a5.js?v=61e896e04f06eca31f86","mappings":"uPAGIA,E,MAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,oNAAqN,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,+DAA+D,MAAQ,GAAG,SAAW,yEAAyE,eAAiB,CAAC,6/BAA6kC,WAAa,MAEniD,S,sECJIH,E,MAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,4jDAA6jD,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,8CAA8C,MAAQ,GAAG,SAAW,6hBAA6hB,eAAiB,CAAC,49EAA4iF,WAAa,MAE7yJ,S,qECJIH,E,MAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,qRAAsR,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,mDAAmD,MAAQ,GAAG,SAAW,qEAAqE,eAAiB,CAAC,g0CAAg5C,WAAa,MAEv5D,S,sECJIH,E,MAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,gxBAAixB,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,mDAAmD,MAAQ,GAAG,SAAW,0SAA0S,eAAiB,CAAC,mvDAAm0D,WAAa,MAE1iG,S,mCCPA,I,qvBCuEA,MCvEwL,EDuExL,CACA,yBAEA,YACA,gBACA,wBACA,gCACA,oBACA,UAGA,QACA,IACA,YAGA,OACA,YACA,YACA,sBAGA,mBACA,WACA,aAGA,SACA,aACA,YAGA,OACA,aACA,YAGA,WACA,SACA,cAIA,KA3CA,WA4CA,OACA,qBACA,sDAEA,EAEA,S,+VAAA,KACA,SACA,WAIA,SACA,WADA,SACA,cACA,gBACA,iBACA,WACA,gHACA,mRACA,mBAEA,I,qIE7HIC,EAAU,CAAC,EAEfA,EAAQC,kBAAoB,IAC5BD,EAAQE,cAAgB,IAElBF,EAAQG,OAAS,SAAc,KAAM,QAE3CH,EAAQI,OAAS,IACjBJ,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKJ,KAAW,YAAiB,WCPlD,SAXgB,E,SAAA,GACd,GJTW,WAAa,IAAIM,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,YAA2BI,IAAnBN,EAAIO,YAA6BP,EAAIQ,QAA+KR,EAAS,MAAEI,EAAG,iBAAiB,CAACK,MAAM,CAAC,MAAQT,EAAIU,EAAE,SAAU,uBAAuB,CAACN,EAAG,cAAc,CAACK,MAAM,CAAC,KAAO,QAAQE,KAAK,UAAU,GAAGP,EAAG,MAAM,CAACQ,YAAY,cAAc,CAACZ,EAAIa,GAAG,SAAS,KAAK,CAAC,gBAAkBb,EAAIc,kBAAkBd,EAAIe,GAAG,KAAuC,IAAjCf,EAAIgB,kBAAkBC,QAAiBjB,EAAIQ,QAAiCR,EAAIkB,KAA5BlB,EAAIa,GAAG,iBAA0Bb,EAAIe,GAAG,UAAyBT,IAAnBN,EAAIO,WAA0BH,EAAG,kBAAkB,CAACQ,YAAY,oBAAoBH,MAAM,CAAC,oBAAoBT,EAAImB,WAAW,WAAWnB,EAAIgB,kBAAkB,cAAchB,EAAIoB,SAAW,IAAM,IAAI,QAAUpB,EAAIQ,SAASa,YAAYrB,EAAIsB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASC,GACp6B,IAAIC,EAAOD,EAAIC,KACXC,EAAaF,EAAIE,WACrB,OAAOvB,EAAG,OAAO,CAACK,MAAM,CAAC,KAAOT,EAAI4B,MAAMF,EAAKjC,IAAI,mBAAkB,EAAK,UAAsC,IAA3BO,EAAI6B,UAAUH,EAAKjC,IAAa,WAAakC,EAAW,UAAY3B,EAAI8B,WAAWC,GAAG,CAAC,MAAQ/B,EAAIgC,WAAW,iBAAiBhC,EAAIiC,qBAAqB,IAAI,MAAK,EAAM,cAAcjC,EAAIkB,MAAM,GAHrId,EAAG,iBAAiB,CAACQ,YAAY,kCAAkCH,MAAM,CAAC,MAAQT,EAAIU,EAAE,SAAU,oCAAoC,CAACN,EAAG,wBAAwB,EAG3B,GAChQ,IIQpB,EACA,KACA,WACA,MAI8B,O,mCCnBhC,I,6cC8FA,MC9F4K,ED8F5K,CACA,mBAEA,YACA,cACA,WACA,oBACA,8BACA,oBACA,UAGA,SAIA,iBAJA,SAIA,GACA,0CACA,GAGA,QACA,IACA,IACA,KAGA,OAEA,aACA,YACA,aAIA,cACA,WACA,8BAIA,SACA,aACA,aAIA,KA/CA,WAgDA,OACA,iBAEA,EAEA,S,+VAAA,KACA,SACA,WAIA,OACA,WADA,SACA,GACA,0BACA,sBAEA,GAGA,SACA,SADA,WAEA,wCACA,EAEA,gBALA,WAMA,+CACA,I,qIE7JIV,EAAU,CAAC,EAEfA,EAAQC,kBAAoB,IAC5BD,EAAQE,cAAgB,IAElBF,EAAQG,OAAS,SAAc,KAAM,QAE3CH,EAAQI,OAAS,IACjBJ,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKJ,KAAW,YAAiB,WCPlD,SAXgB,E,SAAA,GACd,GJTW,WAAa,IAAIM,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACQ,YAAY,eAAe,CAACR,EAAG,MAAM,CAACQ,YAAY,wBAAwB,CAACR,EAAG,MAAM,CAACQ,YAAY,0BAA0BsB,MAAM,CAAC,uCAAkE,IAA1BlC,EAAImC,WAAWlB,SAAejB,EAAIoC,GAAIpC,EAAc,YAAE,SAASqC,GAAO,OAAOjC,EAAG,MAAM,CAACmB,IAAIc,EAAMzB,YAAY,iCAAiCsB,MAAM,CAACI,SAAUtC,EAAIuC,cAAgBF,GAAON,GAAG,CAAC,MAAQ,SAASS,GAAQxC,EAAIuC,YAAcF,CAAK,IAAI,CAACrC,EAAIe,GAAG,aAAaf,EAAIyC,GAAGzC,EAAI0C,GAAG,mBAAP1C,CAA2BqC,IAAQ,aAAa,IAAG,GAAGrC,EAAIe,GAAG,KAAKX,EAAG,kBAAkB,CAACQ,YAAY,yBAAyBsB,MAAM,CAAC,sCAAiE,IAA1BlC,EAAImC,WAAWlB,QAAcR,MAAM,CAAC,sBAAsBT,EAAI2C,eAAe,SAAW3C,EAAImC,WAAW,QAAUnC,EAAI4C,aAAa,cAAc,IAAI,wBAAwB,GAAG,gBAAgB5C,EAAIU,EAAE,SAAU,qDAAsD,oBAAoBV,EAAIuC,aAAaR,GAAG,CAAC,eAAe/B,EAAI6C,UAAUxB,YAAYrB,EAAIsB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASC,GACvkC,IAAIC,EAAOD,EAAIC,KACXoB,EAASrB,EAAIqB,OACbnB,EAAaF,EAAIE,WACrB,MAAO,CAAED,EAAkB,cAAEtB,EAAG,KAAK,CAACQ,YAAY,iBAAiBmC,MAAM,CAAGD,OAASA,EAAS,MAAQrC,MAAM,CAAC,GAAM,8BAAiCiB,EAAO,KAAK,CAAC1B,EAAIe,GAAG,eAAef,EAAIyC,GAAGzC,EAAI0C,GAAG,mBAAP1C,CAA2B0B,EAAKjC,KAAK,gBAAgBW,EAAG,OAAO,CAACK,MAAM,CAAC,KAAOT,EAAI4B,MAAMF,EAAKjC,IAAI,mBAAkB,EAAK,UAAsC,IAA3BO,EAAI6B,UAAUH,EAAKjC,IAAa,WAAakC,EAAW,UAAY3B,EAAI8B,WAAWC,GAAG,CAAC,iBAAiB/B,EAAIiC,sBAAsB,QAAQ,GAAGjC,EAAIe,GAAG,KAAKX,EAAG,MAAM,CAACQ,YAAY,wBAAwB,CAACR,EAAG,WAAW,CAACK,MAAM,CAAC,KAAO,WAAW,SAAWT,EAAIQ,SAASa,YAAYrB,EAAIsB,GAAG,CAAC,CAACC,IAAI,OAAOC,GAAG,WAAW,MAAO,CAACpB,EAAG,UAAU,EAAE4C,OAAM,MAAS,CAAChD,EAAIe,GAAG,WAAWf,EAAIyC,GAAGzC,EAAIU,EAAE,SAAU,yBAAyB,YAAYV,EAAIe,GAAG,KAAKX,EAAG,WAAW,CAACK,MAAM,CAAC,KAAO,UAAU,SAAWT,EAAIQ,SAA0C,IAA/BR,EAAIc,gBAAgBG,QAAcc,GAAG,CAAC,MAAQ/B,EAAIiD,iBAAiB5B,YAAYrB,EAAIsB,GAAG,CAAC,CAACC,IAAI,OAAOC,GAAG,WAAW,MAAO,CAAGxB,EAAIQ,QAAyBR,EAAIkB,KAApBd,EAAG,aAAsBJ,EAAIe,GAAG,KAAMf,EAAW,QAAEI,EAAG,iBAAiBJ,EAAIkB,KAAK,EAAE8B,OAAM,MAAS,CAAChD,EAAIe,GAAG,WAAWf,EAAIyC,GAAGzC,EAAIU,EAAE,SAAU,uBAAwB,CAAEwC,YAAalD,EAAIkD,eAAgB,aAAa,IAAI,GACloC,IIOpB,EACA,KACA,WACA,MAI8B,O,mCCnBhC,I,sBCyDA,MCzDiL,EDyDjL,CACA,wBAEA,YACA,oBACA,oBACA,+BAGA,gBAEA,OACA,SACA,aACA,YAEA,MACA,YACA,aAEA,OACA,YACA,aAEA,WACA,YACA,8BAGA,QACA,YACA,eAIA,UACA,OADA,WAEA,sBAEA,OADA,gCACA,CACA,EAEA,KAPA,WAQA,mBACA,eAEA,UACA,EAEA,WAdA,WAeA,2BACA,QACA,kBACA,kCACA,IACA,WACA,EAEA,WAvBA,WAwBA,wDACA,EAEA,WA3BA,WA4BA,4BACA,uDAEA,uDACA,EAUA,GA1CA,WA6CA,IACA,EADA,YACA,yBAGA,gCACA,+BADA,oBAMA,aACA,SAIA,yEACA,GAGA,SACA,SADA,WAEA,0BACA,EAEA,QALA,WAMA,qBACA,EAEA,uBATA,SASA,GAEA,uDACA,2BACA,I,oIE9JIxD,EAAU,CAAC,EAEfA,EAAQC,kBAAoB,IAC5BD,EAAQE,cAAgB,IAElBF,EAAQG,OAAS,SAAc,KAAM,QAE3CH,EAAQI,OAAS,IACjBJ,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKJ,KAAW,YAAiB,W,eCf9C,EAAU,CAAC,EAEf,EAAQC,kBAAoB,IAC5B,EAAQC,cAAgB,IAElB,EAAQC,OAAS,SAAc,KAAM,QAE3C,EAAQC,OAAS,IACjB,EAAQC,mBAAqB,IAEhB,IAAI,IAAS,GAKJ,KAAW,YAAiB,WCNlD,SAXgB,E,SAAA,GACd,GLVW,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACQ,YAAY,oBAAoBsB,MAAM,CAAC,0BAA2BlC,EAAImD,QAAQ1C,MAAM,CAAC,KAAO,YAAY,CAAGT,EAAImD,OAAmPnD,EAAIkB,KAA/Od,EAAG,WAAW,CAACQ,YAAY,0BAA0BH,MAAM,CAAC,KAAO,YAAYsB,GAAG,CAAC,MAAQ/B,EAAIoD,UAAU/B,YAAYrB,EAAIsB,GAAG,CAAC,CAACC,IAAI,OAAOC,GAAG,WAAW,MAAO,CAACpB,EAAG,YAAY,CAACK,MAAM,CAAC,KAAO,MAAM,EAAEuC,OAAM,IAAO,MAAK,EAAM,cAAuBhD,EAAIe,GAAG,KAAKX,EAAG,KAAK,CAACQ,YAAY,2BAA2BmB,GAAG,CAAC,MAAQ/B,EAAIqD,UAAU,CAACrD,EAAIe,GAAG,SAASf,EAAIyC,GAAGzC,EAAIsD,MAAM,UAAUtD,EAAIe,GAAG,KAAMf,EAAIuD,OAAc,QAAEnD,EAAG,MAAM,CAACQ,YAAY,8BAA8B,CAACZ,EAAIa,GAAG,YAAY,GAAGb,EAAIkB,KAAKlB,EAAIe,GAAG,KAAMf,EAAW,QAAEI,EAAG,gBAAgB,CAACQ,YAAY,8BAA8BZ,EAAIkB,KAAKlB,EAAIe,GAAG,KAAKX,EAAG,MAAM,CAACQ,YAAY,oCAAoC,CAACZ,EAAIa,GAAG,UAAU,IAAI,EAAE,GACr3B,IKYpB,EACA,KACA,WACA,MAI8B,O","sources":["webpack:///photos/src/components/Collection/CollectionContent.vue?vue&type=style&index=0&id=312d69fb&lang=scss&scoped=true&","webpack:///photos/src/components/FilesPicker.vue?vue&type=style&index=0&id=a0f8650e&lang=scss&scoped=true&","webpack:///photos/src/components/HeaderNavigation.vue?vue&type=style&index=0&lang=scss&","webpack:///photos/src/components/HeaderNavigation.vue?vue&type=style&index=1&id=b9975c76&lang=scss&scoped=true&","webpack:///photos/src/components/Collection/CollectionContent.vue?vue&type=template&id=312d69fb&scoped=true&","webpack:///photos/src/components/Collection/CollectionContent.vue","webpack:///photos/src/components/Collection/CollectionContent.vue?vue&type=script&lang=js&","webpack://photos/./src/components/Collection/CollectionContent.vue?99f2","webpack://photos/./src/components/Collection/CollectionContent.vue?d20d","webpack:///photos/src/components/FilesPicker.vue?vue&type=template&id=a0f8650e&scoped=true&","webpack:///photos/src/components/FilesPicker.vue","webpack:///photos/src/components/FilesPicker.vue?vue&type=script&lang=js&","webpack://photos/./src/components/FilesPicker.vue?2e64","webpack://photos/./src/components/FilesPicker.vue?2782","webpack:///photos/src/components/HeaderNavigation.vue?vue&type=template&id=b9975c76&scoped=true&","webpack:///photos/src/components/HeaderNavigation.vue","webpack:///photos/src/components/HeaderNavigation.vue?vue&type=script&lang=js&","webpack://photos/./src/components/HeaderNavigation.vue?29e2","webpack://photos/./src/components/HeaderNavigation.vue?1190","webpack://photos/./src/components/HeaderNavigation.vue?6702"],"sourcesContent":["// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".collection[data-v-312d69fb]{display:flex;flex-direction:column}.collection__media[data-v-312d69fb]{padding:0 64px}@media only screen and (max-width: 1200px){.collection__media[data-v-312d69fb]{padding:0 4px}}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/Collection/CollectionContent.vue\"],\"names\":[],\"mappings\":\"AA8IA,6BACC,YAAA,CACA,qBAAA,CAEA,oCACC,cAAA,CAEA,2CAHD,oCAIE,aAAA,CAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.collection {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\n\\t&__media {\\n\\t\\tpadding: 0 64px;\\n\\n\\t\\t@media only screen and (max-width: 1200px) {\\n\\t\\t\\tpadding: 0 4px;\\n\\t\\t}\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".file-picker[data-v-a0f8650e]{display:flex;flex-direction:column;padding:12px}.file-picker__content[data-v-a0f8650e]{display:flex;align-items:flex-start;flex-grow:1;height:500px}.file-picker__navigation[data-v-a0f8650e]{flex-basis:200px;overflow:scroll;margin-right:8px;padding-right:8px;height:100%}@media only screen and (max-width: 1200px){.file-picker__navigation[data-v-a0f8650e]{flex-basis:80px}}.file-picker__navigation--placeholder[data-v-a0f8650e]{background:var(--color-primary-light);border-radius:var(--border-radius-large)}.file-picker__navigation__month[data-v-a0f8650e]{font-weight:bold;font-size:16px;border-radius:var(--border-radius-pill);padding:8px 16px;margin:4px 0;cursor:pointer}@media only screen and (max-width: 1200px){.file-picker__navigation__month[data-v-a0f8650e]{text-align:center}}.file-picker__navigation__month[data-v-a0f8650e]:hover{background:var(--color-background-dark)}.file-picker__navigation__month.selected[data-v-a0f8650e]{background:var(--color-primary-element-lighter)}.file-picker__file-list[data-v-a0f8650e]{flex-grow:1;min-width:0;height:100%}.file-picker__file-list--placeholder[data-v-a0f8650e]{background:var(--color-primary-light);border-radius:var(--border-radius-large)}.file-picker__file-list .section-header[data-v-a0f8650e]{font-weight:bold;font-size:20px;padding:8px 0 4px 0}.file-picker__file-list[data-v-a0f8650e] .empty-content{margin-top:0;height:100%;display:flex;flex-direction:column;justify-content:center}.file-picker__actions[data-v-a0f8650e]{display:flex;justify-content:space-between;justify-items:center;padding-top:16px}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/FilesPicker.vue\"],\"names\":[],\"mappings\":\"AA+KA,8BACC,YAAA,CACA,qBAAA,CACA,YAAA,CAEA,uCACC,YAAA,CACA,sBAAA,CACA,WAAA,CACA,YAAA,CAGD,0CACC,gBAAA,CACA,eAAA,CACA,gBAAA,CACA,iBAAA,CACA,WAAA,CAEA,2CAPD,0CAQE,eAAA,CAAA,CAGD,uDACC,qCAAA,CACA,wCAAA,CAGD,iDACC,gBAAA,CACA,cAAA,CACA,uCAAA,CACA,gBAAA,CACA,YAAA,CACA,cAAA,CAEA,2CARD,iDASE,iBAAA,CAAA,CAGD,uDACC,uCAAA,CAGD,0DACC,+CAAA,CAKH,yCACC,WAAA,CACA,WAAA,CACA,WAAA,CAEA,sDACC,qCAAA,CACA,wCAAA,CAGD,yDACC,gBAAA,CACA,cAAA,CACA,mBAAA,CAGD,yDACC,YAAA,CACA,WAAA,CACA,YAAA,CACA,qBAAA,CACA,sBAAA,CAIF,uCACC,YAAA,CACA,6BAAA,CACA,oBAAA,CACA,gBAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.file-picker {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\tpadding: 12px;\\n\\n\\t&__content {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: flex-start;\\n\\t\\tflex-grow: 1;\\n\\t\\theight: 500px;\\n\\t}\\n\\n\\t&__navigation {\\n\\t\\tflex-basis: 200px;\\n\\t\\toverflow: scroll;\\n\\t\\tmargin-right: 8px;\\n\\t\\tpadding-right: 8px;\\n\\t\\theight: 100%;\\n\\n\\t\\t@media only screen and (max-width: 1200px) {\\n\\t\\t\\tflex-basis: 80px;\\n\\t\\t}\\n\\n\\t\\t&--placeholder {\\n\\t\\t\\tbackground: var(--color-primary-light);\\n\\t\\t\\tborder-radius: var(--border-radius-large);\\n\\t\\t}\\n\\n\\t\\t&__month {\\n\\t\\t\\tfont-weight: bold;\\n\\t\\t\\tfont-size: 16px;\\n\\t\\t\\tborder-radius: var(--border-radius-pill);\\n\\t\\t\\tpadding: 8px 16px;\\n\\t\\t\\tmargin: 4px 0;\\n\\t\\t\\tcursor: pointer;\\n\\n\\t\\t\\t@media only screen and (max-width: 1200px) {\\n\\t\\t\\t\\ttext-align: center;\\n\\t\\t\\t}\\n\\n\\t\\t\\t&:hover {\\n\\t\\t\\t\\tbackground: var(--color-background-dark);\\n\\t\\t\\t}\\n\\n\\t\\t\\t&.selected {\\n\\t\\t\\t\\tbackground: var(--color-primary-element-lighter);\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t&__file-list {\\n\\t\\tflex-grow: 1;\\n\\t\\tmin-width: 0;\\n\\t\\theight: 100%;\\n\\n\\t\\t&--placeholder {\\n\\t\\t\\tbackground: var(--color-primary-light);\\n\\t\\t\\tborder-radius: var(--border-radius-large);\\n\\t\\t}\\n\\n\\t\\t.section-header {\\n\\t\\t\\tfont-weight: bold;\\n\\t\\t\\tfont-size: 20px;\\n\\t\\t\\tpadding: 8px 0 4px 0;\\n\\t\\t}\\n\\n\\t\\t::v-deep .empty-content {\\n\\t\\t\\tmargin-top: 0;\\n\\t\\t\\theight: 100%;\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tflex-direction: column;\\n\\t\\t\\tjustify-content: center;\\n\\t\\t}\\n\\t}\\n\\n\\t&__actions {\\n\\t\\tdisplay: flex;\\n\\t\\tjustify-content: space-between;\\n\\t\\tjustify-items: center;\\n\\t\\tpadding-top: 16px;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \":root{--photos-navigation-height: 64px;--photos-navigation-spacing: calc((var(--photos-navigation-height) - 44px) / 2)}button.app-navigation-toggle{top:0 !important;right:calc(var(--photos-navigation-height)*-1) !important;margin:var(--photos-navigation-spacing) !important}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/HeaderNavigation.vue\"],\"names\":[],\"mappings\":\"AAgLA,MACC,gCAAA,CAEA,+EAAA,CAID,6BAEC,gBAAA,CACA,yDAAA,CACA,kDAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n:root {\\n\\t--photos-navigation-height: 64px;\\n\\t// header height - button size\\n\\t--photos-navigation-spacing: calc((var(--photos-navigation-height) - 44px) / 2);\\n}\\n\\n// Properly position the navigation toggle button\\nbutton.app-navigation-toggle {\\n\\t// App-navigation have a 4px margin top\\n\\ttop: 0 !important;\\n\\tright: calc(var(--photos-navigation-height) * -1) !important;\\n\\tmargin: var(--photos-navigation-spacing) !important;\\n}\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".photos-navigation[data-v-b9975c76]{position:-webkit-sticky;position:sticky;z-index:20;top:0;display:flex;align-items:center;width:100%;height:var(--photos-navigation-height);min-height:var(--photos-navigation-height);padding:0 var(--photos-navigation-height);background:var(--color-main-background)}.photos-navigation__back[data-v-b9975c76]{position:absolute;left:0;margin:var(--photos-navigation-spacing) !important}.photos-navigation__title[data-v-b9975c76]{overflow:hidden;margin:0;margin-right:calc(2*var(--photos-navigation-spacing));cursor:pointer;white-space:nowrap;text-overflow:ellipsis}.photos-navigation__loader[data-v-b9975c76]{margin-left:32px}.photos-navigation__content-right[data-v-b9975c76]{display:flex;align-items:center;justify-content:center;margin-left:auto}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/HeaderNavigation.vue\"],\"names\":[],\"mappings\":\"AAiMA,oCACC,uBAAA,CAAA,eAAA,CACA,UAAA,CACA,KAAA,CACA,YAAA,CACA,kBAAA,CACA,UAAA,CACA,sCAAA,CACA,0CAAA,CACA,yCAAA,CACA,uCAAA,CAEA,0CAEC,iBAAA,CACA,MAAA,CACA,kDAAA,CAGD,2CACC,eAAA,CACA,QAAA,CACA,qDAAA,CACA,cAAA,CACA,kBAAA,CACA,sBAAA,CAGD,4CACC,gBAAA,CAGD,mDACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,gBAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.photos-navigation {\\n\\tposition: sticky;\\n\\tz-index: 20;\\n\\ttop: 0;\\n\\tdisplay: flex;\\n\\talign-items: center;\\n\\twidth: 100%;\\n\\theight: var(--photos-navigation-height);\\n\\tmin-height: var(--photos-navigation-height);\\n\\tpadding: 0 var(--photos-navigation-height);\\n\\tbackground: var(--color-main-background);\\n\\n\\t&__back {\\n\\t\\t// Above the navigation menu\\n\\t\\tposition: absolute;\\n\\t\\tleft: 0;\\n\\t\\tmargin: var(--photos-navigation-spacing) !important;\\n\\t}\\n\\n\\t&__title {\\n\\t\\toverflow: hidden;\\n\\t\\tmargin: 0;\\n\\t\\tmargin-right: calc(2 * var(--photos-navigation-spacing));\\n\\t\\tcursor: pointer;\\n\\t\\twhite-space: nowrap;\\n\\t\\ttext-overflow: ellipsis;\\n\\t}\\n\\n\\t&__loader {\\n\\t\\tmargin-left: 32px;\\n\\t}\\n\\n\\t&__content-right {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\tjustify-content: center;\\n\\t\\tmargin-left: auto;\\n\\t}\\n}\\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.collection === undefined && !_vm.loading)?_c('NcEmptyContent',{staticClass:\"empty-content-with-illustration\",attrs:{\"title\":_vm.t('photos', 'This collection does not exist')}},[_c('FolderMultipleImage')],1):(_vm.error)?_c('NcEmptyContent',{attrs:{\"title\":_vm.t('photos', 'An error occurred')}},[_c('AlertCircle',{attrs:{\"slot\":\"icon\"},slot:\"icon\"})],1):_c('div',{staticClass:\"collection\"},[_vm._t(\"header\",null,{\"selectedFileIds\":_vm.selectedFileIds}),_vm._v(\" \"),(_vm.collectionFileIds.length === 0 && !_vm.loading)?_vm._t(\"empty-content\"):_vm._e(),_vm._v(\" \"),(_vm.collection !== undefined)?_c('FilesListViewer',{staticClass:\"collection__media\",attrs:{\"container-element\":_vm.appContent,\"file-ids\":_vm.collectionFileIds,\"base-height\":_vm.isMobile ? 120 : 200,\"loading\":_vm.loading},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar file = ref.file;\nvar visibility = ref.visibility;\nreturn _c('File',{attrs:{\"file\":_vm.files[file.id],\"allow-selection\":true,\"selected\":_vm.selection[file.id] === true,\"visibility\":visibility,\"semaphore\":_vm.semaphore},on:{\"click\":_vm.openViewer,\"select-toggled\":_vm.onFileSelectToggle}})}}],null,false,3592900521)}):_vm._e()],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CollectionContent.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!./CollectionContent.vue?vue&type=script&lang=js&\"","\n import API from \"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./CollectionContent.vue?vue&type=style&index=0&id=312d69fb&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./CollectionContent.vue?vue&type=style&index=0&id=312d69fb&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./CollectionContent.vue?vue&type=template&id=312d69fb&scoped=true&\"\nimport script from \"./CollectionContent.vue?vue&type=script&lang=js&\"\nexport * from \"./CollectionContent.vue?vue&type=script&lang=js&\"\nimport style0 from \"./CollectionContent.vue?vue&type=style&index=0&id=312d69fb&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 \"312d69fb\",\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:\"file-picker\"},[_c('div',{staticClass:\"file-picker__content\"},[_c('div',{staticClass:\"file-picker__navigation\",class:{'file-picker__navigation--placeholder': _vm.monthsList.length === 0}},_vm._l((_vm.monthsList),function(month){return _c('div',{key:month,staticClass:\"file-picker__navigation__month\",class:{selected: _vm.targetMonth === month},on:{\"click\":function($event){_vm.targetMonth = month}}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm._f(\"dateMonthAndYear\")(month))+\"\\n\\t\\t\\t\")])}),0),_vm._v(\" \"),_c('FilesListViewer',{staticClass:\"file-picker__file-list\",class:{'file-picker__file-list--placeholder': _vm.monthsList.length === 0},attrs:{\"file-ids-by-section\":_vm.fileIdsByMonth,\"sections\":_vm.monthsList,\"loading\":_vm.loadingFiles,\"base-height\":100,\"section-header-height\":50,\"empty-message\":_vm.t('photos', 'This album doesn\\'t have any photos or videos yet!'),\"scroll-to-section\":_vm.targetMonth},on:{\"need-content\":_vm.getFiles},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar file = ref.file;\nvar height = ref.height;\nvar visibility = ref.visibility;\nreturn [(file.sectionHeader)?_c('h3',{staticClass:\"section-header\",style:({ height: (height + \"px\")}),attrs:{\"id\":(\"file-picker-section-header-\" + (file.id))}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm._f(\"dateMonthAndYear\")(file.id))+\"\\n\\t\\t\\t\\t\")]):_c('File',{attrs:{\"file\":_vm.files[file.id],\"allow-selection\":true,\"selected\":_vm.selection[file.id] === true,\"visibility\":visibility,\"semaphore\":_vm.semaphore},on:{\"select-toggled\":_vm.onFileSelectToggle}})]}}])})],1),_vm._v(\" \"),_c('div',{staticClass:\"file-picker__actions\"},[_c('NcButton',{attrs:{\"type\":\"tertiary\",\"disabled\":_vm.loading},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Upload')]},proxy:true}])},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('photos', 'Upload from computer'))+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('NcButton',{attrs:{\"type\":\"primary\",\"disabled\":_vm.loading || _vm.selectedFileIds.length === 0},on:{\"click\":_vm.emitPickedEvent},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(!_vm.loading)?_c('ImagePlus'):_vm._e(),_vm._v(\" \"),(_vm.loading)?_c('NcLoadingIcon'):_vm._e()]},proxy:true}])},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('photos', 'Add to {destination}', { destination: _vm.destination }))+\"\\n\\t\\t\")])],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesPicker.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!./FilesPicker.vue?vue&type=script&lang=js&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./FilesPicker.vue?vue&type=style&index=0&id=a0f8650e&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./FilesPicker.vue?vue&type=style&index=0&id=a0f8650e&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesPicker.vue?vue&type=template&id=a0f8650e&scoped=true&\"\nimport script from \"./FilesPicker.vue?vue&type=script&lang=js&\"\nexport * from \"./FilesPicker.vue?vue&type=script&lang=js&\"\nimport style0 from \"./FilesPicker.vue?vue&type=style&index=0&id=a0f8650e&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 \"a0f8650e\",\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:\"photos-navigation\",class:{'photos-navigation--root': _vm.isRoot},attrs:{\"role\":\"toolbar\"}},[(!_vm.isRoot)?_c('NcButton',{staticClass:\"photos-navigation__back\",attrs:{\"type\":\"tertiary\"},on:{\"click\":_vm.folderUp},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('ArrowLeft',{attrs:{\"size\":20}})]},proxy:true}],null,false,1821202730)}):_vm._e(),_vm._v(\" \"),_c('h2',{staticClass:\"photos-navigation__title\",on:{\"click\":_vm.refresh}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.name)+\"\\n\\t\")]),_vm._v(\" \"),(_vm.$slots.default)?_c('div',{staticClass:\"photos-navigation__content\"},[_vm._t(\"default\")],2):_vm._e(),_vm._v(\" \"),(_vm.loading)?_c('NcLoadingIcon',{staticClass:\"photos-navigation__loader\"}):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"photos-navigation__content-right\"},[_vm._t(\"right\")],2)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HeaderNavigation.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!./HeaderNavigation.vue?vue&type=script&lang=js&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./HeaderNavigation.vue?vue&type=style&index=0&lang=scss&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./HeaderNavigation.vue?vue&type=style&index=0&lang=scss&\";\n export default content && content.locals ? content.locals : undefined;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./HeaderNavigation.vue?vue&type=style&index=1&id=b9975c76&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./HeaderNavigation.vue?vue&type=style&index=1&id=b9975c76&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./HeaderNavigation.vue?vue&type=template&id=b9975c76&scoped=true&\"\nimport script from \"./HeaderNavigation.vue?vue&type=script&lang=js&\"\nexport * from \"./HeaderNavigation.vue?vue&type=script&lang=js&\"\nimport style0 from \"./HeaderNavigation.vue?vue&type=style&index=0&lang=scss&\"\nimport style1 from \"./HeaderNavigation.vue?vue&type=style&index=1&id=b9975c76&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 \"b9975c76\",\n null\n \n)\n\nexport default component.exports"],"names":["___CSS_LOADER_EXPORT___","push","module","id","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","_vm","this","_h","$createElement","_c","_self","undefined","collection","loading","attrs","t","slot","staticClass","_t","selectedFileIds","_v","collectionFileIds","length","_e","appContent","isMobile","scopedSlots","_u","key","fn","ref","file","visibility","files","selection","semaphore","on","openViewer","onFileSelectToggle","class","monthsList","_l","month","selected","targetMonth","$event","_s","_f","fileIdsByMonth","loadingFiles","getFiles","height","style","proxy","emitPickedEvent","destination","isRoot","folderUp","refresh","name","$slots"],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-src_components_Collection_CollectionCover_vue-src_components_Collection_CollectionsList_vue.js b/js/photos-src_components_Collection_CollectionCover_vue-src_components_Collection_CollectionsList_vue.js deleted file mode 100644 index 546da11dc..000000000 --- a/js/photos-src_components_Collection_CollectionCover_vue-src_components_Collection_CollectionsList_vue.js +++ /dev/null @@ -1,1004 +0,0 @@ -"use strict"; -(self["webpackChunkphotos"] = self["webpackChunkphotos"] || []).push([["src_components_Collection_CollectionCover_vue-src_components_Collection_CollectionsList_vue"],{ - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Collection/CollectionCover.vue?vue&type=script&lang=js&": -/*!************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Collection/CollectionCover.vue?vue&type=script&lang=js& ***! - \************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! vuex */ "./node_modules/vuex/dist/vuex.esm.js"); -/* harmony import */ var vue_material_design_icons_ImageMultiple__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue-material-design-icons/ImageMultiple */ "./node_modules/vue-material-design-icons/ImageMultiple.vue"); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - // import ShareVariant from 'vue-material-design-icons/ShareVariant' -// import AccountMultiple from 'vue-material-design-icons/AccountMultiple' - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'CollectionCover', - components: { - ImageMultiple: vue_material_design_icons_ImageMultiple__WEBPACK_IMPORTED_MODULE_0__["default"] - }, - props: { - coverUrl: { - type: String, - required: true - }, - altImg: { - type: String, - required: true - }, - link: { - type: String, - required: true - } - }, - computed: { ...(0,vuex__WEBPACK_IMPORTED_MODULE_1__.mapGetters)(['files', 'albums']) - } -}); - -/***/ }), - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Collection/CollectionsList.vue?vue&type=script&lang=js&": -/*!************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Collection/CollectionsList.vue?vue&type=script&lang=js& ***! - \************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var vue_material_design_icons_AlertCircle__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue-material-design-icons/AlertCircle */ "./node_modules/vue-material-design-icons/AlertCircle.vue"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/vue */ "./node_modules/@nextcloud/vue/dist/ncvuecomponents.js"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue__WEBPACK_IMPORTED_MODULE_1__); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'CollectionsList', - components: { - AlertCircle: vue_material_design_icons_AlertCircle__WEBPACK_IMPORTED_MODULE_0__["default"], - NcEmptyContent: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_1__.NcEmptyContent - }, - props: { - collections: { - type: Object, - required: true - }, - loading: { - type: Boolean, - default: false - }, - error: { - type: Error, - default: null - } - }, - computed: { - /** - * @return {boolean} Whether the list of collections is empty or not. - */ - noCollection() { - return Object.keys(this.collections).length === 0; - } - - } -}); - -/***/ }), - -/***/ "./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!./src/components/Collection/CollectionCover.vue?vue&type=style&index=0&id=65d1e458&lang=scss&scoped=true&": -/*!************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/components/Collection/CollectionCover.vue?vue&type=style&index=0&id=65d1e458&lang=scss&scoped=true& ***! - \************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".collection-cover[data-v-65d1e458] {\n display: flex;\n flex-direction: column;\n padding: 16px;\n border-radius: var(--border-radius-large);\n}\n.collection-cover[data-v-65d1e458]:hover, .collection-cover[data-v-65d1e458]:focus {\n background: var(--color-background-dark);\n}\n.collection-cover__image[data-v-65d1e458] {\n width: 350px;\n height: 350px;\n object-fit: none;\n border-radius: var(--border-radius-large);\n}\n@media only screen and (max-width: 1200px) {\n.collection-cover__image[data-v-65d1e458] {\n width: 250px;\n height: 250px;\n}\n}\n.collection-cover__image--placeholder[data-v-65d1e458] {\n background: var(--color-primary-light);\n}\n.collection-cover__image--placeholder[data-v-65d1e458] .material-design-icon {\n width: 100%;\n height: 100%;\n}\n.collection-cover__image--placeholder[data-v-65d1e458] .material-design-icon .material-design-icon__svg {\n fill: var(--color-primary);\n}\n.collection-cover__details[data-v-65d1e458] {\n display: flex;\n flex-direction: column;\n margin-top: 16px;\n width: 350px;\n}\n@media only screen and (max-width: 1200px) {\n.collection-cover__details[data-v-65d1e458] {\n width: 250px;\n}\n}\n.collection-cover__details__title[data-v-65d1e458] {\n display: flex;\n}\n.collection-cover__details__subtitle[data-v-65d1e458] {\n display: flex;\n color: var(--color-text-lighter);\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./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!./src/components/Collection/CollectionsList.vue?vue&type=style&index=0&id=672c9772&lang=scss&scoped=true&": -/*!************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/components/Collection/CollectionsList.vue?vue&type=style&index=0&id=672c9772&lang=scss&scoped=true& ***! - \************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".collections[data-v-672c9772] {\n display: flex;\n flex-direction: column;\n height: 100%;\n}\n.collections__list[data-v-672c9772] {\n padding: 32px 48px;\n flex-grow: 1;\n display: flex;\n flex-wrap: wrap;\n gap: 16px;\n align-items: flex-start;\n height: calc(100% - 60px);\n overflow-x: scroll;\n}\n@media only screen and (max-width: 1200px) {\n.collections__list[data-v-672c9772] {\n padding: 32px 12px;\n justify-content: center;\n}\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/Collection/CollectionCover.vue?vue&type=style&index=0&id=65d1e458&lang=scss&scoped=true&": -/*!****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/components/Collection/CollectionCover.vue?vue&type=style&index=0&id=65d1e458&lang=scss&scoped=true& ***! - \****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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_CollectionCover_vue_vue_type_style_index_0_id_65d1e458_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../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!./CollectionCover.vue?vue&type=style&index=0&id=65d1e458&lang=scss&scoped=true& */ "./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!./src/components/Collection/CollectionCover.vue?vue&type=style&index=0&id=65d1e458&lang=scss&scoped=true&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_CollectionCover_vue_vue_type_style_index_0_id_65d1e458_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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_CollectionCover_vue_vue_type_style_index_0_id_65d1e458_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_CollectionCover_vue_vue_type_style_index_0_id_65d1e458_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_CollectionCover_vue_vue_type_style_index_0_id_65d1e458_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/Collection/CollectionsList.vue?vue&type=style&index=0&id=672c9772&lang=scss&scoped=true&": -/*!****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/components/Collection/CollectionsList.vue?vue&type=style&index=0&id=672c9772&lang=scss&scoped=true& ***! - \****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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_CollectionsList_vue_vue_type_style_index_0_id_672c9772_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../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!./CollectionsList.vue?vue&type=style&index=0&id=672c9772&lang=scss&scoped=true& */ "./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!./src/components/Collection/CollectionsList.vue?vue&type=style&index=0&id=672c9772&lang=scss&scoped=true&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_CollectionsList_vue_vue_type_style_index_0_id_672c9772_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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_CollectionsList_vue_vue_type_style_index_0_id_672c9772_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_CollectionsList_vue_vue_type_style_index_0_id_672c9772_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_CollectionsList_vue_vue_type_style_index_0_id_672c9772_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/AlertCircle.vue": -/*!****************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/AlertCircle.vue ***! - \****************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _AlertCircle_vue_vue_type_template_id_7b52a7d0___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./AlertCircle.vue?vue&type=template&id=7b52a7d0& */ "./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=template&id=7b52a7d0&"); -/* harmony import */ var _AlertCircle_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./AlertCircle.vue?vue&type=script&lang=js& */ "./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=script&lang=js&"); -/* harmony import */ var _vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - - - -/* normalize component */ -; -var component = (0,_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])( - _AlertCircle_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _AlertCircle_vue_vue_type_template_id_7b52a7d0___WEBPACK_IMPORTED_MODULE_0__.render, - _AlertCircle_vue_vue_type_template_id_7b52a7d0___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - null, - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "node_modules/vue-material-design-icons/AlertCircle.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=script&lang=js&": -/*!****************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=script&lang=js& ***! - \****************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: "AlertCircleIcon", - emits: ['click'], - props: { - title: { - type: String, - }, - fillColor: { - type: String, - default: "currentColor" - }, - size: { - type: Number, - default: 24 - } - } -}); - - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/ImageMultiple.vue": -/*!******************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/ImageMultiple.vue ***! - \******************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _ImageMultiple_vue_vue_type_template_id_1fff908f___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./ImageMultiple.vue?vue&type=template&id=1fff908f& */ "./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=template&id=1fff908f&"); -/* harmony import */ var _ImageMultiple_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./ImageMultiple.vue?vue&type=script&lang=js& */ "./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=script&lang=js&"); -/* harmony import */ var _vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - - - -/* normalize component */ -; -var component = (0,_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])( - _ImageMultiple_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _ImageMultiple_vue_vue_type_template_id_1fff908f___WEBPACK_IMPORTED_MODULE_0__.render, - _ImageMultiple_vue_vue_type_template_id_1fff908f___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - null, - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "node_modules/vue-material-design-icons/ImageMultiple.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=script&lang=js&": -/*!******************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=script&lang=js& ***! - \******************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: "ImageMultipleIcon", - emits: ['click'], - props: { - title: { - type: String, - }, - fillColor: { - type: String, - default: "currentColor" - }, - size: { - type: Number, - default: 24 - } - } -}); - - -/***/ }), - -/***/ "./src/components/Collection/CollectionCover.vue": -/*!*******************************************************!*\ - !*** ./src/components/Collection/CollectionCover.vue ***! - \*******************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _CollectionCover_vue_vue_type_template_id_65d1e458_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./CollectionCover.vue?vue&type=template&id=65d1e458&scoped=true& */ "./src/components/Collection/CollectionCover.vue?vue&type=template&id=65d1e458&scoped=true&"); -/* harmony import */ var _CollectionCover_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./CollectionCover.vue?vue&type=script&lang=js& */ "./src/components/Collection/CollectionCover.vue?vue&type=script&lang=js&"); -/* harmony import */ var _CollectionCover_vue_vue_type_style_index_0_id_65d1e458_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./CollectionCover.vue?vue&type=style&index=0&id=65d1e458&lang=scss&scoped=true& */ "./src/components/Collection/CollectionCover.vue?vue&type=style&index=0&id=65d1e458&lang=scss&scoped=true&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( - _CollectionCover_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _CollectionCover_vue_vue_type_template_id_65d1e458_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render, - _CollectionCover_vue_vue_type_template_id_65d1e458_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - "65d1e458", - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/Collection/CollectionCover.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/Collection/CollectionsList.vue": -/*!*******************************************************!*\ - !*** ./src/components/Collection/CollectionsList.vue ***! - \*******************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _CollectionsList_vue_vue_type_template_id_672c9772_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./CollectionsList.vue?vue&type=template&id=672c9772&scoped=true& */ "./src/components/Collection/CollectionsList.vue?vue&type=template&id=672c9772&scoped=true&"); -/* harmony import */ var _CollectionsList_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./CollectionsList.vue?vue&type=script&lang=js& */ "./src/components/Collection/CollectionsList.vue?vue&type=script&lang=js&"); -/* harmony import */ var _CollectionsList_vue_vue_type_style_index_0_id_672c9772_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./CollectionsList.vue?vue&type=style&index=0&id=672c9772&lang=scss&scoped=true& */ "./src/components/Collection/CollectionsList.vue?vue&type=style&index=0&id=672c9772&lang=scss&scoped=true&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( - _CollectionsList_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _CollectionsList_vue_vue_type_template_id_672c9772_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render, - _CollectionsList_vue_vue_type_template_id_672c9772_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - "672c9772", - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/Collection/CollectionsList.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/Collection/CollectionCover.vue?vue&type=script&lang=js&": -/*!********************************************************************************!*\ - !*** ./src/components/Collection/CollectionCover.vue?vue&type=script&lang=js& ***! - \********************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_CollectionCover_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CollectionCover.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Collection/CollectionCover.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_CollectionCover_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/components/Collection/CollectionsList.vue?vue&type=script&lang=js&": -/*!********************************************************************************!*\ - !*** ./src/components/Collection/CollectionsList.vue?vue&type=script&lang=js& ***! - \********************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_CollectionsList_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CollectionsList.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Collection/CollectionsList.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_CollectionsList_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/components/Collection/CollectionCover.vue?vue&type=style&index=0&id=65d1e458&lang=scss&scoped=true&": -/*!*****************************************************************************************************************!*\ - !*** ./src/components/Collection/CollectionCover.vue?vue&type=style&index=0&id=65d1e458&lang=scss&scoped=true& ***! - \*****************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_CollectionCover_vue_vue_type_style_index_0_id_65d1e458_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/style-loader/dist/cjs.js!../../../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!./CollectionCover.vue?vue&type=style&index=0&id=65d1e458&lang=scss&scoped=true& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/Collection/CollectionCover.vue?vue&type=style&index=0&id=65d1e458&lang=scss&scoped=true&"); - - -/***/ }), - -/***/ "./src/components/Collection/CollectionsList.vue?vue&type=style&index=0&id=672c9772&lang=scss&scoped=true&": -/*!*****************************************************************************************************************!*\ - !*** ./src/components/Collection/CollectionsList.vue?vue&type=style&index=0&id=672c9772&lang=scss&scoped=true& ***! - \*****************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_CollectionsList_vue_vue_type_style_index_0_id_672c9772_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/style-loader/dist/cjs.js!../../../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!./CollectionsList.vue?vue&type=style&index=0&id=672c9772&lang=scss&scoped=true& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/Collection/CollectionsList.vue?vue&type=style&index=0&id=672c9772&lang=scss&scoped=true&"); - - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=script&lang=js&": -/*!*****************************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=script&lang=js& ***! - \*****************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _vue_loader_lib_index_js_vue_loader_options_AlertCircle_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/index.js??vue-loader-options!./AlertCircle.vue?vue&type=script&lang=js& */ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_vue_loader_lib_index_js_vue_loader_options_AlertCircle_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=template&id=7b52a7d0&": -/*!***********************************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=template&id=7b52a7d0& ***! - \***********************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_AlertCircle_vue_vue_type_template_id_7b52a7d0___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_AlertCircle_vue_vue_type_template_id_7b52a7d0___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_AlertCircle_vue_vue_type_template_id_7b52a7d0___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../vue-loader/lib/index.js??vue-loader-options!./AlertCircle.vue?vue&type=template&id=7b52a7d0& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=template&id=7b52a7d0&"); - - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=script&lang=js&": -/*!*******************************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=script&lang=js& ***! - \*******************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _vue_loader_lib_index_js_vue_loader_options_ImageMultiple_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/index.js??vue-loader-options!./ImageMultiple.vue?vue&type=script&lang=js& */ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_vue_loader_lib_index_js_vue_loader_options_ImageMultiple_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=template&id=1fff908f&": -/*!*************************************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=template&id=1fff908f& ***! - \*************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_ImageMultiple_vue_vue_type_template_id_1fff908f___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_ImageMultiple_vue_vue_type_template_id_1fff908f___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_ImageMultiple_vue_vue_type_template_id_1fff908f___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../vue-loader/lib/index.js??vue-loader-options!./ImageMultiple.vue?vue&type=template&id=1fff908f& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=template&id=1fff908f&"); - - -/***/ }), - -/***/ "./src/components/Collection/CollectionCover.vue?vue&type=template&id=65d1e458&scoped=true&": -/*!**************************************************************************************************!*\ - !*** ./src/components/Collection/CollectionCover.vue?vue&type=template&id=65d1e458&scoped=true& ***! - \**************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_CollectionCover_vue_vue_type_template_id_65d1e458_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_CollectionCover_vue_vue_type_template_id_65d1e458_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_CollectionCover_vue_vue_type_template_id_65d1e458_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CollectionCover.vue?vue&type=template&id=65d1e458&scoped=true& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Collection/CollectionCover.vue?vue&type=template&id=65d1e458&scoped=true&"); - - -/***/ }), - -/***/ "./src/components/Collection/CollectionsList.vue?vue&type=template&id=672c9772&scoped=true&": -/*!**************************************************************************************************!*\ - !*** ./src/components/Collection/CollectionsList.vue?vue&type=template&id=672c9772&scoped=true& ***! - \**************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_CollectionsList_vue_vue_type_template_id_672c9772_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_CollectionsList_vue_vue_type_template_id_672c9772_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_CollectionsList_vue_vue_type_template_id_672c9772_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CollectionsList.vue?vue&type=template&id=672c9772&scoped=true& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Collection/CollectionsList.vue?vue&type=template&id=672c9772&scoped=true&"); - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=template&id=7b52a7d0&": -/*!**************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=template&id=7b52a7d0& ***! - \**************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c( - "span", - _vm._b( - { - staticClass: "material-design-icon alert-circle-icon", - attrs: { - "aria-hidden": !_vm.title, - "aria-label": _vm.title, - role: "img", - }, - on: { - click: function ($event) { - return _vm.$emit("click", $event) - }, - }, - }, - "span", - _vm.$attrs, - false - ), - [ - _c( - "svg", - { - staticClass: "material-design-icon__svg", - attrs: { - fill: _vm.fillColor, - width: _vm.size, - height: _vm.size, - viewBox: "0 0 24 24", - }, - }, - [ - _c( - "path", - { - attrs: { - d: "M13,13H11V7H13M13,17H11V15H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z", - }, - }, - [_vm.title ? _c("title", [_vm._v(_vm._s(_vm.title))]) : _vm._e()] - ), - ] - ), - ] - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=template&id=1fff908f&": -/*!****************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=template&id=1fff908f& ***! - \****************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c( - "span", - _vm._b( - { - staticClass: "material-design-icon image-multiple-icon", - attrs: { - "aria-hidden": !_vm.title, - "aria-label": _vm.title, - role: "img", - }, - on: { - click: function ($event) { - return _vm.$emit("click", $event) - }, - }, - }, - "span", - _vm.$attrs, - false - ), - [ - _c( - "svg", - { - staticClass: "material-design-icon__svg", - attrs: { - fill: _vm.fillColor, - width: _vm.size, - height: _vm.size, - viewBox: "0 0 24 24", - }, - }, - [ - _c( - "path", - { - attrs: { - d: "M22,16V4A2,2 0 0,0 20,2H8A2,2 0 0,0 6,4V16A2,2 0 0,0 8,18H20A2,2 0 0,0 22,16M11,12L13.03,14.71L16,11L20,16H8M2,6V20A2,2 0 0,0 4,22H18V20H4V6", - }, - }, - [_vm.title ? _c("title", [_vm._v(_vm._s(_vm.title))]) : _vm._e()] - ), - ] - ), - ] - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Collection/CollectionCover.vue?vue&type=template&id=65d1e458&scoped=true&": -/*!*****************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Collection/CollectionCover.vue?vue&type=template&id=65d1e458&scoped=true& ***! - \*****************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c( - "li", - [ - _c( - "router-link", - { staticClass: "collection-cover", attrs: { to: _vm.link } }, - [ - _vm.coverUrl !== "" - ? _c("img", { - staticClass: "collection-cover__image", - attrs: { src: _vm.coverUrl, alt: _vm.altImg }, - }) - : _c( - "div", - { - staticClass: - "collection-cover__image collection-cover__image--placeholder", - }, - [_c("ImageMultiple", { attrs: { size: 128 } })], - 1 - ), - _vm._v(" "), - _c("div", { staticClass: "collection-cover__details" }, [ - _c( - "div", - { staticClass: "collection-cover__details__title" }, - [_vm._t("default")], - 2 - ), - _vm._v(" "), - _c( - "div", - { staticClass: "collection-cover__details__subtitle" }, - [_vm._t("subtitle")], - 2 - ), - ]), - ] - ), - ], - 1 - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Collection/CollectionsList.vue?vue&type=template&id=672c9772&scoped=true&": -/*!*****************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Collection/CollectionsList.vue?vue&type=template&id=672c9772&scoped=true& ***! - \*****************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _vm.error - ? _c( - "NcEmptyContent", - { attrs: { title: _vm.t("photos", "An error occurred") } }, - [_c("AlertCircle", { attrs: { slot: "icon" }, slot: "icon" })], - 1 - ) - : _c( - "div", - { staticClass: "collections" }, - [ - _vm._t("header"), - _vm._v(" "), - _vm.noCollection && !_vm.loading - ? _vm._t("empty-collections-list") - : !_vm.noCollection - ? _c( - "ul", - { staticClass: "collections__list" }, - [ - _vm._l(_vm.collections, function (collection) { - return _vm._t("default", null, { collection: collection }) - }), - ], - 2 - ) - : _vm._e(), - ], - 2 - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }) - -}]); -//# sourceMappingURL=photos-src_components_Collection_CollectionCover_vue-src_components_Collection_CollectionsList_vue.js.map?v=1467ad73d6fcf60383dc \ No newline at end of file diff --git a/js/photos-src_components_Collection_CollectionCover_vue-src_components_Collection_CollectionsList_vue.js.map b/js/photos-src_components_Collection_CollectionCover_vue-src_components_Collection_CollectionsList_vue.js.map deleted file mode 100644 index daf3659a6..000000000 --- a/js/photos-src_components_Collection_CollectionCover_vue-src_components_Collection_CollectionsList_vue.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-src_components_Collection_CollectionCover_vue-src_components_Collection_CollectionsList_vue.js?v=1467ad73d6fcf60383dc","mappings":";;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;ACtEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;AC1EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;ACtCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;ACpCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;ACtCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACpCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;;;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;ACvCA;;;;;;;;;;;;;;;ACAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AGAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AGAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;ACrDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;ACrDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;ACjDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sources":["webpack:///photos/src/components/Collection/CollectionCover.vue?vue&type=script&lang=js&","webpack:///photos/src/components/Collection/CollectionsList.vue?vue&type=script&lang=js&","webpack:///photos/src/components/Collection/CollectionCover.vue?vue&type=style&index=0&id=65d1e458&lang=scss&scoped=true&","webpack:///photos/src/components/Collection/CollectionsList.vue?vue&type=style&index=0&id=672c9772&lang=scss&scoped=true&","webpack://photos/./src/components/Collection/CollectionCover.vue?e8a1","webpack://photos/./src/components/Collection/CollectionsList.vue?5ccc","webpack:///photos/node_modules/vue-material-design-icons/AlertCircle.vue","webpack:///photos/node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=script&lang=js&","webpack:///photos/node_modules/vue-material-design-icons/ImageMultiple.vue","webpack:///photos/node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=script&lang=js&","webpack:///photos/src/components/Collection/CollectionCover.vue","webpack:///photos/src/components/Collection/CollectionsList.vue","webpack://photos/./src/components/Collection/CollectionCover.vue?d6cb","webpack://photos/./src/components/Collection/CollectionsList.vue?e961","webpack://photos/./src/components/Collection/CollectionCover.vue?da94","webpack://photos/./src/components/Collection/CollectionsList.vue?7e10","webpack://photos/./node_modules/vue-material-design-icons/AlertCircle.vue?5363","webpack://photos/./node_modules/vue-material-design-icons/ImageMultiple.vue?1443","webpack:///photos/src/components/Collection/CollectionCover.vue?vue&type=template&id=65d1e458&scoped=true&","webpack:///photos/src/components/Collection/CollectionsList.vue?vue&type=template&id=672c9772&scoped=true&","webpack://photos/./node_modules/vue-material-design-icons/AlertCircle.vue?d55e","webpack://photos/./node_modules/vue-material-design-icons/ImageMultiple.vue?eba6","webpack://photos/./src/components/Collection/CollectionCover.vue?3f57","webpack://photos/./src/components/Collection/CollectionsList.vue?feb0"],"sourcesContent":["//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport { mapGetters } from 'vuex'; // import ShareVariant from 'vue-material-design-icons/ShareVariant'\n// import AccountMultiple from 'vue-material-design-icons/AccountMultiple'\n\nimport ImageMultiple from 'vue-material-design-icons/ImageMultiple';\nexport default {\n name: 'CollectionCover',\n components: {\n ImageMultiple\n },\n props: {\n coverUrl: {\n type: String,\n required: true\n },\n altImg: {\n type: String,\n required: true\n },\n link: {\n type: String,\n required: true\n }\n },\n computed: { ...mapGetters(['files', 'albums'])\n }\n};","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport AlertCircle from 'vue-material-design-icons/AlertCircle';\nimport { NcEmptyContent } from '@nextcloud/vue';\nexport default {\n name: 'CollectionsList',\n components: {\n AlertCircle,\n NcEmptyContent\n },\n props: {\n collections: {\n type: Object,\n required: true\n },\n loading: {\n type: Boolean,\n default: false\n },\n error: {\n type: Error,\n default: null\n }\n },\n computed: {\n /**\n * @return {boolean} Whether the list of collections is empty or not.\n */\n noCollection() {\n return Object.keys(this.collections).length === 0;\n }\n\n }\n};","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".collection-cover[data-v-65d1e458] {\\n display: flex;\\n flex-direction: column;\\n padding: 16px;\\n border-radius: var(--border-radius-large);\\n}\\n.collection-cover[data-v-65d1e458]:hover, .collection-cover[data-v-65d1e458]:focus {\\n background: var(--color-background-dark);\\n}\\n.collection-cover__image[data-v-65d1e458] {\\n width: 350px;\\n height: 350px;\\n object-fit: none;\\n border-radius: var(--border-radius-large);\\n}\\n@media only screen and (max-width: 1200px) {\\n.collection-cover__image[data-v-65d1e458] {\\n width: 250px;\\n height: 250px;\\n}\\n}\\n.collection-cover__image--placeholder[data-v-65d1e458] {\\n background: var(--color-primary-light);\\n}\\n.collection-cover__image--placeholder[data-v-65d1e458] .material-design-icon {\\n width: 100%;\\n height: 100%;\\n}\\n.collection-cover__image--placeholder[data-v-65d1e458] .material-design-icon .material-design-icon__svg {\\n fill: var(--color-primary);\\n}\\n.collection-cover__details[data-v-65d1e458] {\\n display: flex;\\n flex-direction: column;\\n margin-top: 16px;\\n width: 350px;\\n}\\n@media only screen and (max-width: 1200px) {\\n.collection-cover__details[data-v-65d1e458] {\\n width: 250px;\\n}\\n}\\n.collection-cover__details__title[data-v-65d1e458] {\\n display: flex;\\n}\\n.collection-cover__details__subtitle[data-v-65d1e458] {\\n display: flex;\\n color: var(--color-text-lighter);\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".collections[data-v-672c9772] {\\n display: flex;\\n flex-direction: column;\\n height: 100%;\\n}\\n.collections__list[data-v-672c9772] {\\n padding: 32px 48px;\\n flex-grow: 1;\\n display: flex;\\n flex-wrap: wrap;\\n gap: 16px;\\n align-items: flex-start;\\n height: calc(100% - 60px);\\n overflow-x: scroll;\\n}\\n@media only screen and (max-width: 1200px) {\\n.collections__list[data-v-672c9772] {\\n padding: 32px 12px;\\n justify-content: center;\\n}\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n import API from \"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./CollectionCover.vue?vue&type=style&index=0&id=65d1e458&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./CollectionCover.vue?vue&type=style&index=0&id=65d1e458&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","\n import API from \"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./CollectionsList.vue?vue&type=style&index=0&id=672c9772&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./CollectionsList.vue?vue&type=style&index=0&id=672c9772&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./AlertCircle.vue?vue&type=template&id=7b52a7d0&\"\nimport script from \"./AlertCircle.vue?vue&type=script&lang=js&\"\nexport * from \"./AlertCircle.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/louis/workspace/nextcloud/apps/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('7b52a7d0')) {\n api.createRecord('7b52a7d0', component.options)\n } else {\n api.reload('7b52a7d0', component.options)\n }\n module.hot.accept(\"./AlertCircle.vue?vue&type=template&id=7b52a7d0&\", function () {\n api.rerender('7b52a7d0', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"node_modules/vue-material-design-icons/AlertCircle.vue\"\nexport default component.exports","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nexport default {\n name: \"AlertCircleIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n","import { render, staticRenderFns } from \"./ImageMultiple.vue?vue&type=template&id=1fff908f&\"\nimport script from \"./ImageMultiple.vue?vue&type=script&lang=js&\"\nexport * from \"./ImageMultiple.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/louis/workspace/nextcloud/apps/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('1fff908f')) {\n api.createRecord('1fff908f', component.options)\n } else {\n api.reload('1fff908f', component.options)\n }\n module.hot.accept(\"./ImageMultiple.vue?vue&type=template&id=1fff908f&\", function () {\n api.rerender('1fff908f', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"node_modules/vue-material-design-icons/ImageMultiple.vue\"\nexport default component.exports","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nexport default {\n name: \"ImageMultipleIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n","import { render, staticRenderFns } from \"./CollectionCover.vue?vue&type=template&id=65d1e458&scoped=true&\"\nimport script from \"./CollectionCover.vue?vue&type=script&lang=js&\"\nexport * from \"./CollectionCover.vue?vue&type=script&lang=js&\"\nimport style0 from \"./CollectionCover.vue?vue&type=style&index=0&id=65d1e458&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 \"65d1e458\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/louis/workspace/nextcloud/apps/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('65d1e458')) {\n api.createRecord('65d1e458', component.options)\n } else {\n api.reload('65d1e458', component.options)\n }\n module.hot.accept(\"./CollectionCover.vue?vue&type=template&id=65d1e458&scoped=true&\", function () {\n api.rerender('65d1e458', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/Collection/CollectionCover.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./CollectionsList.vue?vue&type=template&id=672c9772&scoped=true&\"\nimport script from \"./CollectionsList.vue?vue&type=script&lang=js&\"\nexport * from \"./CollectionsList.vue?vue&type=script&lang=js&\"\nimport style0 from \"./CollectionsList.vue?vue&type=style&index=0&id=672c9772&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 \"672c9772\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/louis/workspace/nextcloud/apps/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('672c9772')) {\n api.createRecord('672c9772', component.options)\n } else {\n api.reload('672c9772', component.options)\n }\n module.hot.accept(\"./CollectionsList.vue?vue&type=template&id=672c9772&scoped=true&\", function () {\n api.rerender('672c9772', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/Collection/CollectionsList.vue\"\nexport default component.exports","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CollectionCover.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!./CollectionCover.vue?vue&type=script&lang=js&\"","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CollectionsList.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!./CollectionsList.vue?vue&type=script&lang=js&\"","export * from \"-!../../../node_modules/style-loader/dist/cjs.js!../../../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!./CollectionCover.vue?vue&type=style&index=0&id=65d1e458&lang=scss&scoped=true&\"","export * from \"-!../../../node_modules/style-loader/dist/cjs.js!../../../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!./CollectionsList.vue?vue&type=style&index=0&id=672c9772&lang=scss&scoped=true&\"","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./AlertCircle.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./AlertCircle.vue?vue&type=script&lang=js&\"","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ImageMultiple.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ImageMultiple.vue?vue&type=script&lang=js&\"","export * from \"-!../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CollectionCover.vue?vue&type=template&id=65d1e458&scoped=true&\"","export * from \"-!../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CollectionsList.vue?vue&type=template&id=672c9772&scoped=true&\"","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"span\",\n _vm._b(\n {\n staticClass: \"material-design-icon alert-circle-icon\",\n attrs: {\n \"aria-hidden\": !_vm.title,\n \"aria-label\": _vm.title,\n role: \"img\",\n },\n on: {\n click: function ($event) {\n return _vm.$emit(\"click\", $event)\n },\n },\n },\n \"span\",\n _vm.$attrs,\n false\n ),\n [\n _c(\n \"svg\",\n {\n staticClass: \"material-design-icon__svg\",\n attrs: {\n fill: _vm.fillColor,\n width: _vm.size,\n height: _vm.size,\n viewBox: \"0 0 24 24\",\n },\n },\n [\n _c(\n \"path\",\n {\n attrs: {\n d: \"M13,13H11V7H13M13,17H11V15H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z\",\n },\n },\n [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()]\n ),\n ]\n ),\n ]\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"span\",\n _vm._b(\n {\n staticClass: \"material-design-icon image-multiple-icon\",\n attrs: {\n \"aria-hidden\": !_vm.title,\n \"aria-label\": _vm.title,\n role: \"img\",\n },\n on: {\n click: function ($event) {\n return _vm.$emit(\"click\", $event)\n },\n },\n },\n \"span\",\n _vm.$attrs,\n false\n ),\n [\n _c(\n \"svg\",\n {\n staticClass: \"material-design-icon__svg\",\n attrs: {\n fill: _vm.fillColor,\n width: _vm.size,\n height: _vm.size,\n viewBox: \"0 0 24 24\",\n },\n },\n [\n _c(\n \"path\",\n {\n attrs: {\n d: \"M22,16V4A2,2 0 0,0 20,2H8A2,2 0 0,0 6,4V16A2,2 0 0,0 8,18H20A2,2 0 0,0 22,16M11,12L13.03,14.71L16,11L20,16H8M2,6V20A2,2 0 0,0 4,22H18V20H4V6\",\n },\n },\n [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()]\n ),\n ]\n ),\n ]\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"li\",\n [\n _c(\n \"router-link\",\n { staticClass: \"collection-cover\", attrs: { to: _vm.link } },\n [\n _vm.coverUrl !== \"\"\n ? _c(\"img\", {\n staticClass: \"collection-cover__image\",\n attrs: { src: _vm.coverUrl, alt: _vm.altImg },\n })\n : _c(\n \"div\",\n {\n staticClass:\n \"collection-cover__image collection-cover__image--placeholder\",\n },\n [_c(\"ImageMultiple\", { attrs: { size: 128 } })],\n 1\n ),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"collection-cover__details\" }, [\n _c(\n \"div\",\n { staticClass: \"collection-cover__details__title\" },\n [_vm._t(\"default\")],\n 2\n ),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"collection-cover__details__subtitle\" },\n [_vm._t(\"subtitle\")],\n 2\n ),\n ]),\n ]\n ),\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _vm.error\n ? _c(\n \"NcEmptyContent\",\n { attrs: { title: _vm.t(\"photos\", \"An error occurred\") } },\n [_c(\"AlertCircle\", { attrs: { slot: \"icon\" }, slot: \"icon\" })],\n 1\n )\n : _c(\n \"div\",\n { staticClass: \"collections\" },\n [\n _vm._t(\"header\"),\n _vm._v(\" \"),\n _vm.noCollection && !_vm.loading\n ? _vm._t(\"empty-collections-list\")\n : !_vm.noCollection\n ? _c(\n \"ul\",\n { staticClass: \"collections__list\" },\n [\n _vm._l(_vm.collections, function (collection) {\n return _vm._t(\"default\", null, { collection: collection })\n }),\n ],\n 2\n )\n : _vm._e(),\n ],\n 2\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-src_components_HeaderNavigation_vue.js b/js/photos-src_components_HeaderNavigation_vue.js deleted file mode 100644 index 34030999d..000000000 --- a/js/photos-src_components_HeaderNavigation_vue.js +++ /dev/null @@ -1,555 +0,0 @@ -"use strict"; -(self["webpackChunkphotos"] = self["webpackChunkphotos"] || []).push([["src_components_HeaderNavigation_vue"],{ - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/HeaderNavigation.vue?vue&type=script&lang=js&": -/*!**************************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/HeaderNavigation.vue?vue&type=script&lang=js& ***! - \**************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var vue_material_design_icons_ArrowLeft_vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue-material-design-icons/ArrowLeft.vue */ "./node_modules/vue-material-design-icons/ArrowLeft.vue"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/vue */ "./node_modules/@nextcloud/vue/dist/ncvuecomponents.js"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue__WEBPACK_IMPORTED_MODULE_1__); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'HeaderNavigation', - components: { - ArrowLeft: vue_material_design_icons_ArrowLeft_vue__WEBPACK_IMPORTED_MODULE_0__["default"], - NcButton: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_1__.NcButton, - NcLoadingIcon: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_1__.NcLoadingIcon - }, - inheritAttrs: false, - props: { - loading: { - type: Boolean, - default: false - }, - path: { - type: String, - default: '/' - }, - title: { - type: String, - required: true - }, - rootTitle: { - type: String, - default: t('photos', 'Photos') - }, - // The route params - params: { - type: Object, - default: null - } - }, - computed: { - isRoot: function isRoot() { - var isRoot = this.path === '/'; - this.toggleNavigationButton(!isRoot); - return isRoot; - }, - name: function name() { - if (this.isRoot) { - return this.rootTitle; - } - - return this.title; - }, - parentPath: function parentPath() { - var path = this.path.split('/'); - path.pop(); - var parent = path.join('/'); - return this.isRoot || parent.trim() === '' ? '/' : path.join('/'); - }, - parentName: function parentName() { - return this.parentPath && this.parentPath.split('/').pop(); - }, - backToText: function backToText() { - if (this.parentPath === '/') { - return t('photos', 'Back to {folder}', { - folder: this.rootTitle - }); - } - - return t('photos', 'Back to {folder}', { - folder: this.parentName - }); - }, - - /** - * We do not want encoded slashes when browsing by folder - * so we generate a new valid route object, get the final url back - * decode it and use it as a direct string, which vue-router - * does not encode afterwards - * - * @return {string|object} - */ - to: function to() { - // always remove first slash, the router - // manage it automatically - var regex = /^\/?(.*)/i; - var path = regex.exec(this.parentPath)[1]; // apply to current route - - var _Object$assign = Object.assign({}, this.$route, { - params: this.params || { - path: path - } - }), - name = _Object$assign.name, - params = _Object$assign.params; // return the full object as we don't care about - // an empty path if this is route - - - if (path === '') { - return { - name: name - }; - } // returning a string prevent vue-router to encode it again - - - return decodeURIComponent(this.$router.resolve({ - name: name, - params: params - }).resolved.path); - } - }, - methods: { - folderUp: function folderUp() { - this.$router.push(this.to); - }, - refresh: function refresh() { - this.$emit('refresh'); - }, - toggleNavigationButton: function toggleNavigationButton(hide) { - // Hide the navigation toggle if the back button is shown - var navigationToggle = document.querySelector('button.app-navigation-toggle'); - navigationToggle.style.display = hide ? 'none' : null; - } - } -}); - -/***/ }), - -/***/ "./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!./src/components/HeaderNavigation.vue?vue&type=style&index=0&lang=scss&": -/*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/components/HeaderNavigation.vue?vue&type=style&index=0&lang=scss& ***! - \**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ":root {\n --photos-navigation-height: 64px;\n --photos-navigation-spacing: calc((var(--photos-navigation-height) - 44px) / 2);\n}\nbutton.app-navigation-toggle {\n top: 0 !important;\n right: calc(var(--photos-navigation-height) * -1) !important;\n margin: var(--photos-navigation-spacing) !important;\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./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!./src/components/HeaderNavigation.vue?vue&type=style&index=1&id=21ecc79e&lang=scss&scoped=true&": -/*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/components/HeaderNavigation.vue?vue&type=style&index=1&id=21ecc79e&lang=scss&scoped=true& ***! - \**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".photos-navigation[data-v-21ecc79e] {\n position: -webkit-sticky;\n position: sticky;\n z-index: 20;\n top: 0;\n display: flex;\n align-items: center;\n width: 100%;\n min-height: var(--photos-navigation-height);\n padding: 0 var(--photos-navigation-height);\n background: var(--color-main-background);\n}\n.photos-navigation__back[data-v-21ecc79e] {\n position: absolute;\n left: 0;\n margin: var(--photos-navigation-spacing) !important;\n}\n.photos-navigation__title[data-v-21ecc79e] {\n max-width: 50%;\n margin-right: calc(2 * var(--photos-navigation-spacing));\n display: flex;\n flex-direction: column;\n}\n.photos-navigation__title__main[data-v-21ecc79e] {\n margin: 0;\n cursor: pointer;\n}\n.photos-navigation__title__main[data-v-21ecc79e], .photos-navigation__title__sub[data-v-21ecc79e] {\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.photos-navigation__loader[data-v-21ecc79e] {\n margin-left: 32px;\n}\n.photos-navigation__content-right[data-v-21ecc79e] {\n display: flex;\n align-items: center;\n justify-content: center;\n margin-left: auto;\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/HeaderNavigation.vue?vue&type=style&index=0&lang=scss&": -/*!******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/components/HeaderNavigation.vue?vue&type=style&index=0&lang=scss& ***! - \******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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_HeaderNavigation_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../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!./HeaderNavigation.vue?vue&type=style&index=0&lang=scss& */ "./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!./src/components/HeaderNavigation.vue?vue&type=style&index=0&lang=scss&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_HeaderNavigation_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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_HeaderNavigation_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_HeaderNavigation_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_HeaderNavigation_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/HeaderNavigation.vue?vue&type=style&index=1&id=21ecc79e&lang=scss&scoped=true&": -/*!******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/components/HeaderNavigation.vue?vue&type=style&index=1&id=21ecc79e&lang=scss&scoped=true& ***! - \******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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_HeaderNavigation_vue_vue_type_style_index_1_id_21ecc79e_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../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!./HeaderNavigation.vue?vue&type=style&index=1&id=21ecc79e&lang=scss&scoped=true& */ "./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!./src/components/HeaderNavigation.vue?vue&type=style&index=1&id=21ecc79e&lang=scss&scoped=true&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_HeaderNavigation_vue_vue_type_style_index_1_id_21ecc79e_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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_HeaderNavigation_vue_vue_type_style_index_1_id_21ecc79e_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_HeaderNavigation_vue_vue_type_style_index_1_id_21ecc79e_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_HeaderNavigation_vue_vue_type_style_index_1_id_21ecc79e_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./src/components/HeaderNavigation.vue": -/*!*********************************************!*\ - !*** ./src/components/HeaderNavigation.vue ***! - \*********************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _HeaderNavigation_vue_vue_type_template_id_21ecc79e_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./HeaderNavigation.vue?vue&type=template&id=21ecc79e&scoped=true& */ "./src/components/HeaderNavigation.vue?vue&type=template&id=21ecc79e&scoped=true&"); -/* harmony import */ var _HeaderNavigation_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./HeaderNavigation.vue?vue&type=script&lang=js& */ "./src/components/HeaderNavigation.vue?vue&type=script&lang=js&"); -/* harmony import */ var _HeaderNavigation_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./HeaderNavigation.vue?vue&type=style&index=0&lang=scss& */ "./src/components/HeaderNavigation.vue?vue&type=style&index=0&lang=scss&"); -/* harmony import */ var _HeaderNavigation_vue_vue_type_style_index_1_id_21ecc79e_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./HeaderNavigation.vue?vue&type=style&index=1&id=21ecc79e&lang=scss&scoped=true& */ "./src/components/HeaderNavigation.vue?vue&type=style&index=1&id=21ecc79e&lang=scss&scoped=true&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_4__["default"])( - _HeaderNavigation_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _HeaderNavigation_vue_vue_type_template_id_21ecc79e_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render, - _HeaderNavigation_vue_vue_type_template_id_21ecc79e_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - "21ecc79e", - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/HeaderNavigation.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/HeaderNavigation.vue?vue&type=script&lang=js&": -/*!**********************************************************************!*\ - !*** ./src/components/HeaderNavigation.vue?vue&type=script&lang=js& ***! - \**********************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_HeaderNavigation_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HeaderNavigation.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/HeaderNavigation.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_HeaderNavigation_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/components/HeaderNavigation.vue?vue&type=style&index=0&lang=scss&": -/*!*******************************************************************************!*\ - !*** ./src/components/HeaderNavigation.vue?vue&type=style&index=0&lang=scss& ***! - \*******************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_HeaderNavigation_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/style-loader/dist/cjs.js!../../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!./HeaderNavigation.vue?vue&type=style&index=0&lang=scss& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/HeaderNavigation.vue?vue&type=style&index=0&lang=scss&"); - - -/***/ }), - -/***/ "./src/components/HeaderNavigation.vue?vue&type=style&index=1&id=21ecc79e&lang=scss&scoped=true&": -/*!*******************************************************************************************************!*\ - !*** ./src/components/HeaderNavigation.vue?vue&type=style&index=1&id=21ecc79e&lang=scss&scoped=true& ***! - \*******************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_HeaderNavigation_vue_vue_type_style_index_1_id_21ecc79e_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/style-loader/dist/cjs.js!../../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!./HeaderNavigation.vue?vue&type=style&index=1&id=21ecc79e&lang=scss&scoped=true& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/HeaderNavigation.vue?vue&type=style&index=1&id=21ecc79e&lang=scss&scoped=true&"); - - -/***/ }), - -/***/ "./src/components/HeaderNavigation.vue?vue&type=template&id=21ecc79e&scoped=true&": -/*!****************************************************************************************!*\ - !*** ./src/components/HeaderNavigation.vue?vue&type=template&id=21ecc79e&scoped=true& ***! - \****************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_HeaderNavigation_vue_vue_type_template_id_21ecc79e_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_HeaderNavigation_vue_vue_type_template_id_21ecc79e_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_HeaderNavigation_vue_vue_type_template_id_21ecc79e_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HeaderNavigation.vue?vue&type=template&id=21ecc79e&scoped=true& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/HeaderNavigation.vue?vue&type=template&id=21ecc79e&scoped=true&"); - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/HeaderNavigation.vue?vue&type=template&id=21ecc79e&scoped=true&": -/*!*******************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/HeaderNavigation.vue?vue&type=template&id=21ecc79e&scoped=true& ***! - \*******************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c( - "div", - { - staticClass: "photos-navigation", - class: { "photos-navigation--root": _vm.isRoot }, - attrs: { role: "toolbar" }, - }, - [ - !_vm.isRoot - ? _c("NcButton", { - staticClass: "photos-navigation__back", - attrs: { type: "tertiary" }, - on: { click: _vm.folderUp }, - scopedSlots: _vm._u( - [ - { - key: "icon", - fn: function () { - return [_c("ArrowLeft", { attrs: { size: 20 } })] - }, - proxy: true, - }, - ], - null, - false, - 1821202730 - ), - }) - : _vm._e(), - _vm._v(" "), - _c( - "div", - { staticClass: "photos-navigation__title" }, - [ - _c( - "h2", - { - staticClass: "photos-navigation__title__main", - on: { click: _vm.refresh }, - }, - [_vm._v("\n\t\t\t" + _vm._s(_vm.name) + "\n\t\t")] - ), - _vm._v(" "), - _c("div", { staticClass: "photos-navigation__title__sub" }), - _vm._v(" "), - _vm._t("subtitle"), - ], - 2 - ), - _vm._v(" "), - _vm.$slots.default - ? _c( - "div", - { staticClass: "photos-navigation__content" }, - [_vm._t("default")], - 2 - ) - : _vm._e(), - _vm._v(" "), - _c("NcLoadingIcon", { - directives: [ - { - name: "show", - rawName: "v-show", - value: _vm.loading, - expression: "loading", - }, - ], - staticClass: "photos-navigation__loader", - }), - _vm._v(" "), - _c( - "div", - { staticClass: "photos-navigation__content-right" }, - [_vm._t("right")], - 2 - ), - ], - 1 - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }) - -}]); -//# sourceMappingURL=photos-src_components_HeaderNavigation_vue.js.map?v=8f02bc4a2f121da04229 \ No newline at end of file diff --git a/js/photos-src_components_HeaderNavigation_vue.js.map b/js/photos-src_components_HeaderNavigation_vue.js.map deleted file mode 100644 index 011c01d4c..000000000 --- a/js/photos-src_components_HeaderNavigation_vue.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-src_components_HeaderNavigation_vue.js?v=8f02bc4a2f121da04229","mappings":";;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;AC7KA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;ACxCA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AIAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sources":["webpack:///photos/src/components/HeaderNavigation.vue?vue&type=script&lang=js&","webpack:///photos/src/components/HeaderNavigation.vue?vue&type=style&index=0&lang=scss&","webpack:///photos/src/components/HeaderNavigation.vue?vue&type=style&index=1&id=21ecc79e&lang=scss&scoped=true&","webpack://photos/./src/components/HeaderNavigation.vue?29e2","webpack://photos/./src/components/HeaderNavigation.vue?3f47","webpack:///photos/src/components/HeaderNavigation.vue","webpack://photos/./src/components/HeaderNavigation.vue?3b25","webpack://photos/./src/components/HeaderNavigation.vue?64eb","webpack://photos/./src/components/HeaderNavigation.vue?70fb","webpack:///photos/src/components/HeaderNavigation.vue?vue&type=template&id=21ecc79e&scoped=true&","webpack://photos/./src/components/HeaderNavigation.vue?ea63"],"sourcesContent":["//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport ArrowLeft from 'vue-material-design-icons/ArrowLeft.vue';\nimport { NcButton, NcLoadingIcon } from '@nextcloud/vue';\nexport default {\n name: 'HeaderNavigation',\n components: {\n ArrowLeft: ArrowLeft,\n NcButton: NcButton,\n NcLoadingIcon: NcLoadingIcon\n },\n inheritAttrs: false,\n props: {\n loading: {\n type: Boolean,\n default: false\n },\n path: {\n type: String,\n default: '/'\n },\n title: {\n type: String,\n required: true\n },\n rootTitle: {\n type: String,\n default: t('photos', 'Photos')\n },\n // The route params\n params: {\n type: Object,\n default: null\n }\n },\n computed: {\n isRoot: function isRoot() {\n var isRoot = this.path === '/';\n this.toggleNavigationButton(!isRoot);\n return isRoot;\n },\n name: function name() {\n if (this.isRoot) {\n return this.rootTitle;\n }\n\n return this.title;\n },\n parentPath: function parentPath() {\n var path = this.path.split('/');\n path.pop();\n var parent = path.join('/');\n return this.isRoot || parent.trim() === '' ? '/' : path.join('/');\n },\n parentName: function parentName() {\n return this.parentPath && this.parentPath.split('/').pop();\n },\n backToText: function backToText() {\n if (this.parentPath === '/') {\n return t('photos', 'Back to {folder}', {\n folder: this.rootTitle\n });\n }\n\n return t('photos', 'Back to {folder}', {\n folder: this.parentName\n });\n },\n\n /**\n * We do not want encoded slashes when browsing by folder\n * so we generate a new valid route object, get the final url back\n * decode it and use it as a direct string, which vue-router\n * does not encode afterwards\n *\n * @return {string|object}\n */\n to: function to() {\n // always remove first slash, the router\n // manage it automatically\n var regex = /^\\/?(.*)/i;\n var path = regex.exec(this.parentPath)[1]; // apply to current route\n\n var _Object$assign = Object.assign({}, this.$route, {\n params: this.params || {\n path: path\n }\n }),\n name = _Object$assign.name,\n params = _Object$assign.params; // return the full object as we don't care about\n // an empty path if this is route\n\n\n if (path === '') {\n return {\n name: name\n };\n } // returning a string prevent vue-router to encode it again\n\n\n return decodeURIComponent(this.$router.resolve({\n name: name,\n params: params\n }).resolved.path);\n }\n },\n methods: {\n folderUp: function folderUp() {\n this.$router.push(this.to);\n },\n refresh: function refresh() {\n this.$emit('refresh');\n },\n toggleNavigationButton: function toggleNavigationButton(hide) {\n // Hide the navigation toggle if the back button is shown\n var navigationToggle = document.querySelector('button.app-navigation-toggle');\n navigationToggle.style.display = hide ? 'none' : null;\n }\n }\n};","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \":root {\\n --photos-navigation-height: 64px;\\n --photos-navigation-spacing: calc((var(--photos-navigation-height) - 44px) / 2);\\n}\\nbutton.app-navigation-toggle {\\n top: 0 !important;\\n right: calc(var(--photos-navigation-height) * -1) !important;\\n margin: var(--photos-navigation-spacing) !important;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".photos-navigation[data-v-21ecc79e] {\\n position: -webkit-sticky;\\n position: sticky;\\n z-index: 20;\\n top: 0;\\n display: flex;\\n align-items: center;\\n width: 100%;\\n min-height: var(--photos-navigation-height);\\n padding: 0 var(--photos-navigation-height);\\n background: var(--color-main-background);\\n}\\n.photos-navigation__back[data-v-21ecc79e] {\\n position: absolute;\\n left: 0;\\n margin: var(--photos-navigation-spacing) !important;\\n}\\n.photos-navigation__title[data-v-21ecc79e] {\\n max-width: 50%;\\n margin-right: calc(2 * var(--photos-navigation-spacing));\\n display: flex;\\n flex-direction: column;\\n}\\n.photos-navigation__title__main[data-v-21ecc79e] {\\n margin: 0;\\n cursor: pointer;\\n}\\n.photos-navigation__title__main[data-v-21ecc79e], .photos-navigation__title__sub[data-v-21ecc79e] {\\n overflow: hidden;\\n white-space: nowrap;\\n text-overflow: ellipsis;\\n}\\n.photos-navigation__loader[data-v-21ecc79e] {\\n margin-left: 32px;\\n}\\n.photos-navigation__content-right[data-v-21ecc79e] {\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n margin-left: auto;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./HeaderNavigation.vue?vue&type=style&index=0&lang=scss&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./HeaderNavigation.vue?vue&type=style&index=0&lang=scss&\";\n export default content && content.locals ? content.locals : undefined;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./HeaderNavigation.vue?vue&type=style&index=1&id=21ecc79e&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./HeaderNavigation.vue?vue&type=style&index=1&id=21ecc79e&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./HeaderNavigation.vue?vue&type=template&id=21ecc79e&scoped=true&\"\nimport script from \"./HeaderNavigation.vue?vue&type=script&lang=js&\"\nexport * from \"./HeaderNavigation.vue?vue&type=script&lang=js&\"\nimport style0 from \"./HeaderNavigation.vue?vue&type=style&index=0&lang=scss&\"\nimport style1 from \"./HeaderNavigation.vue?vue&type=style&index=1&id=21ecc79e&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 \"21ecc79e\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/admin/Docker/apps2/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('21ecc79e')) {\n api.createRecord('21ecc79e', component.options)\n } else {\n api.reload('21ecc79e', component.options)\n }\n module.hot.accept(\"./HeaderNavigation.vue?vue&type=template&id=21ecc79e&scoped=true&\", function () {\n api.rerender('21ecc79e', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/HeaderNavigation.vue\"\nexport default component.exports","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HeaderNavigation.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!./HeaderNavigation.vue?vue&type=script&lang=js&\"","export * from \"-!../../node_modules/style-loader/dist/cjs.js!../../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!./HeaderNavigation.vue?vue&type=style&index=0&lang=scss&\"","export * from \"-!../../node_modules/style-loader/dist/cjs.js!../../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!./HeaderNavigation.vue?vue&type=style&index=1&id=21ecc79e&lang=scss&scoped=true&\"","export * from \"-!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HeaderNavigation.vue?vue&type=template&id=21ecc79e&scoped=true&\"","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n {\n staticClass: \"photos-navigation\",\n class: { \"photos-navigation--root\": _vm.isRoot },\n attrs: { role: \"toolbar\" },\n },\n [\n !_vm.isRoot\n ? _c(\"NcButton\", {\n staticClass: \"photos-navigation__back\",\n attrs: { type: \"tertiary\" },\n on: { click: _vm.folderUp },\n scopedSlots: _vm._u(\n [\n {\n key: \"icon\",\n fn: function () {\n return [_c(\"ArrowLeft\", { attrs: { size: 20 } })]\n },\n proxy: true,\n },\n ],\n null,\n false,\n 1821202730\n ),\n })\n : _vm._e(),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"photos-navigation__title\" },\n [\n _c(\n \"h2\",\n {\n staticClass: \"photos-navigation__title__main\",\n on: { click: _vm.refresh },\n },\n [_vm._v(\"\\n\\t\\t\\t\" + _vm._s(_vm.name) + \"\\n\\t\\t\")]\n ),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"photos-navigation__title__sub\" }),\n _vm._v(\" \"),\n _vm._t(\"subtitle\"),\n ],\n 2\n ),\n _vm._v(\" \"),\n _vm.$slots.default\n ? _c(\n \"div\",\n { staticClass: \"photos-navigation__content\" },\n [_vm._t(\"default\")],\n 2\n )\n : _vm._e(),\n _vm._v(\" \"),\n _c(\"NcLoadingIcon\", {\n directives: [\n {\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.loading,\n expression: \"loading\",\n },\n ],\n staticClass: \"photos-navigation__loader\",\n }),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"photos-navigation__content-right\" },\n [_vm._t(\"right\")],\n 2\n ),\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-src_components_VirtualScrolling_vue-src_views_Albums_vue.js b/js/photos-src_components_VirtualScrolling_vue-src_views_Albums_vue.js deleted file mode 100644 index e54abc8a8..000000000 --- a/js/photos-src_components_VirtualScrolling_vue-src_views_Albums_vue.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkphotos=self.webpackChunkphotos||[]).push([["src_components_VirtualScrolling_vue-src_views_Albums_vue"],{21238:(n,t,e)=>{e.d(t,{Z:()=>a});var o=e(87537),r=e.n(o),i=e(23645),s=e.n(i)()(r());s.push([n.id,".vs-container[data-v-5e8733b7]{overflow-y:scroll;height:100%}.vs-rows-container[data-v-5e8733b7]{box-sizing:border-box}","",{version:3,sources:["webpack://./src/components/VirtualScrolling.vue"],names:[],mappings:"AAkTA,+BACC,iBAAA,CACA,WAAA,CAGD,oCACC,qBAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.vs-container {\n\toverflow-y: scroll;\n\theight: 100%;\n}\n\n.vs-rows-container {\n\tbox-sizing: border-box;\n}\n'],sourceRoot:""}]);const a=s},56912:(n,t,e)=>{e.d(t,{Z:()=>a});var o=e(87537),r=e.n(o),i=e(23645),s=e.n(i)()(r());s.push([n.id,".albums-list[data-v-24a8ac3e]{display:flex;flex-direction:column}.albums-list .album__name[data-v-24a8ac3e]{font-weight:normal;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}","",{version:3,sources:["webpack://./src/views/Albums.vue"],names:[],mappings:"AAsIA,8BACC,YAAA,CACA,qBAAA,CAEA,2CACC,kBAAA,CACA,eAAA,CACA,kBAAA,CACA,sBAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.albums-list {\n\tdisplay: flex;\n\tflex-direction: column;\n\n\t.album__name {\n\t\tfont-weight: normal;\n\t\toverflow: hidden;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t}\n}\n'],sourceRoot:""}]);const a=s},20561:(n,t,e)=>{e.d(t,{Z:()=>O});var o=e(20296),r=e(59537);function i(n,t){var e="undefined"!=typeof Symbol&&n[Symbol.iterator]||n["@@iterator"];if(!e){if(Array.isArray(n)||(e=u(n))||t&&n&&"number"==typeof n.length){e&&(n=e);var o=0,r=function(){};return{s:r,n:function(){return o>=n.length?{done:!0}:{done:!1,value:n[o++]}},e:function(n){throw n},f:r}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,s=!0,a=!1;return{s:function(){e=e.call(n)},n:function(){var n=e.next();return s=n.done,n},e:function(n){a=!0,i=n},f:function(){try{s||null==e.return||e.return()}finally{if(a)throw i}}}}function s(n,t){var e=Object.keys(n);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(n);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(n,t).enumerable}))),e.push.apply(e,o)}return e}function a(n){for(var t=1;tn.length)&&(t=n.length);for(var e=0,o=new Array(t);e=this.rowsHeight-n},container:function(){return r.Z.debug("[VirtualScrolling] Computing container"),null!==this.containerElement?this.containerElement:this.useWindow?window:this.$refs.container}},watch:{isNearBottom:function(n){n&&this.$emit("need-content")},rows:function(){this.isNearBottom&&this.$emit("need-content")},scrollToKey:function(n){var t,e=0,o=i(this.rows);try{for(o.s();!(t=o.n()).done;){var r=t.value;if(r.key===n)return void this.$refs.container.scrollTo({top:e,behavior:"smooth"});e+=r.height}}catch(n){o.e(n)}finally{o.f()}}},mounted:function(){var n=this;this.resizeObserver=new ResizeObserver((function(t){var e,o=i(t);try{for(o.s();!(e=o.n()).done;){var r=e.value,s=r.contentRect;r.target.classList.contains("vs-container")&&(n.containerHeight=s.height),r.target.classList.contains("vs-rows-container")&&(n.rowsContainerHeight=s.height)}}catch(n){o.e(n)}finally{o.f()}})),this.useWindow?(window.addEventListener("resize",this.updateContainerSize),this.containerHeight=window.innerHeight):this.resizeObserver.observe(this.container),this.resizeObserver.observe(this.$refs.rowsContainer),this.container.addEventListener("scroll",this.updateScrollPosition)},beforeDestroy:function(){this.useWindow&&window.removeEventListener("resize",this.updateContainerSize),this.resizeObserver.disconnect(),this.container.removeEventListener("scroll",this.updateScrollPosition)},methods:{updateScrollPosition:(0,o.debounce)((function(){this.useWindow?this.scrollPosition=this.container.scrollY:this.scrollPosition=this.container.scrollTop}),200),updateContainerSize:function(){this.containerHeight=window.innerHeight}}};var d=e(93379),f=e.n(d),p=e(7795),b=e.n(p),v=e(90569),g=e.n(v),w=e(3565),y=e.n(w),A=e(19216),C=e.n(A),_=e(44589),T=e.n(_),W=e(21238),S={};S.styleTagTransform=T(),S.setAttributes=y(),S.insert=g().bind(null,"head"),S.domAPI=b(),S.insertStyleElement=C();f()(W.Z,S);W.Z&&W.Z.locals&&W.Z.locals;const O=(0,e(51900).Z)(h,(function(){var n=this,t=n.$createElement,e=n._self._c||t;return n.useWindow||null!==n.containerElement?e("div",{ref:"rowsContainer",staticClass:"vs-rows-container",style:n.rowsContainerStyle},[n._t("default",null,{renderedRows:n.visibleRows}),n._v(" "),n._t("loader")],2):e("div",{ref:"container",staticClass:"vs-container"},[e("div",{ref:"rowsContainer",staticClass:"vs-rows-container",style:n.rowsContainerStyle},[n._t("default",null,{renderedRows:n.visibleRows}),n._v(" "),n._t("loader")],2)])}),[],!1,null,"5e8733b7",null).exports},75600:(n,t,e)=>{e.r(t),e.d(t,{default:()=>S});var o=e(40502),r=e(65322),i=e(79753),s=e(33476),a=e(12945),l=e(88138),c=e(14445),u=e(666);const m={name:"Albums",components:{Plus:o.Z,FolderMultipleImage:r.Z,NcModal:s.NcModal,NcButton:s.NcButton,NcEmptyContent:s.NcEmptyContent,CollectionsList:l.Z,CollectionCover:c.Z,AlbumForm:u.Z},filters:{coverUrl:function(n){return-1===n?"":(0,i.generateUrl)("/apps/photos/api/v1/preview/".concat(n,"?x=",512,"&y=",512))}},mixins:[a.Z],data:function(){return{showAlbumCreationForm:!1}},methods:{handleAlbumCreated:function(n){var t=n.album;this.showAlbumCreationForm=!1,this.$router.push({name:"albums",params:{path:t.basename}})},onRefresh:function(){this.fetchAlbums()}}};var h=e(93379),d=e.n(h),f=e(7795),p=e.n(f),b=e(90569),v=e.n(b),g=e(3565),w=e.n(g),y=e(19216),A=e.n(y),C=e(44589),_=e.n(C),T=e(56912),W={};W.styleTagTransform=_(),W.setAttributes=w(),W.insert=v().bind(null,"head"),W.domAPI=p(),W.insertStyleElement=A();d()(T.Z,W);T.Z&&T.Z.locals&&T.Z.locals;const S=(0,e(51900).Z)(m,(function(){var n=this,t=n.$createElement,e=n._self._c||t;return e("div",[e("CollectionsList",{staticClass:"albums-list",attrs:{collections:n.albums,"collection-title":n.t("photos","Albums"),"collection-root":n.t("photos","Albums"),loading:n.loadingAlbums,error:n.errorFetchingAlbums},scopedSlots:n._u([{key:"default",fn:function(t){var o=t.collection;return e("CollectionCover",{key:o.basename,attrs:{link:"/albums/"+o.basename,"alt-img":n.t("photos","Cover photo for album {albumName}",{albumName:this.collection.basename}),"cover-url":n._f("coverUrl")(o.lastPhoto)}},[e("h2",{staticClass:"album__name"},[n._v("\n\t\t\t\t"+n._s(o.basename)+"\n\t\t\t")]),n._v(" "),e("div",{staticClass:"album__details",attrs:{slot:"subtitle"},slot:"subtitle"},[n._v("\n\t\t\t\t"+n._s(o.date)+" ⸱ "+n._s(n.n("photos","%n item","%n photos and videos",o.nbItems))+"\n\t\t\t")])])}}])},[e("div",{attrs:{slot:"header"},slot:"header"},[e("NcButton",{attrs:{type:"primary","aria-label":n.t("photos","Create a new album.")},on:{click:function(t){n.showAlbumCreationForm=!0}},scopedSlots:n._u([{key:"icon",fn:function(){return[e("Plus")]},proxy:!0}])},[n._v("\n\t\t\t\t"+n._s(n.t("photos","New album"))+"\n\t\t\t")])],1),n._v(" "),n._v(" "),e("NcEmptyContent",{attrs:{slot:"empty-collections-list",title:n.t("photos","There is no album yet!")},slot:"empty-collections-list"},[e("FolderMultipleImage",{attrs:{slot:"icon"},slot:"icon"})],1)],1),n._v(" "),n.showAlbumCreationForm?e("NcModal",{attrs:{title:n.t("photos","New album")},on:{close:function(t){n.showAlbumCreationForm=!1}}},[e("AlbumForm",{on:{done:n.handleAlbumCreated}})],1):n._e()],1)}),[],!1,null,"24a8ac3e",null).exports}}]); -//# sourceMappingURL=photos-src_components_VirtualScrolling_vue-src_views_Albums_vue.js.map?v=fe0ad7493c416d31069a \ No newline at end of file diff --git a/js/photos-src_components_VirtualScrolling_vue-src_views_Albums_vue.js.map b/js/photos-src_components_VirtualScrolling_vue-src_views_Albums_vue.js.map deleted file mode 100644 index e4bd398c9..000000000 --- a/js/photos-src_components_VirtualScrolling_vue-src_views_Albums_vue.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-src_components_VirtualScrolling_vue-src_views_Albums_vue.js?v=fe0ad7493c416d31069a","mappings":"2MAGIA,E,MAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,0HAA2H,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,mDAAmD,MAAQ,GAAG,SAAW,+CAA+C,eAAiB,CAAC,2vCAA20C,WAAa,MAEjqD,S,sECJIH,E,MAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,4LAA6L,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,oCAAoC,MAAQ,GAAG,SAAW,+EAA+E,eAAiB,CAAC,m/BAAmkC,WAAa,MAE5+C,S,mCCPA,I,kkECsDA,MCtDiL,EDsDjL,CACA,wBAEA,OACA,MACA,WACA,aAGA,kBACA,iBACA,cAGA,WACA,aACA,YAGA,mBACA,YACA,WAEA,0BACA,YACA,WAEA,oBACA,YAEA,WAEA,mBACA,YACA,WAEA,aACA,YACA,aAIA,KA1CA,WA2CA,OACA,iBACA,kBACA,sBAEA,oBAEA,EAEA,UAIA,YAJA,WAKA,iEAGA,0BACA,uBAIA,2BACA,kCACA,4BAEA,IACA,IAIA,iBACA,sBAIA,GAHA,IACA,YAEA,eACA,SAGA,aAaA,OAXA,iBACA,SAEA,iBACA,aAEA,iBACA,cAIA,YACA,GADA,QAGA,GAHA,IAIA,gBAGA,MACA,EAOA,WA3DA,WA8DA,iBACA,oCACA,sCAJA,GAKA,EAKA,WAtEA,WAsEA,WACA,+BACA,SAGA,kFAEA,iBACA,oCACA,WACA,qCACA,EAOA,mBAxFA,WAyFA,OACA,uCACA,2CAEA,EAQA,aArGA,WAsGA,kDACA,kEACA,EAKA,UA7GA,WA+GA,OADA,oDACA,6BACA,sBACA,eACA,OAEA,oBAEA,GAGA,OACA,aADA,SACA,GACA,GACA,0BAEA,EAEA,KAPA,WAUA,mBACA,0BAEA,EAEA,YAfA,SAeA,GACA,IADA,EACA,IADA,IAEA,WAFA,IAEA,0CACA,aAEA,YADA,yDAIA,WACA,CATA,+BAUA,GAGA,QAzMA,WAyMA,WACA,8DACA,GADA,IACA,0CACA,gBACA,8CACA,4BAEA,mDACA,+BAEA,CATA,+BAUA,IAEA,gBACA,2DACA,yCAEA,4CAGA,sDACA,mEACA,EAEA,cAjOA,WAkOA,gBACA,8DAGA,iCACA,sEACA,EAEA,SACA,gDACA,eACA,2CAEA,4CAEA,QAEA,oBATA,WAUA,uCACA,I,qIEhSIC,EAAU,CAAC,EAEfA,EAAQC,kBAAoB,IAC5BD,EAAQE,cAAgB,IAElBF,EAAQG,OAAS,SAAc,KAAM,QAE3CH,EAAQI,OAAS,IACjBJ,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKJ,KAAW,YAAiB,WCPlD,SAXgB,E,SAAA,GACd,GJTW,WAAa,IAAIM,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAASF,EAAIM,WAAsC,OAAzBN,EAAIO,iBAA4QH,EAAG,MAAM,CAACI,IAAI,gBAAgBC,YAAY,oBAAoBC,MAAOV,EAAsB,oBAAG,CAACA,EAAIW,GAAG,UAAU,KAAK,CAAC,aAAeX,EAAIY,cAAcZ,EAAIa,GAAG,KAAKb,EAAIW,GAAG,WAAW,GAAtaP,EAAG,MAAM,CAACI,IAAI,YAAYC,YAAY,gBAAgB,CAACL,EAAG,MAAM,CAACI,IAAI,gBAAgBC,YAAY,oBAAoBC,MAAOV,EAAsB,oBAAG,CAACA,EAAIW,GAAG,UAAU,KAAK,CAAC,aAAeX,EAAIY,cAAcZ,EAAIa,GAAG,KAAKb,EAAIW,GAAG,WAAW,IAA4L,GACpiB,IIWpB,EACA,KACA,WACA,MAI8B,O,gDCnBhC,I,sFC+EA,MC/EuK,ED+EvK,CACA,cACA,YACA,SACA,wBACA,kBACA,oBACA,gCACA,oBACA,oBACA,eAGA,SAIA,SAJA,SAIA,GACA,aACA,IAGA,8EACA,GAGA,QACA,KAGA,KA9BA,WA+BA,OACA,yBAEA,EAEA,SACA,mBADA,YACA,cACA,8BACA,mBACA,cACA,QACA,kBAGA,EAEA,UAXA,WAYA,kBACA,I,qIErHIjB,EAAU,CAAC,EAEfA,EAAQC,kBAAoB,IAC5BD,EAAQE,cAAgB,IAElBF,EAAQG,OAAS,SAAc,KAAM,QAE3CH,EAAQI,OAAS,IACjBJ,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKJ,KAAW,YAAiB,WCPlD,SAXgB,E,SAAA,GACd,GJTW,WAAa,IAAIM,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACA,EAAG,kBAAkB,CAACK,YAAY,cAAcK,MAAM,CAAC,YAAcd,EAAIe,OAAO,mBAAmBf,EAAIgB,EAAE,SAAU,UAAU,kBAAkBhB,EAAIgB,EAAE,SAAU,UAAU,QAAUhB,EAAIiB,cAAc,MAAQjB,EAAIkB,qBAAqBC,YAAYnB,EAAIoB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASd,GAC/X,IAAIe,EAAaf,EAAIe,WACrB,OAAOnB,EAAG,kBAAkB,CAACiB,IAAIE,EAAWC,SAASV,MAAM,CAAC,KAAQ,WAAcS,EAAmB,SAAG,UAAUvB,EAAIgB,EAAE,SAAU,oCAAqC,CAAES,UAAWxB,KAAKsB,WAAWC,WAAY,YAAYxB,EAAI0B,GAAG,WAAP1B,CAAmBuB,EAAWI,aAAa,CAACvB,EAAG,KAAK,CAACK,YAAY,eAAe,CAACT,EAAIa,GAAG,aAAab,EAAI4B,GAAGL,EAAWC,UAAU,cAAcxB,EAAIa,GAAG,KAAKT,EAAG,MAAM,CAACK,YAAY,iBAAiBK,MAAM,CAAC,KAAO,YAAYe,KAAK,YAAY,CAAC7B,EAAIa,GAAG,aAAab,EAAI4B,GAAGL,EAAWO,MAAM,MAAM9B,EAAI4B,GAAG5B,EAAI+B,EAAE,SAAU,UAAW,uBAAwBR,EAAWS,UAAU,eAAe,MAAM,CAAC5B,EAAG,MAAM,CAACU,MAAM,CAAC,KAAO,UAAUe,KAAK,UAAU,CAACzB,EAAG,WAAW,CAACU,MAAM,CAAC,KAAO,UAAU,aAAad,EAAIgB,EAAE,SAAU,wBAAwBiB,GAAG,CAAC,MAAQ,SAASC,GAAQlC,EAAImC,uBAAwB,CAAI,GAAGhB,YAAYnB,EAAIoB,GAAG,CAAC,CAACC,IAAI,OAAOC,GAAG,WAAW,MAAO,CAAClB,EAAG,QAAQ,EAAEgC,OAAM,MAAS,CAACpC,EAAIa,GAAG,aAAab,EAAI4B,GAAG5B,EAAIgB,EAAE,SAAU,cAAc,eAAe,GAAGhB,EAAIa,GAAG,KAAKb,EAAIa,GAAG,KAAKT,EAAG,iBAAiB,CAACU,MAAM,CAAC,KAAO,yBAAyB,MAAQd,EAAIgB,EAAE,SAAU,2BAA2Ba,KAAK,0BAA0B,CAACzB,EAAG,sBAAsB,CAACU,MAAM,CAAC,KAAO,QAAQe,KAAK,UAAU,IAAI,GAAG7B,EAAIa,GAAG,KAAMb,EAAyB,sBAAEI,EAAG,UAAU,CAACU,MAAM,CAAC,MAAQd,EAAIgB,EAAE,SAAU,cAAciB,GAAG,CAAC,MAAQ,SAASC,GAAQlC,EAAImC,uBAAwB,CAAK,IAAI,CAAC/B,EAAG,YAAY,CAAC6B,GAAG,CAAC,KAAOjC,EAAIqC,uBAAuB,GAAGrC,EAAIsC,MAAM,EAAE,GAC/4C,IISpB,EACA,KACA,WACA,MAI8B,O","sources":["webpack:///photos/src/components/VirtualScrolling.vue?vue&type=style&index=0&id=5e8733b7&scoped=true&lang=scss&","webpack:///photos/src/views/Albums.vue?vue&type=style&index=0&id=24a8ac3e&lang=scss&scoped=true&","webpack:///photos/src/components/VirtualScrolling.vue?vue&type=template&id=5e8733b7&scoped=true&","webpack:///photos/src/components/VirtualScrolling.vue","webpack:///photos/src/components/VirtualScrolling.vue?vue&type=script&lang=js&","webpack://photos/./src/components/VirtualScrolling.vue?876f","webpack://photos/./src/components/VirtualScrolling.vue?6e3f","webpack:///photos/src/views/Albums.vue?vue&type=template&id=24a8ac3e&scoped=true&","webpack:///photos/src/views/Albums.vue","webpack:///photos/src/views/Albums.vue?vue&type=script&lang=js&","webpack://photos/./src/views/Albums.vue?f35f","webpack://photos/./src/views/Albums.vue?2029"],"sourcesContent":["// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".vs-container[data-v-5e8733b7]{overflow-y:scroll;height:100%}.vs-rows-container[data-v-5e8733b7]{box-sizing:border-box}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/VirtualScrolling.vue\"],\"names\":[],\"mappings\":\"AAkTA,+BACC,iBAAA,CACA,WAAA,CAGD,oCACC,qBAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.vs-container {\\n\\toverflow-y: scroll;\\n\\theight: 100%;\\n}\\n\\n.vs-rows-container {\\n\\tbox-sizing: border-box;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".albums-list[data-v-24a8ac3e]{display:flex;flex-direction:column}.albums-list .album__name[data-v-24a8ac3e]{font-weight:normal;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/views/Albums.vue\"],\"names\":[],\"mappings\":\"AAsIA,8BACC,YAAA,CACA,qBAAA,CAEA,2CACC,kBAAA,CACA,eAAA,CACA,kBAAA,CACA,sBAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.albums-list {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\n\\t.album__name {\\n\\t\\tfont-weight: normal;\\n\\t\\toverflow: hidden;\\n\\t\\twhite-space: nowrap;\\n\\t\\ttext-overflow: ellipsis;\\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.useWindow && _vm.containerElement === null)?_c('div',{ref:\"container\",staticClass:\"vs-container\"},[_c('div',{ref:\"rowsContainer\",staticClass:\"vs-rows-container\",style:(_vm.rowsContainerStyle)},[_vm._t(\"default\",null,{\"renderedRows\":_vm.visibleRows}),_vm._v(\" \"),_vm._t(\"loader\")],2)]):_c('div',{ref:\"rowsContainer\",staticClass:\"vs-rows-container\",style:(_vm.rowsContainerStyle)},[_vm._t(\"default\",null,{\"renderedRows\":_vm.visibleRows}),_vm._v(\" \"),_vm._t(\"loader\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VirtualScrolling.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!./VirtualScrolling.vue?vue&type=script&lang=js&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./VirtualScrolling.vue?vue&type=style&index=0&id=5e8733b7&scoped=true&lang=scss&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./VirtualScrolling.vue?vue&type=style&index=0&id=5e8733b7&scoped=true&lang=scss&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./VirtualScrolling.vue?vue&type=template&id=5e8733b7&scoped=true&\"\nimport script from \"./VirtualScrolling.vue?vue&type=script&lang=js&\"\nexport * from \"./VirtualScrolling.vue?vue&type=script&lang=js&\"\nimport style0 from \"./VirtualScrolling.vue?vue&type=style&index=0&id=5e8733b7&scoped=true&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 \"5e8733b7\",\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',[_c('CollectionsList',{staticClass:\"albums-list\",attrs:{\"collections\":_vm.albums,\"collection-title\":_vm.t('photos', 'Albums'),\"collection-root\":_vm.t('photos', 'Albums'),\"loading\":_vm.loadingAlbums,\"error\":_vm.errorFetchingAlbums},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar collection = ref.collection;\nreturn _c('CollectionCover',{key:collection.basename,attrs:{\"link\":(\"/albums/\" + (collection.basename)),\"alt-img\":_vm.t('photos', 'Cover photo for album {albumName}', { albumName: this.collection.basename }),\"cover-url\":_vm._f(\"coverUrl\")(collection.lastPhoto)}},[_c('h2',{staticClass:\"album__name\"},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(collection.basename)+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('div',{staticClass:\"album__details\",attrs:{\"slot\":\"subtitle\"},slot:\"subtitle\"},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(collection.date)+\" ⸱ \"+_vm._s(_vm.n('photos', '%n item', '%n photos and videos', collection.nbItems))+\"\\n\\t\\t\\t\")])])}}])},[_c('div',{attrs:{\"slot\":\"header\"},slot:\"header\"},[_c('NcButton',{attrs:{\"type\":\"primary\",\"aria-label\":_vm.t('photos', 'Create a new album.')},on:{\"click\":function($event){_vm.showAlbumCreationForm = true}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Plus')]},proxy:true}])},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('photos', 'New album'))+\"\\n\\t\\t\\t\")])],1),_vm._v(\" \"),_vm._v(\" \"),_c('NcEmptyContent',{attrs:{\"slot\":\"empty-collections-list\",\"title\":_vm.t('photos', 'There is no album yet!')},slot:\"empty-collections-list\"},[_c('FolderMultipleImage',{attrs:{\"slot\":\"icon\"},slot:\"icon\"})],1)],1),_vm._v(\" \"),(_vm.showAlbumCreationForm)?_c('NcModal',{attrs:{\"title\":_vm.t('photos', 'New album')},on:{\"close\":function($event){_vm.showAlbumCreationForm = false}}},[_c('AlbumForm',{on:{\"done\":_vm.handleAlbumCreated}})],1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Albums.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!./Albums.vue?vue&type=script&lang=js&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./Albums.vue?vue&type=style&index=0&id=24a8ac3e&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./Albums.vue?vue&type=style&index=0&id=24a8ac3e&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Albums.vue?vue&type=template&id=24a8ac3e&scoped=true&\"\nimport script from \"./Albums.vue?vue&type=script&lang=js&\"\nexport * from \"./Albums.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Albums.vue?vue&type=style&index=0&id=24a8ac3e&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 \"24a8ac3e\",\n null\n \n)\n\nexport default component.exports"],"names":["___CSS_LOADER_EXPORT___","push","module","id","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","_vm","this","_h","$createElement","_c","_self","useWindow","containerElement","ref","staticClass","style","_t","visibleRows","_v","attrs","albums","t","loadingAlbums","errorFetchingAlbums","scopedSlots","_u","key","fn","collection","basename","albumName","_f","lastPhoto","_s","slot","date","n","nbItems","on","$event","showAlbumCreationForm","proxy","handleAlbumCreated","_e"],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-src_mixins_AbortControllerMixin_js-node_modules_vue-material-design-icons_Send_vue-src_views_-9eb30b.js b/js/photos-src_mixins_AbortControllerMixin_js-node_modules_vue-material-design-icons_Send_vue-src_views_-9eb30b.js deleted file mode 100644 index 8c22ea76d..000000000 --- a/js/photos-src_mixins_AbortControllerMixin_js-node_modules_vue-material-design-icons_Send_vue-src_views_-9eb30b.js +++ /dev/null @@ -1,3 +0,0 @@ -/*! For license information please see photos-src_mixins_AbortControllerMixin_js-node_modules_vue-material-design-icons_Send_vue-src_views_-9eb30b.js.LICENSE.txt */ -"use strict";(self.webpackChunkphotos=self.webpackChunkphotos||[]).push([["src_mixins_AbortControllerMixin_js-node_modules_vue-material-design-icons_Send_vue-src_views_-9eb30b"],{69363:(n,t,e)=>{e.d(t,{Z:()=>a});const a={name:"CancelRequestMixin",data:function(){return{abortController:new AbortController}},beforeDestroy:function(){this.abortController.abort()},beforeRouteLeave:function(){this.abortController.abort(),this.abortController=new AbortController}}},42357:(n,t,e)=>{e.d(t,{Z:()=>l});var a=e(87537),i=e.n(a),o=e(23645),r=e.n(o)()(i());r.push([n.id,".album-cover[data-v-9a9e277a]{display:flex;flex-direction:column;padding:16px;border-radius:12px}.album-cover[data-v-9a9e277a]:hover,.album-cover[data-v-9a9e277a]:focus{background:var(--color-background-dark)}.album-cover__image[data-v-9a9e277a]{width:350px;height:350px;object-fit:none;border-radius:12px}@media only screen and (max-width: 1200px){.album-cover__image[data-v-9a9e277a]{width:250px;height:250px}}.album-cover__image--placeholder[data-v-9a9e277a]{background:var(--color-primary-light)}.album-cover__image--placeholder[data-v-9a9e277a] .material-design-icon{width:100%;height:100%}.album-cover__image--placeholder[data-v-9a9e277a] .material-design-icon .material-design-icon__svg{fill:var(--color-primary)}.album-cover__details[data-v-9a9e277a]{display:flex;flex-direction:column;margin-top:16px;width:350px}@media only screen and (max-width: 1200px){.album-cover__details[data-v-9a9e277a]{width:250px}}.album-cover__details__first-line[data-v-9a9e277a]{display:flex}.album-cover__details__second-line[data-v-9a9e277a]{display:flex;color:var(--color-text-lighter)}.album-cover__details__name[data-v-9a9e277a]{flex-grow:1;margin:0;font-weight:normal;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}","",{version:3,sources:["webpack://./src/components/AlbumCover.vue"],names:[],mappings:"AA+FA,8BACC,YAAA,CACA,qBAAA,CACA,YAAA,CACA,kBAAA,CAEA,wEACC,uCAAA,CAGD,qCACC,WAAA,CACA,YAAA,CACA,eAAA,CACA,kBAAA,CAEA,2CAND,qCAOE,WAAA,CACA,YAAA,CAAA,CAGD,kDACC,qCAAA,CAEA,yEACC,UAAA,CACA,WAAA,CAEA,oGACC,yBAAA,CAMJ,uCACC,YAAA,CACA,qBAAA,CACA,eAAA,CACA,WAAA,CAEA,2CAND,uCAOE,WAAA,CAAA,CAGD,mDACC,YAAA,CAGD,oDACC,YAAA,CACA,+BAAA,CAGD,6CACC,WAAA,CACA,QAAA,CACA,kBAAA,CACA,eAAA,CACA,kBAAA,CACA,sBAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.album-cover {\n\tdisplay: flex;\n\tflex-direction: column;\n\tpadding: 16px;\n\tborder-radius: 12px;\n\n\t&:hover, &:focus {\n\t\tbackground: var(--color-background-dark);\n\t}\n\n\t&__image {\n\t\twidth: 350px;\n\t\theight: 350px;\n\t\tobject-fit: none;\n\t\tborder-radius: 12px;\n\n\t\t@media only screen and (max-width: 1200px) {\n\t\t\twidth: 250px;\n\t\t\theight: 250px;\n\t\t}\n\n\t\t&--placeholder {\n\t\t\tbackground: var(--color-primary-light);\n\n\t\t\t::v-deep .material-design-icon {\n\t\t\t\twidth: 100%;\n\t\t\t\theight: 100%;\n\n\t\t\t\t.material-design-icon__svg {\n\t\t\t\t\tfill: var(--color-primary);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t&__details {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tmargin-top: 16px;\n\t\twidth: 350px;\n\n\t\t@media only screen and (max-width: 1200px) {\n\t\t\twidth: 250px;\n\t\t}\n\n\t\t&__first-line {\n\t\t\tdisplay: flex;\n\t\t}\n\n\t\t&__second-line {\n\t\t\tdisplay: flex;\n\t\t\tcolor: var(--color-text-lighter);\n\t\t}\n\n\t\t&__name {\n\t\t\tflex-grow: 1;\n\t\t\tmargin: 0;\n\t\t\tfont-weight: normal;\n\t\t\toverflow: hidden;\n\t\t\twhite-space: nowrap;\n\t\t\ttext-overflow: ellipsis;\n\n\t\t}\n\t}\n\n}\n'],sourceRoot:""}]);const l=r},78504:(n,t,e)=>{e.d(t,{Z:()=>l});var a=e(87537),i=e.n(a),o=e(23645),r=e.n(o)()(i());r.push([n.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:""}]);const l=r},93671:(n,t,e)=>{e.d(t,{Z:()=>l});var a=e(87537),i=e.n(a),o=e(23645),r=e.n(o)()(i());r.push([n.id,".albums[data-v-6146de25]{display:flex;flex-direction:column}.albums__header[data-v-6146de25]{display:flex;min-height:60px;align-items:center;padding:8px 64px 32px 64px;position:-webkit-sticky;position:sticky;top:var(--header-height);width:100%;z-index:3;background:var(--color-main-background)}@media only screen and (max-width: 1200px){.albums__header[data-v-6146de25]{padding:8px 48px 32px 48px}}.albums__header button[data-v-6146de25]{margin-right:32px}.albums__list[data-v-6146de25]{padding:0px 48px 32px 48px;flex-grow:1;display:flex;flex-wrap:wrap;gap:16px;align-items:flex-start}@media only screen and (max-width: 1200px){.albums__list[data-v-6146de25]{padding:0px 12px 32px 12px;justify-content:center}}.albums__empty[data-v-6146de25]{display:flex;flex-direction:column;align-items:center}.albums__empty__button[data-v-6146de25]{margin-top:32px}.empty-content-with-illustration[data-v-6146de25] .empty-content__icon{width:200px;height:200px}.empty-content-with-illustration[data-v-6146de25] .empty-content__icon svg{width:200px;height:200px}","",{version:3,sources:["webpack://./src/views/Albums.vue"],names:[],mappings:"AAoIA,yBACC,YAAA,CACA,qBAAA,CAEA,iCACC,YAAA,CACA,eAAA,CACA,kBAAA,CACA,0BAAA,CACA,uBAAA,CAAA,eAAA,CACA,wBAAA,CACA,UAAA,CACA,SAAA,CACA,uCAAA,CAEA,2CAXD,iCAYE,0BAAA,CAAA,CAGD,wCACC,iBAAA,CAIF,+BACC,0BAAA,CACA,WAAA,CACA,YAAA,CACA,cAAA,CACA,QAAA,CACA,sBAAA,CAEA,2CARD,+BASE,0BAAA,CACA,sBAAA,CAAA,CAKF,gCACC,YAAA,CACA,qBAAA,CACA,kBAAA,CAEA,wCACC,eAAA,CAKH,wEACC,WAAA,CACA,YAAA,CAEA,4EACC,WAAA,CACA,YAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.albums {\n\tdisplay: flex;\n\tflex-direction: column;\n\n\t&__header {\n\t\tdisplay: flex;\n\t\tmin-height: 60px;\n\t\talign-items: center;\n\t\tpadding: 8px 64px 32px 64px;\n\t\tposition: sticky;\n\t\ttop: var(--header-height);\n\t\twidth: 100%;\n\t\tz-index: 3;\n\t\tbackground: var(--color-main-background);\n\n\t\t@media only screen and (max-width: 1200px) {\n\t\t\tpadding: 8px 48px 32px 48px;\n\t\t}\n\n\t\tbutton {\n\t\t\tmargin-right: 32px;\n\t\t}\n\t}\n\n\t&__list {\n\t\tpadding: 0px 48px 32px 48px;\n\t\tflex-grow: 1;\n\t\tdisplay: flex;\n\t\tflex-wrap: wrap;\n\t\tgap: 16px;\n\t\talign-items: flex-start;\n\n\t\t@media only screen and (max-width: 1200px) {\n\t\t\tpadding: 0px 12px 32px 12px;\n\t\t\tjustify-content: center;\n\t\t}\n\n\t}\n\n\t&__empty {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\talign-items: center;\n\n\t\t&__button {\n\t\t\tmargin-top: 32px;\n\t\t}\n\t}\n}\n\n.empty-content-with-illustration ::v-deep .empty-content__icon {\n\twidth: 200px;\n\theight: 200px;\n\n\tsvg {\n\t\twidth: 200px;\n\t\theight: 200px;\n\t}\n}\n'],sourceRoot:""}]);const l=r},36288:(n,t,e)=>{e.d(t,{Z:()=>i});const a={name:"ImageMultipleIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const i=(0,e(51900).Z)(a,(function(){var n=this,t=n.$createElement,e=n._self._c||t;return e("span",n._b({staticClass:"material-design-icon image-multiple-icon",attrs:{"aria-hidden":!n.title,"aria-label":n.title,role:"img"},on:{click:function(t){return n.$emit("click",t)}}},"span",n.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:n.fillColor,width:n.size,height:n.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M22,16V4A2,2 0 0,0 20,2H8A2,2 0 0,0 6,4V16A2,2 0 0,0 8,18H20A2,2 0 0,0 22,16M11,12L13.03,14.71L16,11L20,16H8M2,6V20A2,2 0 0,0 4,22H18V20H4V6"}},[n.title?e("title",[n._v(n._s(n.title))]):n._e()])])])}),[],!1,null,null,null).exports},75400:(n,t,e)=>{e.d(t,{Z:()=>i});const a={name:"SendIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const i=(0,e(51900).Z)(a,(function(){var n=this,t=n.$createElement,e=n._self._c||t;return e("span",n._b({staticClass:"material-design-icon send-icon",attrs:{"aria-hidden":!n.title,"aria-label":n.title,role:"img"},on:{click:function(t){return n.$emit("click",t)}}},"span",n.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:n.fillColor,width:n.size,height:n.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M2,21L23,12L2,3V10L17,12L2,14V21Z"}},[n.title?e("title",[n._v(n._s(n.title))]):n._e()])])])}),[],!1,null,null,null).exports},8702:(n,t,e)=>{e.d(t,{Z:()=>_});const a={name:"Loader"};var i=e(93379),o=e.n(i),r=e(7795),l=e.n(r),s=e(90569),A=e.n(s),c=e(3565),m=e.n(c),u=e(19216),p=e.n(u),d=e(44589),C=e.n(d),g=e(78504),b={};b.styleTagTransform=C(),b.setAttributes=m(),b.insert=A().bind(null,"head"),b.domAPI=l(),b.insertStyleElement=p();o()(g.Z,b);g.Z&&g.Z.locals&&g.Z.locals;const _=(0,e(51900).Z)(a,(function(){var n=this,t=n.$createElement,e=n._self._c||t;return e("div",{staticClass:"loader"},[n._t("icon",(function(){return[e("span",{staticClass:"icon-loading"})]}))],2)}),[],!1,null,null,null).exports},80632:(n,t,e)=>{e.r(t),e.d(t,{default:()=>P});var a=e(40502),i=e(65322),o=e(33476),r=e(12945),l=e(20629),s=e(36288),A=e(79753);function c(n,t){var e=Object.keys(n);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(n);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(n,t).enumerable}))),e.push.apply(e,a)}return e}function m(n){for(var t=1;t - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ diff --git a/js/photos-src_mixins_AbortControllerMixin_js-node_modules_vue-material-design-icons_Send_vue-src_views_-9eb30b.js.map b/js/photos-src_mixins_AbortControllerMixin_js-node_modules_vue-material-design-icons_Send_vue-src_views_-9eb30b.js.map deleted file mode 100644 index c7b057e1d..000000000 --- a/js/photos-src_mixins_AbortControllerMixin_js-node_modules_vue-material-design-icons_Send_vue-src_views_-9eb30b.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-src_mixins_AbortControllerMixin_js-node_modules_vue-material-design-icons_Send_vue-src_views_-9eb30b.js?v=17dcb22c595d523badc6","mappings":";oNAsBA,SACCA,KAAM,qBAENC,KAHc,WAIb,MAAO,CACNC,gBAAiB,IAAIC,gBAEtB,EAEDC,cATc,WAUbC,KAAKH,gBAAgBI,OACrB,EAEDC,iBAbc,WAcbF,KAAKH,gBAAgBI,QACrBD,KAAKH,gBAAkB,IAAIC,eAC3B,wECnCEK,QAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,0sCAA2sC,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,6CAA6C,MAAQ,GAAG,SAAW,8YAA8Y,eAAiB,CAAC,43DAA48D,WAAa,MAE3sH,+ECJIH,QAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,oCAAqC,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,yCAAyC,MAAQ,GAAG,SAAW,4BAA4B,eAAiB,CAAC,kqBAAkvB,WAAa,MAEr9B,+ECJIH,QAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,8hCAA+hC,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,oCAAoC,MAAQ,GAAG,SAAW,+YAA+Y,eAAiB,CAAC,q1DAAq6D,WAAa,MAEh/G,4CCaA,MCpBiH,EDoBjH,CACEX,KAAM,oBACNY,MAAO,CAAC,SACRC,MAAO,CACLC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,cACd,GCRW,WAAa,IAAIG,EAAIhB,KAASiB,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOH,EAAIK,GAAG,CAACC,YAAY,2CAA2CC,MAAM,CAAC,eAAeP,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOe,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOT,EAAIU,MAAM,QAASD,EAAO,IAAI,OAAOT,EAAIW,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOP,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACK,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,iJAAiJ,CAAEP,EAAS,MAAEG,EAAG,QAAQ,CAACH,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIP,UAAUO,EAAIc,UAAU,GACxqB,IDUpB,EACA,KACA,KACA,MAI8B,0CEEhC,MCpBwG,EDoBxG,CACEnC,KAAM,WACNY,MAAO,CAAC,SACRC,MAAO,CACLC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,cACd,GCRW,WAAa,IAAIG,EAAIhB,KAASiB,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOH,EAAIK,GAAG,CAACC,YAAY,iCAAiCC,MAAM,CAAC,eAAeP,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOe,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOT,EAAIU,MAAM,QAASD,EAAO,IAAI,OAAOT,EAAIW,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOP,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACK,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,sCAAsC,CAAEP,EAAS,MAAEG,EAAG,QAAQ,CAACH,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIP,UAAUO,EAAIc,UAAU,GACnjB,IDUpB,EACA,KACA,KACA,MAI8B,yCEahC,MC/BuK,ED+BvK,CACA,oJErBIC,EAAU,CAAC,EAEfA,EAAQC,kBAAoB,IAC5BD,EAAQE,cAAgB,IAElBF,EAAQG,OAAS,SAAc,KAAM,QAE3CH,EAAQI,OAAS,IACjBJ,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKJ,KAAW,YAAiB,WCPlD,SAXgB,cACd,GCTW,WAAa,IAAIf,EAAIhB,KAASiB,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACG,YAAY,UAAU,CAACN,EAAIqB,GAAG,QAAO,WAAW,MAAO,CAAClB,EAAG,OAAO,CAACG,YAAY,iBAAiB,KAAI,EAAE,GAC1L,IDWpB,EACA,KACA,KACA,MAI8B,uDEnBhC,wwBCsDA,MCtD2K,EDsD3K,CACA,kBAEA,YAGA,mBAGA,OACA,UACA,YACA,cAIA,iBACA,SACA,QACA,YAHA,IASA,MATA,WAUA,iCACA,EAKA,SAhBA,WAiBA,oHACA,0IE7EIS,EAAU,CAAC,EAEfA,EAAQC,kBAAoB,IAC5BD,EAAQE,cAAgB,IAElBF,EAAQG,OAAS,SAAc,KAAM,QAE3CH,EAAQI,OAAS,IACjBJ,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKJ,KAAW,YAAiB,0BCPlD,SAXgB,OACd,GCTW,WAAa,IAAIf,EAAIhB,KAASiB,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAOE,EAAG,cAAc,CAACG,YAAY,cAAcC,MAAM,CAAC,GAAM,WAAaP,EAAIsB,WAAY,CAA0B,IAAxBtB,EAAIuB,MAAMC,UAAiBrB,EAAG,MAAM,CAACG,YAAY,qBAAqBC,MAAM,CAAC,IAAMP,EAAIyB,YAAYtB,EAAG,MAAM,CAACG,YAAY,sDAAsD,CAACH,EAAG,gBAAgB,CAACI,MAAM,CAAC,KAAO,QAAQ,GAAGP,EAAIY,GAAG,KAAKT,EAAG,MAAM,CAACG,YAAY,wBAAwB,CAACH,EAAG,MAAM,CAACG,YAAY,oCAAoC,CAACH,EAAG,KAAK,CAACG,YAAY,8BAA8B,CAACN,EAAIY,GAAG,aAAaZ,EAAIa,GAAGb,EAAIsB,UAAU,gBAAgBtB,EAAIY,GAAG,KAAKT,EAAG,MAAM,CAACG,YAAY,qCAAqC,CAACN,EAAIY,GAAG,WAAWZ,EAAIa,GAAGb,EAAIuB,MAAMG,MAAM,MAAM1B,EAAIa,GAAGb,EAAI2B,EAAE,SAAU,UAAW,uBAAwB3B,EAAIuB,MAAMK,UAAU,eAAe,GACtzB,IDWpB,EACA,KACA,WACA,MAI8B,iCEuEhC,MC1FuK,ED0FvK,CACA,cACA,YACA,aACA,4BACA,cACA,WACA,cACA,gBACA,SACA,yBAGA,QACA,KAGA,KAjBA,WAkBA,OACA,yBAEA,EAEA,UAIA,SAJA,WAKA,0CACA,GAGA,SACA,mBADA,YACA,cACA,8BACA,gDACA,mBEnHI,EAAU,CAAC,EAEf,EAAQZ,kBAAoB,IAC5B,EAAQC,cAAgB,IAElB,EAAQC,OAAS,SAAc,KAAM,QAE3C,EAAQC,OAAS,IACjB,EAAQC,mBAAqB,IAEhB,IAAI,IAAS,GAKJ,KAAW,YAAiB,WCPlD,SAXgB,OACd,GTTW,WAAa,IAAIpB,EAAIhB,KAASiB,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAQD,EAAuB,oBAAEG,EAAG,eAAe,CAACH,EAAIY,GAAG,OAAOZ,EAAIa,GAAGb,EAAI6B,EAAE,SAAU,sBAAsB,QAAQ1B,EAAG,MAAM,CAACG,YAAY,UAAU,CAACH,EAAG,MAAM,CAACG,YAAY,kBAAkB,CAACH,EAAG,SAAS,CAACI,MAAM,CAAC,KAAO,UAAU,aAAaP,EAAI6B,EAAE,SAAU,wBAAwBrB,GAAG,CAAC,MAAQ,SAASC,GAAQT,EAAI8B,uBAAwB,CAAI,GAAGC,YAAY/B,EAAIgC,GAAG,CAAC,CAACC,IAAI,OAAOC,GAAG,WAAW,MAAO,CAAC/B,EAAG,QAAQ,EAAEgC,OAAM,MAAS,CAACnC,EAAIY,GAAG,WAAWZ,EAAIa,GAAGb,EAAI6B,EAAE,SAAU,cAAc,YAAY7B,EAAIY,GAAG,KAAMZ,EAAiB,cAAEG,EAAG,UAAUH,EAAIc,MAAM,GAAGd,EAAIY,GAAG,KAAMZ,EAAIoC,WAAapC,EAAIqC,cAAelC,EAAG,MAAM,CAACG,YAAY,iBAAiB,CAACH,EAAG,eAAe,CAAC4B,YAAY/B,EAAIgC,GAAG,CAAC,CAACC,IAAI,OAAOC,GAAG,WAAW,MAAO,CAAC/B,EAAG,uBAAuB,EAAEgC,OAAM,GAAM,CAACF,IAAI,OAAOC,GAAG,WAAW,MAAO,CAAClC,EAAIY,GAAG,aAAaZ,EAAIa,GAAGb,EAAI6B,EAAE,SAAU,2BAA2B,YAAY,EAAEM,OAAM,IAAO,MAAK,EAAM,cAAcnC,EAAIY,GAAG,KAAKT,EAAG,SAAS,CAACG,YAAY,wBAAwBC,MAAM,CAAC,KAAO,UAAU,aAAaP,EAAI6B,EAAE,SAAU,uBAAuBrB,GAAG,CAAC,MAAQ,SAASC,GAAQT,EAAI8B,uBAAwB,CAAI,GAAGC,YAAY/B,EAAIgC,GAAG,CAAC,CAACC,IAAI,OAAOC,GAAG,WAAW,MAAO,CAAC/B,EAAG,QAAQ,EAAEgC,OAAM,IAAO,MAAK,EAAM,aAAa,CAACnC,EAAIY,GAAG,WAAWZ,EAAIa,GAAGb,EAAI6B,EAAE,SAAU,QAAQ,aAAa,GAAK7B,EAAIoC,SAA6LpC,EAAIc,KAAvLX,EAAG,MAAM,CAACG,YAAY,gBAAgBN,EAAIsC,GAAItC,EAAU,QAAE,SAASuB,GAAO,OAAOpB,EAAG,aAAa,CAAC8B,IAAIV,EAAMgB,SAASjC,YAAY,QAAQC,MAAM,CAAC,YAAYgB,EAAMgB,WAAW,IAAG,GAAYvC,EAAIY,GAAG,KAAMZ,EAAyB,sBAAEG,EAAG,QAAQ,CAACI,MAAM,CAAC,MAAQP,EAAI6B,EAAE,SAAU,cAAcrB,GAAG,CAAC,MAAQ,SAASC,GAAQT,EAAI8B,uBAAwB,CAAK,IAAI,CAAC3B,EAAG,YAAY,CAACK,GAAG,CAAC,KAAOR,EAAIwC,uBAAuB,GAAGxC,EAAIc,MAAM,EAAE,GAC5vD,ISWpB,EACA,KACA,WACA,MAI8B","sources":["webpack:///photos/src/mixins/AbortControllerMixin.js","webpack:///photos/src/components/AlbumCover.vue?vue&type=style&index=0&id=9a9e277a&lang=scss&scoped=true&","webpack:///photos/src/components/Loader.vue?vue&type=style&index=0&lang=scss&","webpack:///photos/src/views/Albums.vue?vue&type=style&index=0&id=6146de25&lang=scss&scoped=true&","webpack:///photos/node_modules/vue-material-design-icons/ImageMultiple.vue","webpack:///photos/node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/ImageMultiple.vue?126d","webpack:///photos/node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=template&id=21a95e74&","webpack:///photos/node_modules/vue-material-design-icons/Send.vue","webpack:///photos/node_modules/vue-material-design-icons/Send.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/Send.vue?0295","webpack:///photos/node_modules/vue-material-design-icons/Send.vue?vue&type=template&id=46f29e66&","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/Albums.vue?vue&type=template&id=6146de25&scoped=true&","webpack:///photos/src/components/AlbumCover.vue","webpack:///photos/src/components/AlbumCover.vue?vue&type=script&lang=js&","webpack://photos/./src/components/AlbumCover.vue?1fc3","webpack://photos/./src/components/AlbumCover.vue?71ef","webpack:///photos/src/components/AlbumCover.vue?vue&type=template&id=9a9e277a&scoped=true&","webpack:///photos/src/views/Albums.vue","webpack:///photos/src/views/Albums.vue?vue&type=script&lang=js&","webpack://photos/./src/views/Albums.vue?9da2","webpack://photos/./src/views/Albums.vue?2029"],"sourcesContent":["/**\n * @copyright Copyright (c) 2022 Louis Chemineau \n *\n * @author Louis Chemineau \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 .\n *\n */\n\nexport default {\n\tname: 'CancelRequestMixin',\n\n\tdata() {\n\t\treturn {\n\t\t\tabortController: new AbortController(),\n\t\t}\n\t},\n\n\tbeforeDestroy() {\n\t\tthis.abortController.abort()\n\t},\n\n\tbeforeRouteLeave() {\n\t\tthis.abortController.abort()\n\t\tthis.abortController = new AbortController()\n\t},\n}\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".album-cover[data-v-9a9e277a]{display:flex;flex-direction:column;padding:16px;border-radius:12px}.album-cover[data-v-9a9e277a]:hover,.album-cover[data-v-9a9e277a]:focus{background:var(--color-background-dark)}.album-cover__image[data-v-9a9e277a]{width:350px;height:350px;object-fit:none;border-radius:12px}@media only screen and (max-width: 1200px){.album-cover__image[data-v-9a9e277a]{width:250px;height:250px}}.album-cover__image--placeholder[data-v-9a9e277a]{background:var(--color-primary-light)}.album-cover__image--placeholder[data-v-9a9e277a] .material-design-icon{width:100%;height:100%}.album-cover__image--placeholder[data-v-9a9e277a] .material-design-icon .material-design-icon__svg{fill:var(--color-primary)}.album-cover__details[data-v-9a9e277a]{display:flex;flex-direction:column;margin-top:16px;width:350px}@media only screen and (max-width: 1200px){.album-cover__details[data-v-9a9e277a]{width:250px}}.album-cover__details__first-line[data-v-9a9e277a]{display:flex}.album-cover__details__second-line[data-v-9a9e277a]{display:flex;color:var(--color-text-lighter)}.album-cover__details__name[data-v-9a9e277a]{flex-grow:1;margin:0;font-weight:normal;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/AlbumCover.vue\"],\"names\":[],\"mappings\":\"AA+FA,8BACC,YAAA,CACA,qBAAA,CACA,YAAA,CACA,kBAAA,CAEA,wEACC,uCAAA,CAGD,qCACC,WAAA,CACA,YAAA,CACA,eAAA,CACA,kBAAA,CAEA,2CAND,qCAOE,WAAA,CACA,YAAA,CAAA,CAGD,kDACC,qCAAA,CAEA,yEACC,UAAA,CACA,WAAA,CAEA,oGACC,yBAAA,CAMJ,uCACC,YAAA,CACA,qBAAA,CACA,eAAA,CACA,WAAA,CAEA,2CAND,uCAOE,WAAA,CAAA,CAGD,mDACC,YAAA,CAGD,oDACC,YAAA,CACA,+BAAA,CAGD,6CACC,WAAA,CACA,QAAA,CACA,kBAAA,CACA,eAAA,CACA,kBAAA,CACA,sBAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.album-cover {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\tpadding: 16px;\\n\\tborder-radius: 12px;\\n\\n\\t&:hover, &:focus {\\n\\t\\tbackground: var(--color-background-dark);\\n\\t}\\n\\n\\t&__image {\\n\\t\\twidth: 350px;\\n\\t\\theight: 350px;\\n\\t\\tobject-fit: none;\\n\\t\\tborder-radius: 12px;\\n\\n\\t\\t@media only screen and (max-width: 1200px) {\\n\\t\\t\\twidth: 250px;\\n\\t\\t\\theight: 250px;\\n\\t\\t}\\n\\n\\t\\t&--placeholder {\\n\\t\\t\\tbackground: var(--color-primary-light);\\n\\n\\t\\t\\t::v-deep .material-design-icon {\\n\\t\\t\\t\\twidth: 100%;\\n\\t\\t\\t\\theight: 100%;\\n\\n\\t\\t\\t\\t.material-design-icon__svg {\\n\\t\\t\\t\\t\\tfill: var(--color-primary);\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t&__details {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\tmargin-top: 16px;\\n\\t\\twidth: 350px;\\n\\n\\t\\t@media only screen and (max-width: 1200px) {\\n\\t\\t\\twidth: 250px;\\n\\t\\t}\\n\\n\\t\\t&__first-line {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t}\\n\\n\\t\\t&__second-line {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tcolor: var(--color-text-lighter);\\n\\t\\t}\\n\\n\\t\\t&__name {\\n\\t\\t\\tflex-grow: 1;\\n\\t\\t\\tmargin: 0;\\n\\t\\t\\tfont-weight: normal;\\n\\t\\t\\toverflow: hidden;\\n\\t\\t\\twhite-space: nowrap;\\n\\t\\t\\ttext-overflow: ellipsis;\\n\\n\\t\\t}\\n\\t}\\n\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\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_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".albums[data-v-6146de25]{display:flex;flex-direction:column}.albums__header[data-v-6146de25]{display:flex;min-height:60px;align-items:center;padding:8px 64px 32px 64px;position:-webkit-sticky;position:sticky;top:var(--header-height);width:100%;z-index:3;background:var(--color-main-background)}@media only screen and (max-width: 1200px){.albums__header[data-v-6146de25]{padding:8px 48px 32px 48px}}.albums__header button[data-v-6146de25]{margin-right:32px}.albums__list[data-v-6146de25]{padding:0px 48px 32px 48px;flex-grow:1;display:flex;flex-wrap:wrap;gap:16px;align-items:flex-start}@media only screen and (max-width: 1200px){.albums__list[data-v-6146de25]{padding:0px 12px 32px 12px;justify-content:center}}.albums__empty[data-v-6146de25]{display:flex;flex-direction:column;align-items:center}.albums__empty__button[data-v-6146de25]{margin-top:32px}.empty-content-with-illustration[data-v-6146de25] .empty-content__icon{width:200px;height:200px}.empty-content-with-illustration[data-v-6146de25] .empty-content__icon svg{width:200px;height:200px}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/views/Albums.vue\"],\"names\":[],\"mappings\":\"AAoIA,yBACC,YAAA,CACA,qBAAA,CAEA,iCACC,YAAA,CACA,eAAA,CACA,kBAAA,CACA,0BAAA,CACA,uBAAA,CAAA,eAAA,CACA,wBAAA,CACA,UAAA,CACA,SAAA,CACA,uCAAA,CAEA,2CAXD,iCAYE,0BAAA,CAAA,CAGD,wCACC,iBAAA,CAIF,+BACC,0BAAA,CACA,WAAA,CACA,YAAA,CACA,cAAA,CACA,QAAA,CACA,sBAAA,CAEA,2CARD,+BASE,0BAAA,CACA,sBAAA,CAAA,CAKF,gCACC,YAAA,CACA,qBAAA,CACA,kBAAA,CAEA,wCACC,eAAA,CAKH,wEACC,WAAA,CACA,YAAA,CAEA,4EACC,WAAA,CACA,YAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.albums {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\n\\t&__header {\\n\\t\\tdisplay: flex;\\n\\t\\tmin-height: 60px;\\n\\t\\talign-items: center;\\n\\t\\tpadding: 8px 64px 32px 64px;\\n\\t\\tposition: sticky;\\n\\t\\ttop: var(--header-height);\\n\\t\\twidth: 100%;\\n\\t\\tz-index: 3;\\n\\t\\tbackground: var(--color-main-background);\\n\\n\\t\\t@media only screen and (max-width: 1200px) {\\n\\t\\t\\tpadding: 8px 48px 32px 48px;\\n\\t\\t}\\n\\n\\t\\tbutton {\\n\\t\\t\\tmargin-right: 32px;\\n\\t\\t}\\n\\t}\\n\\n\\t&__list {\\n\\t\\tpadding: 0px 48px 32px 48px;\\n\\t\\tflex-grow: 1;\\n\\t\\tdisplay: flex;\\n\\t\\tflex-wrap: wrap;\\n\\t\\tgap: 16px;\\n\\t\\talign-items: flex-start;\\n\\n\\t\\t@media only screen and (max-width: 1200px) {\\n\\t\\t\\tpadding: 0px 12px 32px 12px;\\n\\t\\t\\tjustify-content: center;\\n\\t\\t}\\n\\n\\t}\\n\\n\\t&__empty {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\talign-items: center;\\n\\n\\t\\t&__button {\\n\\t\\t\\tmargin-top: 32px;\\n\\t\\t}\\n\\t}\\n}\\n\\n.empty-content-with-illustration ::v-deep .empty-content__icon {\\n\\twidth: 200px;\\n\\theight: 200px;\\n\\n\\tsvg {\\n\\t\\twidth: 200px;\\n\\t\\theight: 200px;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ImageMultiple.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ImageMultiple.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ImageMultiple.vue?vue&type=template&id=21a95e74&\"\nimport script from \"./ImageMultiple.vue?vue&type=script&lang=js&\"\nexport * from \"./ImageMultiple.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon image-multiple-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M22,16V4A2,2 0 0,0 20,2H8A2,2 0 0,0 6,4V16A2,2 0 0,0 8,18H20A2,2 0 0,0 22,16M11,12L13.03,14.71L16,11L20,16H8M2,6V20A2,2 0 0,0 4,22H18V20H4V6\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Send.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Send.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Send.vue?vue&type=template&id=46f29e66&\"\nimport script from \"./Send.vue?vue&type=script&lang=js&\"\nexport * from \"./Send.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon send-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M2,21L23,12L2,3V10L17,12L2,14V21Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\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&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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 \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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 export default content && content.locals ? content.locals : undefined;\n","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 }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.errorFetchingAlbums)?_c('EmptyContent',[_vm._v(\"\\n\\t\"+_vm._s(_vm.t('photos', 'An error occurred'))+\"\\n\")]):_c('div',{staticClass:\"albums\"},[_c('div',{staticClass:\"albums__header\"},[_c('Button',{attrs:{\"type\":\"primary\",\"aria-label\":_vm.t('photos', 'Create a new album.')},on:{\"click\":function($event){_vm.showAlbumCreationForm = true}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Plus')]},proxy:true}])},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('photos', 'New album'))+\"\\n\\t\\t\")]),_vm._v(\" \"),(_vm.loadingAlbums)?_c('Loader'):_vm._e()],1),_vm._v(\" \"),(_vm.noAlbums && !_vm.loadingAlbums)?_c('div',{staticClass:\"albums__empty\"},[_c('EmptyContent',{scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('FolderMultipleImage')]},proxy:true},{key:\"desc\",fn:function(){return [_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('photos', \"There is no album yet!\"))+\"\\n\\t\\t\\t\")]},proxy:true}],null,false,3685789295)}),_vm._v(\" \"),_c('Button',{staticClass:\"albums__empty__button\",attrs:{\"type\":\"primary\",\"aria-label\":_vm.t('photos', 'Create a new album')},on:{\"click\":function($event){_vm.showAlbumCreationForm = true}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Plus')]},proxy:true}],null,false,1489515321)},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('photos', \"Add\"))+\"\\n\\t\\t\")])],1):(!_vm.noAlbums)?_c('div',{staticClass:\"albums__list\"},_vm._l((_vm.albums),function(album){return _c('AlbumCover',{key:album.basename,staticClass:\"album\",attrs:{\"base-name\":album.basename}})}),1):_vm._e(),_vm._v(\" \"),(_vm.showAlbumCreationForm)?_c('Modal',{attrs:{\"title\":_vm.t('photos', 'New album')},on:{\"close\":function($event){_vm.showAlbumCreationForm = false}}},[_c('AlbumForm',{on:{\"done\":_vm.handleAlbumCreated}})],1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AlbumCover.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!./AlbumCover.vue?vue&type=script&lang=js&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./AlbumCover.vue?vue&type=style&index=0&id=9a9e277a&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./AlbumCover.vue?vue&type=style&index=0&id=9a9e277a&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./AlbumCover.vue?vue&type=template&id=9a9e277a&scoped=true&\"\nimport script from \"./AlbumCover.vue?vue&type=script&lang=js&\"\nexport * from \"./AlbumCover.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AlbumCover.vue?vue&type=style&index=0&id=9a9e277a&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 \"9a9e277a\",\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('router-link',{staticClass:\"album-cover\",attrs:{\"to\":(\"/albums/\" + _vm.baseName)}},[(_vm.album.lastPhoto !== 0)?_c('img',{staticClass:\"album-cover__image\",attrs:{\"src\":_vm.coverUrl}}):_c('div',{staticClass:\"album-cover__image album-cover__image--placeholder\"},[_c('ImageMultiple',{attrs:{\"size\":128}})],1),_vm._v(\" \"),_c('div',{staticClass:\"album-cover__details\"},[_c('div',{staticClass:\"album-cover__details__first-line\"},[_c('h2',{staticClass:\"album-cover__details__name\"},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.baseName)+\"\\n\\t\\t\\t\")])]),_vm._v(\" \"),_c('div',{staticClass:\"album-cover__details__second-line\"},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.album.date)+\" ⸱ \"+_vm._s(_vm.n('photos', '%n item', '%n photos and videos', _vm.album.nbItems))+\"\\n\\t\\t\")])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Albums.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!./Albums.vue?vue&type=script&lang=js&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./Albums.vue?vue&type=style&index=0&id=6146de25&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./Albums.vue?vue&type=style&index=0&id=6146de25&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Albums.vue?vue&type=template&id=6146de25&scoped=true&\"\nimport script from \"./Albums.vue?vue&type=script&lang=js&\"\nexport * from \"./Albums.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Albums.vue?vue&type=style&index=0&id=6146de25&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 \"6146de25\",\n null\n \n)\n\nexport default component.exports"],"names":["name","data","abortController","AbortController","beforeDestroy","this","abort","beforeRouteLeave","___CSS_LOADER_EXPORT___","push","module","id","emits","props","title","type","String","fillColor","default","size","Number","_vm","_h","$createElement","_c","_self","_b","staticClass","attrs","on","$event","$emit","$attrs","_v","_s","_e","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","_t","baseName","album","lastPhoto","coverUrl","date","n","nbItems","t","showAlbumCreationForm","scopedSlots","_u","key","fn","proxy","noAlbums","loadingAlbums","_l","basename","handleAlbumCreated"],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-src_mixins_AbortControllerMixin_js-src_components_CollectionCover_vue-src_components_Collecti-e80ab0.js b/js/photos-src_mixins_AbortControllerMixin_js-src_components_CollectionCover_vue-src_components_Collecti-e80ab0.js deleted file mode 100644 index 90f1f662d..000000000 --- a/js/photos-src_mixins_AbortControllerMixin_js-src_components_CollectionCover_vue-src_components_Collecti-e80ab0.js +++ /dev/null @@ -1,3 +0,0 @@ -/*! For license information please see photos-src_mixins_AbortControllerMixin_js-src_components_CollectionCover_vue-src_components_Collecti-e80ab0.js.LICENSE.txt */ -"use strict";(self.webpackChunkphotos=self.webpackChunkphotos||[]).push([["src_mixins_AbortControllerMixin_js-src_components_CollectionCover_vue-src_components_Collecti-e80ab0"],{69363:(n,t,e)=>{e.d(t,{Z:()=>o});const o={name:"AbortControllerMixin",data:function(){return{abortController:new AbortController}},beforeDestroy:function(){this.abortController.abort()},beforeRouteLeave:function(n,t,e){this.abortController.abort(),this.abortController=new AbortController,e()}}},57910:(n,t,e)=>{e.d(t,{Z:()=>a});var o=e(87537),i=e.n(o),r=e(23645),l=e.n(r)()(i());l.push([n.id,".collection-cover[data-v-1d409e56]{display:flex;flex-direction:column;padding:16px;border-radius:var(--border-radius-large)}.collection-cover[data-v-1d409e56]:hover,.collection-cover[data-v-1d409e56]:focus{background:var(--color-background-dark)}.collection-cover__image[data-v-1d409e56]{width:350px;height:350px;object-fit:none;border-radius:var(--border-radius-large)}@media only screen and (max-width: 1200px){.collection-cover__image[data-v-1d409e56]{width:250px;height:250px}}.collection-cover__image--placeholder[data-v-1d409e56]{background:var(--color-primary-light)}.collection-cover__image--placeholder[data-v-1d409e56] .material-design-icon{width:100%;height:100%}.collection-cover__image--placeholder[data-v-1d409e56] .material-design-icon .material-design-icon__svg{fill:var(--color-primary)}.collection-cover__details[data-v-1d409e56]{display:flex;flex-direction:column;margin-top:16px;width:350px}@media only screen and (max-width: 1200px){.collection-cover__details[data-v-1d409e56]{width:250px}}.collection-cover__details__title[data-v-1d409e56]{display:flex}.collection-cover__details__subtitle[data-v-1d409e56]{display:flex;color:var(--color-text-lighter)}","",{version:3,sources:["webpack://./src/components/CollectionCover.vue"],names:[],mappings:"AAmFA,mCACC,YAAA,CACA,qBAAA,CACA,YAAA,CACA,wCAAA,CAEA,kFACC,uCAAA,CAGD,0CACC,WAAA,CACA,YAAA,CACA,eAAA,CACA,wCAAA,CAEA,2CAND,0CAOE,WAAA,CACA,YAAA,CAAA,CAGD,uDACC,qCAAA,CAEA,8EACC,UAAA,CACA,WAAA,CAEA,yGACC,yBAAA,CAMJ,4CACC,YAAA,CACA,qBAAA,CACA,eAAA,CACA,WAAA,CAEA,2CAND,4CAOE,WAAA,CAAA,CAGD,mDACC,YAAA,CAGD,sDACC,YAAA,CACA,+BAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.collection-cover {\n\tdisplay: flex;\n\tflex-direction: column;\n\tpadding: 16px;\n\tborder-radius: var(--border-radius-large);\n\n\t&:hover, &:focus {\n\t\tbackground: var(--color-background-dark);\n\t}\n\n\t&__image {\n\t\twidth: 350px;\n\t\theight: 350px;\n\t\tobject-fit: none;\n\t\tborder-radius: var(--border-radius-large);\n\n\t\t@media only screen and (max-width: 1200px) {\n\t\t\twidth: 250px;\n\t\t\theight: 250px;\n\t\t}\n\n\t\t&--placeholder {\n\t\t\tbackground: var(--color-primary-light);\n\n\t\t\t::v-deep .material-design-icon {\n\t\t\t\twidth: 100%;\n\t\t\t\theight: 100%;\n\n\t\t\t\t.material-design-icon__svg {\n\t\t\t\t\tfill: var(--color-primary);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t&__details {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tmargin-top: 16px;\n\t\twidth: 350px;\n\n\t\t@media only screen and (max-width: 1200px) {\n\t\t\twidth: 250px;\n\t\t}\n\n\t\t&__title {\n\t\t\tdisplay: flex;\n\t\t}\n\n\t\t&__subtitle {\n\t\t\tdisplay: flex;\n\t\t\tcolor: var(--color-text-lighter);\n\t\t}\n\t}\n\n}\n'],sourceRoot:""}]);const a=l},8108:(n,t,e)=>{e.d(t,{Z:()=>a});var o=e(87537),i=e.n(o),r=e(23645),l=e.n(r)()(i());l.push([n.id,".collections[data-v-f7f1b23a]{display:flex;flex-direction:column;height:100%}.collections__header[data-v-f7f1b23a]{display:flex;align-items:center;position:-webkit-sticky;position:sticky;top:0;z-index:3;width:100%;height:60px;padding:0 64px;box-sizing:content-box;background:var(--color-main-background)}@media only screen and (max-width: 1200px){.collections__header[data-v-f7f1b23a]{padding:0 48px}}.collections__header button[data-v-f7f1b23a]{margin-right:32px}.collections__list[data-v-f7f1b23a]{padding:32px 48px;flex-grow:1;display:flex;flex-wrap:wrap;gap:16px;align-items:flex-start;height:calc(100% - 60px);overflow-x:scroll}@media only screen and (max-width: 1200px){.collections__list[data-v-f7f1b23a]{padding:32px 12px;justify-content:center}}","",{version:3,sources:["webpack://./src/components/CollectionsList.vue"],names:[],mappings:"AA+FA,8BACC,YAAA,CACA,qBAAA,CACA,WAAA,CAEA,sCACC,YAAA,CACA,kBAAA,CACA,uBAAA,CAAA,eAAA,CACA,KAAA,CACA,SAAA,CACA,UAAA,CACA,WAAA,CACA,cAAA,CACA,sBAAA,CACA,uCAAA,CAEA,2CAZD,sCAaE,cAAA,CAAA,CAGD,6CACC,iBAAA,CAIF,oCACC,iBAAA,CACA,WAAA,CACA,YAAA,CACA,cAAA,CACA,QAAA,CACA,sBAAA,CACA,wBAAA,CACA,iBAAA,CAEA,2CAVD,oCAWE,iBAAA,CACA,sBAAA,CAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.collections {\n\tdisplay: flex;\n\tflex-direction: column;\n\theight: 100%;\n\n\t&__header {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tposition: sticky;\n\t\ttop: 0;\n\t\tz-index: 3;\n\t\twidth: 100%;\n\t\theight: 60px;\n\t\tpadding: 0 64px;\n\t\tbox-sizing: content-box;\n\t\tbackground: var(--color-main-background);\n\n\t\t@media only screen and (max-width: 1200px) {\n\t\t\tpadding: 0 48px;\n\t\t}\n\n\t\tbutton {\n\t\t\tmargin-right: 32px;\n\t\t}\n\t}\n\n\t&__list {\n\t\tpadding: 32px 48px;\n\t\tflex-grow: 1;\n\t\tdisplay: flex;\n\t\tflex-wrap: wrap;\n\t\tgap: 16px;\n\t\talign-items: flex-start;\n\t\theight: calc(100% - 60px);\n\t\toverflow-x: scroll;\n\n\t\t@media only screen and (max-width: 1200px) {\n\t\t\tpadding: 32px 12px;\n\t\t\tjustify-content: center;\n\t\t}\n\t}\n}\n'],sourceRoot:""}]);const a=l},36288:(n,t,e)=>{e.d(t,{Z:()=>i});const o={name:"ImageMultipleIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const i=(0,e(51900).Z)(o,(function(){var n=this,t=n.$createElement,e=n._self._c||t;return e("span",n._b({staticClass:"material-design-icon image-multiple-icon",attrs:{"aria-hidden":!n.title,"aria-label":n.title,role:"img"},on:{click:function(t){return n.$emit("click",t)}}},"span",n.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:n.fillColor,width:n.size,height:n.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M22,16V4A2,2 0 0,0 20,2H8A2,2 0 0,0 6,4V16A2,2 0 0,0 8,18H20A2,2 0 0,0 22,16M11,12L13.03,14.71L16,11L20,16H8M2,6V20A2,2 0 0,0 4,22H18V20H4V6"}},[n.title?e("title",[n._v(n._s(n.title))]):n._e()])])])}),[],!1,null,null,null).exports},16840:(n,t,e)=>{e.d(t,{Z:()=>h});var o=e(20629);function i(n,t){var e=Object.keys(n);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(n);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(n,t).enumerable}))),e.push.apply(e,o)}return e}function r(n,t,e){return t in n?Object.defineProperty(n,t,{value:e,enumerable:!0,configurable:!0,writable:!0}):n[t]=e,n}const l={name:"CollectionCover",components:{ImageMultiple:e(36288).Z},props:{coverUrl:{type:String,required:!0},altImg:{type:String,required:!0},link:{type:String,required:!0}},computed:function(n){for(var t=1;t{e.d(t,{Z:()=>x});var o=e(33476);const i={name:"CollectionsList",components:{NcEmptyContent:o.NcEmptyContent,NcLoadingIcon:o.NcLoadingIcon},props:{collections:{type:Object,required:!0},collectionTitle:{type:String,required:!0},collectionRoot:{type:String,required:!0},loading:{type:Boolean,default:!1},error:{type:Object,default:null}},computed:{noCollection:function(){return 0===Object.keys(this.collections).length}}};var r=e(93379),l=e.n(r),a=e(7795),c=e.n(a),A=e(90569),s=e.n(A),d=e(3565),p=e.n(d),C=e(19216),g=e.n(C),m=e(44589),u=e.n(m),v=e(8108),_={};_.styleTagTransform=u(),_.setAttributes=p(),_.insert=s().bind(null,"head"),_.domAPI=c(),_.insertStyleElement=g();l()(v.Z,_);v.Z&&v.Z.locals&&v.Z.locals;const x=(0,e(51900).Z)(i,(function(){var n=this,t=n.$createElement,e=n._self._c||t;return n.error?e("NcEmptyContent",[n._v("\n\t"+n._s(n.t("photos","An error occurred"))+"\n")]):e("div",{staticClass:"collections"},[e("HeaderNavigation",{key:"navigation",attrs:{loading:n.loading,title:n.collectionTitle,"root-title":n.rootTitle},on:{refresh:n.onRefresh}},[n._t("header"),n._v(" "),n.loading?e("NcLoadingIcon"):n._e()],2),n._v(" "),n.noCollection&&!n.loading?n._t("empty-collections-list"):n.noCollection?n._e():e("div",{staticClass:"collections__list"},[n._l(n.collections,(function(t){return n._t("default",null,{collection:t})}))],2)],2)}),[],!1,null,"f7f1b23a",null).exports}}]); -//# sourceMappingURL=photos-src_mixins_AbortControllerMixin_js-src_components_CollectionCover_vue-src_components_Collecti-e80ab0.js.map?v=5144231bb3ad7c2c2102 \ No newline at end of file diff --git a/js/photos-src_mixins_AbortControllerMixin_js-src_components_CollectionCover_vue-src_components_Collecti-e80ab0.js.LICENSE.txt b/js/photos-src_mixins_AbortControllerMixin_js-src_components_CollectionCover_vue-src_components_Collecti-e80ab0.js.LICENSE.txt deleted file mode 100644 index 6f3657b52..000000000 --- a/js/photos-src_mixins_AbortControllerMixin_js-src_components_CollectionCover_vue-src_components_Collecti-e80ab0.js.LICENSE.txt +++ /dev/null @@ -1,21 +0,0 @@ -/** - * @copyright Copyright (c) 2022 Louis Chemineau - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ diff --git a/js/photos-src_mixins_AbortControllerMixin_js-src_components_CollectionCover_vue-src_components_Collecti-e80ab0.js.map b/js/photos-src_mixins_AbortControllerMixin_js-src_components_CollectionCover_vue-src_components_Collecti-e80ab0.js.map deleted file mode 100644 index f37032e50..000000000 --- a/js/photos-src_mixins_AbortControllerMixin_js-src_components_CollectionCover_vue-src_components_Collecti-e80ab0.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-src_mixins_AbortControllerMixin_js-src_components_CollectionCover_vue-src_components_Collecti-e80ab0.js?v=5144231bb3ad7c2c2102","mappings":";oNAsBA,SACCA,KAAM,uBAENC,KAHc,WAIb,MAAO,CACNC,gBAAiB,IAAIC,gBAEtB,EAEDC,cATc,WAUbC,KAAKH,gBAAgBI,OACrB,EAEDC,iBAbc,SAaGC,EAAMC,EAAIC,GAC1BL,KAAKH,gBAAgBI,QACrBD,KAAKH,gBAAkB,IAAIC,gBAC3BO,GACA,wECpCEC,QAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,2pCAA4pC,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,kDAAkD,MAAQ,GAAG,SAAW,yUAAyU,eAAiB,CAAC,2tDAA2yD,WAAa,MAE37G,8ECJIH,QAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,qvBAAsvB,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,kDAAkD,MAAQ,GAAG,SAAW,6UAA6U,eAAiB,CAAC,igDAAilD,WAAa,MAE/zF,4CCaA,MCpBiH,EDoBjH,CACEd,KAAM,oBACNe,MAAO,CAAC,SACRC,MAAO,CACLC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,cACd,GCRW,WAAa,IAAIG,EAAInB,KAASoB,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOH,EAAIK,GAAG,CAACC,YAAY,2CAA2CC,MAAM,CAAC,eAAeP,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOe,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOT,EAAIU,MAAM,QAASD,EAAO,IAAI,OAAOT,EAAIW,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOP,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACK,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,iJAAiJ,CAAEP,EAAS,MAAEG,EAAG,QAAQ,CAACH,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIP,UAAUO,EAAIc,UAAU,GACxqB,IDUpB,EACA,KACA,KACA,MAI8B,0CElBhC,qWCkDA,MClDgL,EDkDhL,CACA,uBAEA,YACA,0BAGA,OACA,UACA,YACA,aAEA,QACA,YACA,aAEA,MACA,YACA,cAIA,6WACA,SACA,QACA,kJEhEIC,EAAU,CAAC,EAEfA,EAAQC,kBAAoB,IAC5BD,EAAQE,cAAgB,IAElBF,EAAQG,OAAS,SAAc,KAAM,QAE3CH,EAAQI,OAAS,IACjBJ,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKJ,KAAW,YAAiB,WCPlD,SAXgB,cACd,GJTW,WAAa,IAAIf,EAAInB,KAASoB,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAOE,EAAG,cAAc,CAACG,YAAY,mBAAmBC,MAAM,CAAC,GAAKP,EAAIqB,OAAO,CAAmB,KAAjBrB,EAAIsB,SAAiBnB,EAAG,MAAM,CAACG,YAAY,0BAA0BC,MAAM,CAAC,IAAMP,EAAIsB,SAAS,IAAMtB,EAAIuB,UAAUpB,EAAG,MAAM,CAACG,YAAY,gEAAgE,CAACH,EAAG,gBAAgB,CAACI,MAAM,CAAC,KAAO,QAAQ,GAAGP,EAAIY,GAAG,KAAKT,EAAG,MAAM,CAACG,YAAY,6BAA6B,CAACH,EAAG,MAAM,CAACG,YAAY,oCAAoC,CAACN,EAAIwB,GAAG,YAAY,GAAGxB,EAAIY,GAAG,KAAKT,EAAG,MAAM,CAACG,YAAY,uCAAuC,CAACN,EAAIwB,GAAG,aAAa,MAAM,GAChoB,IIWpB,EACA,KACA,WACA,MAI8B,0CCnBhC,eCoDA,MCpDgL,EDoDhL,CACA,uBAEA,YACA,gCACA,+BAGA,OACA,aACA,YACA,aAEA,iBACA,YACA,aAEA,gBACA,YACA,aAEA,SACA,aACA,YAEA,OACA,YACA,eAIA,UAIA,aAJA,WAKA,+CACA,wIE9EIT,EAAU,CAAC,EAEfA,EAAQC,kBAAoB,IAC5BD,EAAQE,cAAgB,IAElBF,EAAQG,OAAS,SAAc,KAAM,QAE3CH,EAAQI,OAAS,IACjBJ,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKJ,KAAW,YAAiB,WCPlD,SAXgB,cACd,GJTW,WAAa,IAAIf,EAAInB,KAASoB,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAQD,EAAS,MAAEG,EAAG,iBAAiB,CAACH,EAAIY,GAAG,OAAOZ,EAAIa,GAAGb,EAAIyB,EAAE,SAAU,sBAAsB,QAAQtB,EAAG,MAAM,CAACG,YAAY,eAAe,CAACH,EAAG,mBAAmB,CAACuB,IAAI,aAAanB,MAAM,CAAC,QAAUP,EAAI2B,QAAQ,MAAQ3B,EAAI4B,gBAAgB,aAAa5B,EAAI6B,WAAWrB,GAAG,CAAC,QAAUR,EAAI8B,YAAY,CAAC9B,EAAIwB,GAAG,UAAUxB,EAAIY,GAAG,KAAMZ,EAAW,QAAEG,EAAG,iBAAiBH,EAAIc,MAAM,GAAGd,EAAIY,GAAG,KAAMZ,EAAI+B,eAAiB/B,EAAI2B,QAAS3B,EAAIwB,GAAG,0BAA4BxB,EAAI+B,aAAsK/B,EAAIc,KAA5JX,EAAG,MAAM,CAACG,YAAY,qBAAqB,CAACN,EAAIgC,GAAIhC,EAAe,aAAE,SAASiC,GAAY,OAAOjC,EAAIwB,GAAG,UAAU,KAAK,CAAC,WAAaS,GAAY,KAAI,IAAa,EAAE,GACpsB,IIWpB,EACA,KACA,WACA,MAI8B","sources":["webpack:///photos/src/mixins/AbortControllerMixin.js","webpack:///photos/src/components/CollectionCover.vue?vue&type=style&index=0&id=1d409e56&lang=scss&scoped=true&","webpack:///photos/src/components/CollectionsList.vue?vue&type=style&index=0&id=f7f1b23a&lang=scss&scoped=true&","webpack:///photos/node_modules/vue-material-design-icons/ImageMultiple.vue","webpack:///photos/node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/ImageMultiple.vue?126d","webpack:///photos/node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=template&id=21a95e74&","webpack:///photos/src/components/CollectionCover.vue?vue&type=template&id=1d409e56&scoped=true&","webpack:///photos/src/components/CollectionCover.vue","webpack:///photos/src/components/CollectionCover.vue?vue&type=script&lang=js&","webpack://photos/./src/components/CollectionCover.vue?0db1","webpack://photos/./src/components/CollectionCover.vue?0675","webpack:///photos/src/components/CollectionsList.vue?vue&type=template&id=f7f1b23a&scoped=true&","webpack:///photos/src/components/CollectionsList.vue","webpack:///photos/src/components/CollectionsList.vue?vue&type=script&lang=js&","webpack://photos/./src/components/CollectionsList.vue?e3f1","webpack://photos/./src/components/CollectionsList.vue?1f28"],"sourcesContent":["/**\n * @copyright Copyright (c) 2022 Louis Chemineau \n *\n * @author Louis Chemineau \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 .\n *\n */\n\nexport default {\n\tname: 'AbortControllerMixin',\n\n\tdata() {\n\t\treturn {\n\t\t\tabortController: new AbortController(),\n\t\t}\n\t},\n\n\tbeforeDestroy() {\n\t\tthis.abortController.abort()\n\t},\n\n\tbeforeRouteLeave(from, to, next) {\n\t\tthis.abortController.abort()\n\t\tthis.abortController = new AbortController()\n\t\tnext()\n\t},\n}\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".collection-cover[data-v-1d409e56]{display:flex;flex-direction:column;padding:16px;border-radius:var(--border-radius-large)}.collection-cover[data-v-1d409e56]:hover,.collection-cover[data-v-1d409e56]:focus{background:var(--color-background-dark)}.collection-cover__image[data-v-1d409e56]{width:350px;height:350px;object-fit:none;border-radius:var(--border-radius-large)}@media only screen and (max-width: 1200px){.collection-cover__image[data-v-1d409e56]{width:250px;height:250px}}.collection-cover__image--placeholder[data-v-1d409e56]{background:var(--color-primary-light)}.collection-cover__image--placeholder[data-v-1d409e56] .material-design-icon{width:100%;height:100%}.collection-cover__image--placeholder[data-v-1d409e56] .material-design-icon .material-design-icon__svg{fill:var(--color-primary)}.collection-cover__details[data-v-1d409e56]{display:flex;flex-direction:column;margin-top:16px;width:350px}@media only screen and (max-width: 1200px){.collection-cover__details[data-v-1d409e56]{width:250px}}.collection-cover__details__title[data-v-1d409e56]{display:flex}.collection-cover__details__subtitle[data-v-1d409e56]{display:flex;color:var(--color-text-lighter)}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/CollectionCover.vue\"],\"names\":[],\"mappings\":\"AAmFA,mCACC,YAAA,CACA,qBAAA,CACA,YAAA,CACA,wCAAA,CAEA,kFACC,uCAAA,CAGD,0CACC,WAAA,CACA,YAAA,CACA,eAAA,CACA,wCAAA,CAEA,2CAND,0CAOE,WAAA,CACA,YAAA,CAAA,CAGD,uDACC,qCAAA,CAEA,8EACC,UAAA,CACA,WAAA,CAEA,yGACC,yBAAA,CAMJ,4CACC,YAAA,CACA,qBAAA,CACA,eAAA,CACA,WAAA,CAEA,2CAND,4CAOE,WAAA,CAAA,CAGD,mDACC,YAAA,CAGD,sDACC,YAAA,CACA,+BAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.collection-cover {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\tpadding: 16px;\\n\\tborder-radius: var(--border-radius-large);\\n\\n\\t&:hover, &:focus {\\n\\t\\tbackground: var(--color-background-dark);\\n\\t}\\n\\n\\t&__image {\\n\\t\\twidth: 350px;\\n\\t\\theight: 350px;\\n\\t\\tobject-fit: none;\\n\\t\\tborder-radius: var(--border-radius-large);\\n\\n\\t\\t@media only screen and (max-width: 1200px) {\\n\\t\\t\\twidth: 250px;\\n\\t\\t\\theight: 250px;\\n\\t\\t}\\n\\n\\t\\t&--placeholder {\\n\\t\\t\\tbackground: var(--color-primary-light);\\n\\n\\t\\t\\t::v-deep .material-design-icon {\\n\\t\\t\\t\\twidth: 100%;\\n\\t\\t\\t\\theight: 100%;\\n\\n\\t\\t\\t\\t.material-design-icon__svg {\\n\\t\\t\\t\\t\\tfill: var(--color-primary);\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t&__details {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\tmargin-top: 16px;\\n\\t\\twidth: 350px;\\n\\n\\t\\t@media only screen and (max-width: 1200px) {\\n\\t\\t\\twidth: 250px;\\n\\t\\t}\\n\\n\\t\\t&__title {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t}\\n\\n\\t\\t&__subtitle {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tcolor: var(--color-text-lighter);\\n\\t\\t}\\n\\t}\\n\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".collections[data-v-f7f1b23a]{display:flex;flex-direction:column;height:100%}.collections__header[data-v-f7f1b23a]{display:flex;align-items:center;position:-webkit-sticky;position:sticky;top:0;z-index:3;width:100%;height:60px;padding:0 64px;box-sizing:content-box;background:var(--color-main-background)}@media only screen and (max-width: 1200px){.collections__header[data-v-f7f1b23a]{padding:0 48px}}.collections__header button[data-v-f7f1b23a]{margin-right:32px}.collections__list[data-v-f7f1b23a]{padding:32px 48px;flex-grow:1;display:flex;flex-wrap:wrap;gap:16px;align-items:flex-start;height:calc(100% - 60px);overflow-x:scroll}@media only screen and (max-width: 1200px){.collections__list[data-v-f7f1b23a]{padding:32px 12px;justify-content:center}}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/CollectionsList.vue\"],\"names\":[],\"mappings\":\"AA+FA,8BACC,YAAA,CACA,qBAAA,CACA,WAAA,CAEA,sCACC,YAAA,CACA,kBAAA,CACA,uBAAA,CAAA,eAAA,CACA,KAAA,CACA,SAAA,CACA,UAAA,CACA,WAAA,CACA,cAAA,CACA,sBAAA,CACA,uCAAA,CAEA,2CAZD,sCAaE,cAAA,CAAA,CAGD,6CACC,iBAAA,CAIF,oCACC,iBAAA,CACA,WAAA,CACA,YAAA,CACA,cAAA,CACA,QAAA,CACA,sBAAA,CACA,wBAAA,CACA,iBAAA,CAEA,2CAVD,oCAWE,iBAAA,CACA,sBAAA,CAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.collections {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\theight: 100%;\\n\\n\\t&__header {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\tposition: sticky;\\n\\t\\ttop: 0;\\n\\t\\tz-index: 3;\\n\\t\\twidth: 100%;\\n\\t\\theight: 60px;\\n\\t\\tpadding: 0 64px;\\n\\t\\tbox-sizing: content-box;\\n\\t\\tbackground: var(--color-main-background);\\n\\n\\t\\t@media only screen and (max-width: 1200px) {\\n\\t\\t\\tpadding: 0 48px;\\n\\t\\t}\\n\\n\\t\\tbutton {\\n\\t\\t\\tmargin-right: 32px;\\n\\t\\t}\\n\\t}\\n\\n\\t&__list {\\n\\t\\tpadding: 32px 48px;\\n\\t\\tflex-grow: 1;\\n\\t\\tdisplay: flex;\\n\\t\\tflex-wrap: wrap;\\n\\t\\tgap: 16px;\\n\\t\\talign-items: flex-start;\\n\\t\\theight: calc(100% - 60px);\\n\\t\\toverflow-x: scroll;\\n\\n\\t\\t@media only screen and (max-width: 1200px) {\\n\\t\\t\\tpadding: 32px 12px;\\n\\t\\t\\tjustify-content: center;\\n\\t\\t}\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ImageMultiple.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ImageMultiple.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ImageMultiple.vue?vue&type=template&id=21a95e74&\"\nimport script from \"./ImageMultiple.vue?vue&type=script&lang=js&\"\nexport * from \"./ImageMultiple.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon image-multiple-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M22,16V4A2,2 0 0,0 20,2H8A2,2 0 0,0 6,4V16A2,2 0 0,0 8,18H20A2,2 0 0,0 22,16M11,12L13.03,14.71L16,11L20,16H8M2,6V20A2,2 0 0,0 4,22H18V20H4V6\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('router-link',{staticClass:\"collection-cover\",attrs:{\"to\":_vm.link}},[(_vm.coverUrl !== '')?_c('img',{staticClass:\"collection-cover__image\",attrs:{\"src\":_vm.coverUrl,\"alt\":_vm.altImg}}):_c('div',{staticClass:\"collection-cover__image collection-cover__image--placeholder\"},[_c('ImageMultiple',{attrs:{\"size\":128}})],1),_vm._v(\" \"),_c('div',{staticClass:\"collection-cover__details\"},[_c('div',{staticClass:\"collection-cover__details__title\"},[_vm._t(\"default\")],2),_vm._v(\" \"),_c('div',{staticClass:\"collection-cover__details__subtitle\"},[_vm._t(\"subtitle\")],2)])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CollectionCover.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!./CollectionCover.vue?vue&type=script&lang=js&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./CollectionCover.vue?vue&type=style&index=0&id=1d409e56&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./CollectionCover.vue?vue&type=style&index=0&id=1d409e56&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./CollectionCover.vue?vue&type=template&id=1d409e56&scoped=true&\"\nimport script from \"./CollectionCover.vue?vue&type=script&lang=js&\"\nexport * from \"./CollectionCover.vue?vue&type=script&lang=js&\"\nimport style0 from \"./CollectionCover.vue?vue&type=style&index=0&id=1d409e56&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 \"1d409e56\",\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 (_vm.error)?_c('NcEmptyContent',[_vm._v(\"\\n\\t\"+_vm._s(_vm.t('photos', 'An error occurred'))+\"\\n\")]):_c('div',{staticClass:\"collections\"},[_c('HeaderNavigation',{key:\"navigation\",attrs:{\"loading\":_vm.loading,\"title\":_vm.collectionTitle,\"root-title\":_vm.rootTitle},on:{\"refresh\":_vm.onRefresh}},[_vm._t(\"header\"),_vm._v(\" \"),(_vm.loading)?_c('NcLoadingIcon'):_vm._e()],2),_vm._v(\" \"),(_vm.noCollection && !_vm.loading)?_vm._t(\"empty-collections-list\"):(!_vm.noCollection)?_c('div',{staticClass:\"collections__list\"},[_vm._l((_vm.collections),function(collection){return _vm._t(\"default\",null,{\"collection\":collection})})],2):_vm._e()],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CollectionsList.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!./CollectionsList.vue?vue&type=script&lang=js&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./CollectionsList.vue?vue&type=style&index=0&id=f7f1b23a&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./CollectionsList.vue?vue&type=style&index=0&id=f7f1b23a&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./CollectionsList.vue?vue&type=template&id=f7f1b23a&scoped=true&\"\nimport script from \"./CollectionsList.vue?vue&type=script&lang=js&\"\nexport * from \"./CollectionsList.vue?vue&type=script&lang=js&\"\nimport style0 from \"./CollectionsList.vue?vue&type=style&index=0&id=f7f1b23a&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 \"f7f1b23a\",\n null\n \n)\n\nexport default component.exports"],"names":["name","data","abortController","AbortController","beforeDestroy","this","abort","beforeRouteLeave","from","to","next","___CSS_LOADER_EXPORT___","push","module","id","emits","props","title","type","String","fillColor","default","size","Number","_vm","_h","$createElement","_c","_self","_b","staticClass","attrs","on","$event","$emit","$attrs","_v","_s","_e","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","link","coverUrl","altImg","_t","t","key","loading","collectionTitle","rootTitle","onRefresh","noCollection","_l","collection"],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-src_mixins_AbortControllerMixin_js-src_components_EmptyContent_vue-src_components_Loader_vue.js b/js/photos-src_mixins_AbortControllerMixin_js-src_components_EmptyContent_vue-src_components_Loader_vue.js deleted file mode 100644 index de6b8ea50..000000000 --- a/js/photos-src_mixins_AbortControllerMixin_js-src_components_EmptyContent_vue-src_components_Loader_vue.js +++ /dev/null @@ -1,701 +0,0 @@ -(self["webpackChunkphotos"] = self["webpackChunkphotos"] || []).push([["src_mixins_AbortControllerMixin_js-src_components_EmptyContent_vue-src_components_Loader_vue"],{ - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/EmptyContent.vue?vue&type=script&lang=js&": -/*!**********************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/EmptyContent.vue?vue&type=script&lang=js& ***! - \**********************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js"); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'EmptyContent', - props: { - illustrationName: { - type: String, - default: '' - } - }, - - data() { - return { - illustration: '' - }; - }, - - computed: { - /** - * Does this component have an illustration - * - * @return {boolean} - */ - haveIllustration() { - return this.illustrationName !== ''; - }, - - /** - * Is the illustration loaded - * - * @return {boolean} - */ - isLoaded() { - if (!this.haveIllustration) { - return true; - } - - return this.illustration !== ''; - }, - - /** - * The component is ready if the illustration - * is done loading or if there is none - * - * @return {boolean} - */ - isReady() { - return !this.haveIllustration || this.haveIllustration && this.isLoaded; - } - - }, - - /** - * Fetch the new illustration as soon as it changes - */ - watch: { - illustrationName() { - this.getIllustration(); - } - - }, - - beforeMount() { - this.getIllustration(); - }, - - methods: { - /** - * Fetch the illustration as webpack chunk - */ - async getIllustration() { - this.illustration = ''; - - if (this.illustrationName !== '') { - try { - const illustration = await __webpack_require__("./src/assets/Illustrations lazy recursive ^\\.\\/.*\\.svg$")(`./${this.illustrationName}.svg`); - this.illustration = illustration.default; - } catch (error) { - console.error('Could not get the error illustration', error); - } - } - } - - } -}); - -/***/ }), - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Loader.vue?vue&type=script&lang=js&": -/*!****************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Loader.vue?vue&type=script&lang=js& ***! - \****************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'Loader' -}); - -/***/ }), - -/***/ "./src/mixins/AbortControllerMixin.js": -/*!********************************************!*\ - !*** ./src/mixins/AbortControllerMixin.js ***! - \********************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/** - * @copyright Copyright (c) 2022 Louis Chemineau - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'AbortControllerMixin', - - data() { - return { - abortController: new AbortController() - }; - }, - - beforeDestroy() { - this.abortController.abort(); - }, - - beforeRouteLeave(from, to, next) { - this.abortController.abort(); - next(); - } - -}); - -/***/ }), - -/***/ "./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!./src/components/EmptyContent.vue?vue&type=style&index=0&lang=scss&": -/*!**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/components/EmptyContent.vue?vue&type=style&index=0&lang=scss& ***! - \**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".emptycontent {\n grid-column: 1/-1;\n margin-top: 20vh;\n}\n.illustration {\n min-width: 200px;\n max-width: 15%;\n width: 300px;\n margin: auto;\n margin-bottom: 20px;\n position: relative;\n}\n.illustration svg {\n width: 100%;\n height: 100%;\n max-height: 40vh;\n}\n.illustration [fill*=\"6c63ff\"] {\n fill: var(--color-primary-element);\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./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!./src/components/Loader.vue?vue&type=style&index=0&lang=scss&": -/*!****************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/components/Loader.vue?vue&type=style&index=0&lang=scss& ***! - \****************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".loader {\n display: grid;\n height: 60px;\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/EmptyContent.vue?vue&type=style&index=0&lang=scss&": -/*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/components/EmptyContent.vue?vue&type=style&index=0&lang=scss& ***! - \**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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_EmptyContent_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../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!./EmptyContent.vue?vue&type=style&index=0&lang=scss& */ "./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!./src/components/EmptyContent.vue?vue&type=style&index=0&lang=scss&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_EmptyContent_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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_EmptyContent_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_EmptyContent_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_EmptyContent_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/Loader.vue?vue&type=style&index=0&lang=scss&": -/*!********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/components/Loader.vue?vue&type=style&index=0&lang=scss& ***! - \********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../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& */ "./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!./src/components/Loader.vue?vue&type=style&index=0&lang=scss&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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___WEBPACK_IMPORTED_MODULE_6__["default"] && _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___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./src/components/EmptyContent.vue": -/*!*****************************************!*\ - !*** ./src/components/EmptyContent.vue ***! - \*****************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _EmptyContent_vue_vue_type_template_id_6c3ea49c___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./EmptyContent.vue?vue&type=template&id=6c3ea49c& */ "./src/components/EmptyContent.vue?vue&type=template&id=6c3ea49c&"); -/* harmony import */ var _EmptyContent_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./EmptyContent.vue?vue&type=script&lang=js& */ "./src/components/EmptyContent.vue?vue&type=script&lang=js&"); -/* harmony import */ var _EmptyContent_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./EmptyContent.vue?vue&type=style&index=0&lang=scss& */ "./src/components/EmptyContent.vue?vue&type=style&index=0&lang=scss&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( - _EmptyContent_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _EmptyContent_vue_vue_type_template_id_6c3ea49c___WEBPACK_IMPORTED_MODULE_0__.render, - _EmptyContent_vue_vue_type_template_id_6c3ea49c___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - null, - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/EmptyContent.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/Loader.vue": -/*!***********************************!*\ - !*** ./src/components/Loader.vue ***! - \***********************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _Loader_vue_vue_type_template_id_04a0d67a___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Loader.vue?vue&type=template&id=04a0d67a& */ "./src/components/Loader.vue?vue&type=template&id=04a0d67a&"); -/* harmony import */ var _Loader_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Loader.vue?vue&type=script&lang=js& */ "./src/components/Loader.vue?vue&type=script&lang=js&"); -/* harmony import */ var _Loader_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Loader.vue?vue&type=style&index=0&lang=scss& */ "./src/components/Loader.vue?vue&type=style&index=0&lang=scss&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( - _Loader_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _Loader_vue_vue_type_template_id_04a0d67a___WEBPACK_IMPORTED_MODULE_0__.render, - _Loader_vue_vue_type_template_id_04a0d67a___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - null, - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/Loader.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/EmptyContent.vue?vue&type=script&lang=js&": -/*!******************************************************************!*\ - !*** ./src/components/EmptyContent.vue?vue&type=script&lang=js& ***! - \******************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_EmptyContent_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EmptyContent.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/EmptyContent.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_EmptyContent_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/components/Loader.vue?vue&type=script&lang=js&": -/*!************************************************************!*\ - !*** ./src/components/Loader.vue?vue&type=script&lang=js& ***! - \************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Loader_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Loader.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Loader_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/components/EmptyContent.vue?vue&type=style&index=0&lang=scss&": -/*!***************************************************************************!*\ - !*** ./src/components/EmptyContent.vue?vue&type=style&index=0&lang=scss& ***! - \***************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_EmptyContent_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/style-loader/dist/cjs.js!../../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!./EmptyContent.vue?vue&type=style&index=0&lang=scss& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/EmptyContent.vue?vue&type=style&index=0&lang=scss&"); - - -/***/ }), - -/***/ "./src/components/Loader.vue?vue&type=style&index=0&lang=scss&": -/*!*********************************************************************!*\ - !*** ./src/components/Loader.vue?vue&type=style&index=0&lang=scss& ***! - \*********************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/style-loader/dist/cjs.js!../../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& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/Loader.vue?vue&type=style&index=0&lang=scss&"); - - -/***/ }), - -/***/ "./src/components/EmptyContent.vue?vue&type=template&id=6c3ea49c&": -/*!************************************************************************!*\ - !*** ./src/components/EmptyContent.vue?vue&type=template&id=6c3ea49c& ***! - \************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_EmptyContent_vue_vue_type_template_id_6c3ea49c___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_EmptyContent_vue_vue_type_template_id_6c3ea49c___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_EmptyContent_vue_vue_type_template_id_6c3ea49c___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EmptyContent.vue?vue&type=template&id=6c3ea49c& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/EmptyContent.vue?vue&type=template&id=6c3ea49c&"); - - -/***/ }), - -/***/ "./src/components/Loader.vue?vue&type=template&id=04a0d67a&": -/*!******************************************************************!*\ - !*** ./src/components/Loader.vue?vue&type=template&id=04a0d67a& ***! - \******************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Loader_vue_vue_type_template_id_04a0d67a___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Loader_vue_vue_type_template_id_04a0d67a___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Loader_vue_vue_type_template_id_04a0d67a___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=template&id=04a0d67a& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Loader.vue?vue&type=template&id=04a0d67a&"); - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/EmptyContent.vue?vue&type=template&id=6c3ea49c&": -/*!***************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/EmptyContent.vue?vue&type=template&id=6c3ea49c& ***! - \***************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _vm.isReady - ? _c("div", { staticClass: "emptycontent" }, [ - _vm.haveIllustration - ? _c("div", { - staticClass: "illustration", - domProps: { innerHTML: _vm._s(_vm.illustration) }, - }) - : _c("div", { staticClass: "icon-error" }), - _vm._v(" "), - _c("h2", [_vm._t("default")], 2), - _vm._v(" "), - _c( - "p", - { - directives: [ - { - name: "show", - rawName: "v-show", - value: _vm.$slots.desc, - expression: "$slots.desc", - }, - ], - }, - [_vm._t("desc")], - 2 - ), - ]) - : _vm._e() -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Loader.vue?vue&type=template&id=04a0d67a&": -/*!*********************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Loader.vue?vue&type=template&id=04a0d67a& ***! - \*********************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -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 - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./src/assets/Illustrations lazy recursive ^\\.\\/.*\\.svg$": -/*!***********************************************************************!*\ - !*** ./src/assets/Illustrations/ lazy ^\.\/.*\.svg$ namespace object ***! - \***********************************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var map = { - "./empty.svg": [ - "./src/assets/Illustrations/empty.svg", - "src_assets_Illustrations_empty_svg" - ], - "./folder.svg": [ - "./src/assets/Illustrations/folder.svg", - "src_assets_Illustrations_folder_svg" - ], - "./images.svg": [ - "./src/assets/Illustrations/images.svg", - "src_assets_Illustrations_images_svg" - ] -}; -function webpackAsyncContext(req) { - if(!__webpack_require__.o(map, req)) { - return Promise.resolve().then(() => { - var e = new Error("Cannot find module '" + req + "'"); - e.code = 'MODULE_NOT_FOUND'; - throw e; - }); - } - - var ids = map[req], id = ids[0]; - return __webpack_require__.e(ids[1]).then(() => { - return __webpack_require__.t(id, 1 | 16); - }); -} -webpackAsyncContext.keys = () => (Object.keys(map)); -webpackAsyncContext.id = "./src/assets/Illustrations lazy recursive ^\\.\\/.*\\.svg$"; -module.exports = webpackAsyncContext; - -/***/ }) - -}]); -//# sourceMappingURL=photos-src_mixins_AbortControllerMixin_js-src_components_EmptyContent_vue-src_components_Loader_vue.js.map?v=f383da6e49e106b0e806 \ No newline at end of file diff --git a/js/photos-src_mixins_AbortControllerMixin_js-src_components_EmptyContent_vue-src_components_Loader_vue.js.map b/js/photos-src_mixins_AbortControllerMixin_js-src_components_EmptyContent_vue-src_components_Loader_vue.js.map deleted file mode 100644 index 6ec5f49c9..000000000 --- a/js/photos-src_mixins_AbortControllerMixin_js-src_components_EmptyContent_vue-src_components_Loader_vue.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-src_mixins_AbortControllerMixin_js-src_components_EmptyContent_vue-src_components_Loader_vue.js?v=f383da6e49e106b0e806","mappings":";;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;ACpHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;AChCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;;;;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;;ACvCA;;;;;;;;;;;;;;;;ACAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;ACnCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sources":["webpack:///photos/src/components/EmptyContent.vue?vue&type=script&lang=js&","webpack:///photos/src/components/Loader.vue?vue&type=script&lang=js&","webpack:///photos/src/mixins/AbortControllerMixin.js","webpack:///photos/src/components/EmptyContent.vue?vue&type=style&index=0&lang=scss&","webpack:///photos/src/components/Loader.vue?vue&type=style&index=0&lang=scss&","webpack://photos/./src/components/EmptyContent.vue?7390","webpack://photos/./src/components/Loader.vue?eb1b","webpack:///photos/src/components/EmptyContent.vue","webpack:///photos/src/components/Loader.vue","webpack://photos/./src/components/EmptyContent.vue?2b0c","webpack://photos/./src/components/Loader.vue?5453","webpack:///photos/src/components/EmptyContent.vue?vue&type=template&id=6c3ea49c&","webpack:///photos/src/components/Loader.vue?vue&type=template&id=04a0d67a&","webpack:///photos/src/assets/Illustrations|lazy|/^\\.\\/.*\\.svg$/|groupOptions: {}|namespace object"],"sourcesContent":["//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nexport default {\n name: 'EmptyContent',\n props: {\n illustrationName: {\n type: String,\n default: ''\n }\n },\n\n data() {\n return {\n illustration: ''\n };\n },\n\n computed: {\n /**\n * Does this component have an illustration\n *\n * @return {boolean}\n */\n haveIllustration() {\n return this.illustrationName !== '';\n },\n\n /**\n * Is the illustration loaded\n *\n * @return {boolean}\n */\n isLoaded() {\n if (!this.haveIllustration) {\n return true;\n }\n\n return this.illustration !== '';\n },\n\n /**\n * The component is ready if the illustration\n * is done loading or if there is none\n *\n * @return {boolean}\n */\n isReady() {\n return !this.haveIllustration || this.haveIllustration && this.isLoaded;\n }\n\n },\n\n /**\n * Fetch the new illustration as soon as it changes\n */\n watch: {\n illustrationName() {\n this.getIllustration();\n }\n\n },\n\n beforeMount() {\n this.getIllustration();\n },\n\n methods: {\n /**\n * Fetch the illustration as webpack chunk\n */\n async getIllustration() {\n this.illustration = '';\n\n if (this.illustrationName !== '') {\n try {\n const illustration = await import(`../assets/Illustrations/${this.illustrationName}.svg`);\n this.illustration = illustration.default;\n } catch (error) {\n console.error('Could not get the error illustration', error);\n }\n }\n }\n\n }\n};","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nexport default {\n name: 'Loader'\n};","/**\n * @copyright Copyright (c) 2022 Louis Chemineau \n *\n * @author Louis Chemineau \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 .\n *\n */\nexport default {\n name: 'AbortControllerMixin',\n\n data() {\n return {\n abortController: new AbortController()\n };\n },\n\n beforeDestroy() {\n this.abortController.abort();\n },\n\n beforeRouteLeave(from, to, next) {\n this.abortController.abort();\n next();\n }\n\n};","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".emptycontent {\\n grid-column: 1/-1;\\n margin-top: 20vh;\\n}\\n.illustration {\\n min-width: 200px;\\n max-width: 15%;\\n width: 300px;\\n margin: auto;\\n margin-bottom: 20px;\\n position: relative;\\n}\\n.illustration svg {\\n width: 100%;\\n height: 100%;\\n max-height: 40vh;\\n}\\n.illustration [fill*=\\\"6c63ff\\\"] {\\n fill: var(--color-primary-element);\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".loader {\\n display: grid;\\n height: 60px;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./EmptyContent.vue?vue&type=style&index=0&lang=scss&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./EmptyContent.vue?vue&type=style&index=0&lang=scss&\";\n export default content && content.locals ? content.locals : undefined;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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 \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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 export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./EmptyContent.vue?vue&type=template&id=6c3ea49c&\"\nimport script from \"./EmptyContent.vue?vue&type=script&lang=js&\"\nexport * from \"./EmptyContent.vue?vue&type=script&lang=js&\"\nimport style0 from \"./EmptyContent.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\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/louis/workspace/nextcloud/apps/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('6c3ea49c')) {\n api.createRecord('6c3ea49c', component.options)\n } else {\n api.reload('6c3ea49c', component.options)\n }\n module.hot.accept(\"./EmptyContent.vue?vue&type=template&id=6c3ea49c&\", function () {\n api.rerender('6c3ea49c', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/EmptyContent.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./Loader.vue?vue&type=template&id=04a0d67a&\"\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\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/louis/workspace/nextcloud/apps/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('04a0d67a')) {\n api.createRecord('04a0d67a', component.options)\n } else {\n api.reload('04a0d67a', component.options)\n }\n module.hot.accept(\"./Loader.vue?vue&type=template&id=04a0d67a&\", function () {\n api.rerender('04a0d67a', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/Loader.vue\"\nexport default component.exports","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EmptyContent.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!./EmptyContent.vue?vue&type=script&lang=js&\"","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&\"","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _vm.isReady\n ? _c(\"div\", { staticClass: \"emptycontent\" }, [\n _vm.haveIllustration\n ? _c(\"div\", {\n staticClass: \"illustration\",\n domProps: { innerHTML: _vm._s(_vm.illustration) },\n })\n : _c(\"div\", { staticClass: \"icon-error\" }),\n _vm._v(\" \"),\n _c(\"h2\", [_vm._t(\"default\")], 2),\n _vm._v(\" \"),\n _c(\n \"p\",\n {\n directives: [\n {\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.$slots.desc,\n expression: \"$slots.desc\",\n },\n ],\n },\n [_vm._t(\"desc\")],\n 2\n ),\n ])\n : _vm._e()\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { staticClass: \"loader\" },\n [\n _vm._t(\"icon\", function () {\n return [_c(\"span\", { staticClass: \"icon-loading\" })]\n }),\n ],\n 2\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var map = {\n\t\"./empty.svg\": [\n\t\t\"./src/assets/Illustrations/empty.svg\",\n\t\t\"src_assets_Illustrations_empty_svg\"\n\t],\n\t\"./folder.svg\": [\n\t\t\"./src/assets/Illustrations/folder.svg\",\n\t\t\"src_assets_Illustrations_folder_svg\"\n\t],\n\t\"./images.svg\": [\n\t\t\"./src/assets/Illustrations/images.svg\",\n\t\t\"src_assets_Illustrations_images_svg\"\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(() => {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\n\tvar ids = map[req], id = ids[0];\n\treturn __webpack_require__.e(ids[1]).then(() => {\n\t\treturn __webpack_require__.t(id, 1 | 16);\n\t});\n}\nwebpackAsyncContext.keys = () => (Object.keys(map));\nwebpackAsyncContext.id = \"./src/assets/Illustrations lazy recursive ^\\\\.\\\\/.*\\\\.svg$\";\nmodule.exports = webpackAsyncContext;"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-src_mixins_AbortControllerMixin_js-src_components_HeaderNavigation_vue.js b/js/photos-src_mixins_AbortControllerMixin_js-src_components_HeaderNavigation_vue.js deleted file mode 100644 index adebfc116..000000000 --- a/js/photos-src_mixins_AbortControllerMixin_js-src_components_HeaderNavigation_vue.js +++ /dev/null @@ -1,576 +0,0 @@ -"use strict"; -(self["webpackChunkphotos"] = self["webpackChunkphotos"] || []).push([["src_mixins_AbortControllerMixin_js-src_components_HeaderNavigation_vue"],{ - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/HeaderNavigation.vue?vue&type=script&lang=js&": -/*!**************************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/HeaderNavigation.vue?vue&type=script&lang=js& ***! - \**************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var vue_material_design_icons_ArrowLeft_vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue-material-design-icons/ArrowLeft.vue */ "./node_modules/vue-material-design-icons/ArrowLeft.vue"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/vue */ "./node_modules/@nextcloud/vue/dist/ncvuecomponents.js"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue__WEBPACK_IMPORTED_MODULE_1__); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'HeaderNavigation', - components: { - ArrowLeft: vue_material_design_icons_ArrowLeft_vue__WEBPACK_IMPORTED_MODULE_0__["default"], - NcButton: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_1__.NcButton, - NcLoadingIcon: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_1__.NcLoadingIcon - }, - inheritAttrs: false, - props: { - loading: { - type: Boolean, - default: false - }, - path: { - type: String, - default: '/' - }, - title: { - type: String, - required: true - }, - rootTitle: { - type: String, - default: t('photos', 'Photos') - } - }, - computed: { - isRoot: function isRoot() { - var isRoot = this.path === '/'; - this.toggleNavigationButton(!isRoot); - return isRoot; - }, - name: function name() { - if (this.isRoot) { - return this.rootTitle; - } - - return this.title; - }, - parentPath: function parentPath() { - var path = this.path.split('/'); - path.pop(); - var parent = path.join('/'); - return this.isRoot || parent.trim() === '' ? '/' : path.join('/'); - }, - parentName: function parentName() { - return this.parentPath && this.parentPath.split('/').pop(); - }, - backToText: function backToText() { - if (this.parentPath === '/') { - return t('photos', 'Back to {folder}', { - folder: this.rootTitle - }); - } - - return t('photos', 'Back to {folder}', { - folder: this.parentName - }); - }, - - /** - * We do not want encoded slashes when browsing by folder - * so we generate a new valid route object, get the final url back - * decode it and use it as a direct string, which vue-router - * does not encode afterwards - * - * @return {string|object} - */ - to: function to() { - // always remove first slash, the router - // manage it automatically - var regex = /^\/?(.*)/i; - var path = regex.exec(this.parentPath)[1]; // apply to current route - - var _Object$assign = Object.assign({}, this.$route, { - params: { - path: path - } - }), - name = _Object$assign.name, - params = _Object$assign.params; // return the full object as we don't care about - // an empty path if this is route - - - if (path === '') { - return { - name: name - }; - } // returning a string prevent vue-router to encode it again - - - return decodeURIComponent(this.$router.resolve({ - name: name, - params: params - }).resolved.path); - } - }, - methods: { - folderUp: function folderUp() { - this.$router.push(this.to); - }, - refresh: function refresh() { - this.$emit('refresh'); - }, - toggleNavigationButton: function toggleNavigationButton(hide) { - // Hide the navigation toggle if the back button is shown - var navigationToggle = document.querySelector('button.app-navigation-toggle'); - navigationToggle.style.display = hide ? 'none' : null; - } - } -}); - -/***/ }), - -/***/ "./src/mixins/AbortControllerMixin.js": -/*!********************************************!*\ - !*** ./src/mixins/AbortControllerMixin.js ***! - \********************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/** - * @copyright Copyright (c) 2022 Louis Chemineau - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'AbortControllerMixin', - data: function data() { - return { - abortController: new AbortController() - }; - }, - beforeDestroy: function beforeDestroy() { - this.abortController.abort(); - }, - beforeRouteLeave: function beforeRouteLeave(from, to, next) { - this.abortController.abort(); - this.abortController = new AbortController(); - next(); - } -}); - -/***/ }), - -/***/ "./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!./src/components/HeaderNavigation.vue?vue&type=style&index=0&lang=scss&": -/*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/components/HeaderNavigation.vue?vue&type=style&index=0&lang=scss& ***! - \**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ":root {\n --photos-navigation-height: 64px;\n --photos-navigation-spacing: calc((var(--photos-navigation-height) - 44px) / 2);\n}\nbutton.app-navigation-toggle {\n right: calc(var(--photos-navigation-height) * -1) !important;\n margin: var(--photos-navigation-spacing) !important;\n top: 0 !important;\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./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!./src/components/HeaderNavigation.vue?vue&type=style&index=1&id=21ecc79e&lang=scss&scoped=true&": -/*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/components/HeaderNavigation.vue?vue&type=style&index=1&id=21ecc79e&lang=scss&scoped=true& ***! - \**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".photos-navigation[data-v-21ecc79e] {\n position: -webkit-sticky;\n position: sticky;\n z-index: 20;\n top: 0;\n display: flex;\n align-items: center;\n width: 100%;\n height: var(--photos-navigation-height);\n min-height: var(--photos-navigation-height);\n padding: 0 var(--photos-navigation-height);\n background: var(--color-main-background);\n}\n.photos-navigation__back[data-v-21ecc79e] {\n position: absolute;\n left: 0;\n margin: var(--photos-navigation-spacing) !important;\n}\n.photos-navigation__title[data-v-21ecc79e] {\n overflow: hidden;\n margin: 0;\n margin-right: calc(2 * var(--photos-navigation-spacing));\n cursor: pointer;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.photos-navigation__loader[data-v-21ecc79e] {\n margin-left: 32px;\n}\n.photos-navigation__content-right[data-v-21ecc79e] {\n margin-left: auto;\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/HeaderNavigation.vue?vue&type=style&index=0&lang=scss&": -/*!******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/components/HeaderNavigation.vue?vue&type=style&index=0&lang=scss& ***! - \******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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_HeaderNavigation_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../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!./HeaderNavigation.vue?vue&type=style&index=0&lang=scss& */ "./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!./src/components/HeaderNavigation.vue?vue&type=style&index=0&lang=scss&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_HeaderNavigation_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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_HeaderNavigation_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_HeaderNavigation_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_HeaderNavigation_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/HeaderNavigation.vue?vue&type=style&index=1&id=21ecc79e&lang=scss&scoped=true&": -/*!******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/components/HeaderNavigation.vue?vue&type=style&index=1&id=21ecc79e&lang=scss&scoped=true& ***! - \******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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_HeaderNavigation_vue_vue_type_style_index_1_id_21ecc79e_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../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!./HeaderNavigation.vue?vue&type=style&index=1&id=21ecc79e&lang=scss&scoped=true& */ "./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!./src/components/HeaderNavigation.vue?vue&type=style&index=1&id=21ecc79e&lang=scss&scoped=true&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_HeaderNavigation_vue_vue_type_style_index_1_id_21ecc79e_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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_HeaderNavigation_vue_vue_type_style_index_1_id_21ecc79e_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_HeaderNavigation_vue_vue_type_style_index_1_id_21ecc79e_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_HeaderNavigation_vue_vue_type_style_index_1_id_21ecc79e_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./src/components/HeaderNavigation.vue": -/*!*********************************************!*\ - !*** ./src/components/HeaderNavigation.vue ***! - \*********************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _HeaderNavigation_vue_vue_type_template_id_21ecc79e_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./HeaderNavigation.vue?vue&type=template&id=21ecc79e&scoped=true& */ "./src/components/HeaderNavigation.vue?vue&type=template&id=21ecc79e&scoped=true&"); -/* harmony import */ var _HeaderNavigation_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./HeaderNavigation.vue?vue&type=script&lang=js& */ "./src/components/HeaderNavigation.vue?vue&type=script&lang=js&"); -/* harmony import */ var _HeaderNavigation_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./HeaderNavigation.vue?vue&type=style&index=0&lang=scss& */ "./src/components/HeaderNavigation.vue?vue&type=style&index=0&lang=scss&"); -/* harmony import */ var _HeaderNavigation_vue_vue_type_style_index_1_id_21ecc79e_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./HeaderNavigation.vue?vue&type=style&index=1&id=21ecc79e&lang=scss&scoped=true& */ "./src/components/HeaderNavigation.vue?vue&type=style&index=1&id=21ecc79e&lang=scss&scoped=true&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_4__["default"])( - _HeaderNavigation_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _HeaderNavigation_vue_vue_type_template_id_21ecc79e_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render, - _HeaderNavigation_vue_vue_type_template_id_21ecc79e_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - "21ecc79e", - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/HeaderNavigation.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/HeaderNavigation.vue?vue&type=script&lang=js&": -/*!**********************************************************************!*\ - !*** ./src/components/HeaderNavigation.vue?vue&type=script&lang=js& ***! - \**********************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_HeaderNavigation_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HeaderNavigation.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/HeaderNavigation.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_HeaderNavigation_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/components/HeaderNavigation.vue?vue&type=style&index=0&lang=scss&": -/*!*******************************************************************************!*\ - !*** ./src/components/HeaderNavigation.vue?vue&type=style&index=0&lang=scss& ***! - \*******************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_HeaderNavigation_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/style-loader/dist/cjs.js!../../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!./HeaderNavigation.vue?vue&type=style&index=0&lang=scss& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/HeaderNavigation.vue?vue&type=style&index=0&lang=scss&"); - - -/***/ }), - -/***/ "./src/components/HeaderNavigation.vue?vue&type=style&index=1&id=21ecc79e&lang=scss&scoped=true&": -/*!*******************************************************************************************************!*\ - !*** ./src/components/HeaderNavigation.vue?vue&type=style&index=1&id=21ecc79e&lang=scss&scoped=true& ***! - \*******************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_HeaderNavigation_vue_vue_type_style_index_1_id_21ecc79e_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/style-loader/dist/cjs.js!../../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!./HeaderNavigation.vue?vue&type=style&index=1&id=21ecc79e&lang=scss&scoped=true& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/HeaderNavigation.vue?vue&type=style&index=1&id=21ecc79e&lang=scss&scoped=true&"); - - -/***/ }), - -/***/ "./src/components/HeaderNavigation.vue?vue&type=template&id=21ecc79e&scoped=true&": -/*!****************************************************************************************!*\ - !*** ./src/components/HeaderNavigation.vue?vue&type=template&id=21ecc79e&scoped=true& ***! - \****************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_HeaderNavigation_vue_vue_type_template_id_21ecc79e_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_HeaderNavigation_vue_vue_type_template_id_21ecc79e_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_HeaderNavigation_vue_vue_type_template_id_21ecc79e_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HeaderNavigation.vue?vue&type=template&id=21ecc79e&scoped=true& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/HeaderNavigation.vue?vue&type=template&id=21ecc79e&scoped=true&"); - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/HeaderNavigation.vue?vue&type=template&id=21ecc79e&scoped=true&": -/*!*******************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/HeaderNavigation.vue?vue&type=template&id=21ecc79e&scoped=true& ***! - \*******************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c( - "div", - { - staticClass: "photos-navigation", - class: { "photos-navigation--root": _vm.isRoot }, - attrs: { role: "toolbar" }, - }, - [ - !_vm.isRoot - ? _c("NcButton", { - staticClass: "photos-navigation__back", - attrs: { type: "tertiary" }, - on: { click: _vm.folderUp }, - scopedSlots: _vm._u( - [ - { - key: "icon", - fn: function () { - return [_c("ArrowLeft", { attrs: { size: 20 } })] - }, - proxy: true, - }, - ], - null, - false, - 1821202730 - ), - }) - : _vm._e(), - _vm._v(" "), - _c( - "h2", - { staticClass: "photos-navigation__title", on: { click: _vm.refresh } }, - [_vm._v("\n\t\t" + _vm._s(_vm.name) + "\n\t")] - ), - _vm._v(" "), - _vm.$slots.default - ? _c( - "div", - { staticClass: "photos-navigation__content" }, - [_vm._t("default")], - 2 - ) - : _vm._e(), - _vm._v(" "), - _vm.loading - ? _c("NcLoadingIcon", { staticClass: "photos-navigation__loader" }) - : _vm._e(), - _vm._v(" "), - _vm.$slots.right - ? _c( - "div", - { staticClass: "photos-navigation__content-left" }, - [_vm._t("left")], - 2 - ) - : _vm._e(), - ], - 1 - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }) - -}]); -//# sourceMappingURL=photos-src_mixins_AbortControllerMixin_js-src_components_HeaderNavigation_vue.js.map?v=483011b72a6cd4914aba \ No newline at end of file diff --git a/js/photos-src_mixins_AbortControllerMixin_js-src_components_HeaderNavigation_vue.js.map b/js/photos-src_mixins_AbortControllerMixin_js-src_components_HeaderNavigation_vue.js.map deleted file mode 100644 index aef46f65b..000000000 --- a/js/photos-src_mixins_AbortControllerMixin_js-src_components_HeaderNavigation_vue.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-src_mixins_AbortControllerMixin_js-src_components_HeaderNavigation_vue.js?v=483011b72a6cd4914aba","mappings":";;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;ACpKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;ACpCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;ACxCA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sources":["webpack:///photos/src/components/HeaderNavigation.vue?vue&type=script&lang=js&","webpack:///photos/src/mixins/AbortControllerMixin.js","webpack:///photos/src/components/HeaderNavigation.vue?vue&type=style&index=0&lang=scss&","webpack:///photos/src/components/HeaderNavigation.vue?vue&type=style&index=1&id=21ecc79e&lang=scss&scoped=true&","webpack://photos/./src/components/HeaderNavigation.vue?29e2","webpack://photos/./src/components/HeaderNavigation.vue?3f47","webpack:///photos/src/components/HeaderNavigation.vue","webpack://photos/./src/components/HeaderNavigation.vue?3b25","webpack:///photos/src/components/HeaderNavigation.vue?vue&type=template&id=21ecc79e&scoped=true&"],"sourcesContent":["//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport ArrowLeft from 'vue-material-design-icons/ArrowLeft.vue';\nimport { NcButton, NcLoadingIcon } from '@nextcloud/vue';\nexport default {\n name: 'HeaderNavigation',\n components: {\n ArrowLeft: ArrowLeft,\n NcButton: NcButton,\n NcLoadingIcon: NcLoadingIcon\n },\n inheritAttrs: false,\n props: {\n loading: {\n type: Boolean,\n default: false\n },\n path: {\n type: String,\n default: '/'\n },\n title: {\n type: String,\n required: true\n },\n rootTitle: {\n type: String,\n default: t('photos', 'Photos')\n }\n },\n computed: {\n isRoot: function isRoot() {\n var isRoot = this.path === '/';\n this.toggleNavigationButton(!isRoot);\n return isRoot;\n },\n name: function name() {\n if (this.isRoot) {\n return this.rootTitle;\n }\n\n return this.title;\n },\n parentPath: function parentPath() {\n var path = this.path.split('/');\n path.pop();\n var parent = path.join('/');\n return this.isRoot || parent.trim() === '' ? '/' : path.join('/');\n },\n parentName: function parentName() {\n return this.parentPath && this.parentPath.split('/').pop();\n },\n backToText: function backToText() {\n if (this.parentPath === '/') {\n return t('photos', 'Back to {folder}', {\n folder: this.rootTitle\n });\n }\n\n return t('photos', 'Back to {folder}', {\n folder: this.parentName\n });\n },\n\n /**\n * We do not want encoded slashes when browsing by folder\n * so we generate a new valid route object, get the final url back\n * decode it and use it as a direct string, which vue-router\n * does not encode afterwards\n *\n * @return {string|object}\n */\n to: function to() {\n // always remove first slash, the router\n // manage it automatically\n var regex = /^\\/?(.*)/i;\n var path = regex.exec(this.parentPath)[1]; // apply to current route\n\n var _Object$assign = Object.assign({}, this.$route, {\n params: {\n path: path\n }\n }),\n name = _Object$assign.name,\n params = _Object$assign.params; // return the full object as we don't care about\n // an empty path if this is route\n\n\n if (path === '') {\n return {\n name: name\n };\n } // returning a string prevent vue-router to encode it again\n\n\n return decodeURIComponent(this.$router.resolve({\n name: name,\n params: params\n }).resolved.path);\n }\n },\n methods: {\n folderUp: function folderUp() {\n this.$router.push(this.to);\n },\n refresh: function refresh() {\n this.$emit('refresh');\n },\n toggleNavigationButton: function toggleNavigationButton(hide) {\n // Hide the navigation toggle if the back button is shown\n var navigationToggle = document.querySelector('button.app-navigation-toggle');\n navigationToggle.style.display = hide ? 'none' : null;\n }\n }\n};","/**\n * @copyright Copyright (c) 2022 Louis Chemineau \n *\n * @author Louis Chemineau \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 .\n *\n */\nexport default {\n name: 'AbortControllerMixin',\n data: function data() {\n return {\n abortController: new AbortController()\n };\n },\n beforeDestroy: function beforeDestroy() {\n this.abortController.abort();\n },\n beforeRouteLeave: function beforeRouteLeave(from, to, next) {\n this.abortController.abort();\n this.abortController = new AbortController();\n next();\n }\n};","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \":root {\\n --photos-navigation-height: 64px;\\n --photos-navigation-spacing: calc((var(--photos-navigation-height) - 44px) / 2);\\n}\\nbutton.app-navigation-toggle {\\n right: calc(var(--photos-navigation-height) * -1) !important;\\n margin: var(--photos-navigation-spacing) !important;\\n top: 0 !important;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".photos-navigation[data-v-21ecc79e] {\\n position: -webkit-sticky;\\n position: sticky;\\n z-index: 20;\\n top: 0;\\n display: flex;\\n align-items: center;\\n width: 100%;\\n height: var(--photos-navigation-height);\\n min-height: var(--photos-navigation-height);\\n padding: 0 var(--photos-navigation-height);\\n background: var(--color-main-background);\\n}\\n.photos-navigation__back[data-v-21ecc79e] {\\n position: absolute;\\n left: 0;\\n margin: var(--photos-navigation-spacing) !important;\\n}\\n.photos-navigation__title[data-v-21ecc79e] {\\n overflow: hidden;\\n margin: 0;\\n margin-right: calc(2 * var(--photos-navigation-spacing));\\n cursor: pointer;\\n white-space: nowrap;\\n text-overflow: ellipsis;\\n}\\n.photos-navigation__loader[data-v-21ecc79e] {\\n margin-left: 32px;\\n}\\n.photos-navigation__content-right[data-v-21ecc79e] {\\n margin-left: auto;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./HeaderNavigation.vue?vue&type=style&index=0&lang=scss&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./HeaderNavigation.vue?vue&type=style&index=0&lang=scss&\";\n export default content && content.locals ? content.locals : undefined;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./HeaderNavigation.vue?vue&type=style&index=1&id=21ecc79e&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./HeaderNavigation.vue?vue&type=style&index=1&id=21ecc79e&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./HeaderNavigation.vue?vue&type=template&id=21ecc79e&scoped=true&\"\nimport script from \"./HeaderNavigation.vue?vue&type=script&lang=js&\"\nexport * from \"./HeaderNavigation.vue?vue&type=script&lang=js&\"\nimport style0 from \"./HeaderNavigation.vue?vue&type=style&index=0&lang=scss&\"\nimport style1 from \"./HeaderNavigation.vue?vue&type=style&index=1&id=21ecc79e&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 \"21ecc79e\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/admin/Docker/apps2/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('21ecc79e')) {\n api.createRecord('21ecc79e', component.options)\n } else {\n api.reload('21ecc79e', component.options)\n }\n module.hot.accept(\"./HeaderNavigation.vue?vue&type=template&id=21ecc79e&scoped=true&\", function () {\n api.rerender('21ecc79e', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/HeaderNavigation.vue\"\nexport default component.exports","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HeaderNavigation.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!./HeaderNavigation.vue?vue&type=script&lang=js&\"","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n {\n staticClass: \"photos-navigation\",\n class: { \"photos-navigation--root\": _vm.isRoot },\n attrs: { role: \"toolbar\" },\n },\n [\n !_vm.isRoot\n ? _c(\"NcButton\", {\n staticClass: \"photos-navigation__back\",\n attrs: { type: \"tertiary\" },\n on: { click: _vm.folderUp },\n scopedSlots: _vm._u(\n [\n {\n key: \"icon\",\n fn: function () {\n return [_c(\"ArrowLeft\", { attrs: { size: 20 } })]\n },\n proxy: true,\n },\n ],\n null,\n false,\n 1821202730\n ),\n })\n : _vm._e(),\n _vm._v(\" \"),\n _c(\n \"h2\",\n { staticClass: \"photos-navigation__title\", on: { click: _vm.refresh } },\n [_vm._v(\"\\n\\t\\t\" + _vm._s(_vm.name) + \"\\n\\t\")]\n ),\n _vm._v(\" \"),\n _vm.$slots.default\n ? _c(\n \"div\",\n { staticClass: \"photos-navigation__content\" },\n [_vm._t(\"default\")],\n 2\n )\n : _vm._e(),\n _vm._v(\" \"),\n _vm.loading\n ? _c(\"NcLoadingIcon\", { staticClass: \"photos-navigation__loader\" })\n : _vm._e(),\n _vm._v(\" \"),\n _vm.$slots.right\n ? _c(\n \"div\",\n { staticClass: \"photos-navigation__content-left\" },\n [_vm._t(\"left\")],\n 2\n )\n : _vm._e(),\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-src_mixins_AbortControllerMixin_js-src_components_VirtualScrolling_vue-src_views_Albums_vue.js b/js/photos-src_mixins_AbortControllerMixin_js-src_components_VirtualScrolling_vue-src_views_Albums_vue.js deleted file mode 100644 index a1d4fef00..000000000 --- a/js/photos-src_mixins_AbortControllerMixin_js-src_components_VirtualScrolling_vue-src_views_Albums_vue.js +++ /dev/null @@ -1,3 +0,0 @@ -/*! For license information please see photos-src_mixins_AbortControllerMixin_js-src_components_VirtualScrolling_vue-src_views_Albums_vue.js.LICENSE.txt */ -"use strict";(self.webpackChunkphotos=self.webpackChunkphotos||[]).push([["src_mixins_AbortControllerMixin_js-src_components_VirtualScrolling_vue-src_views_Albums_vue"],{69363:(n,t,e)=>{e.d(t,{Z:()=>o});const o={name:"AbortControllerMixin",data:function(){return{abortController:new AbortController}},beforeDestroy:function(){this.abortController.abort()},beforeRouteLeave:function(n,t,e){this.abortController.abort(),this.abortController=new AbortController,e()}}},35928:(n,t,e)=>{e.d(t,{Z:()=>s});var o=e(87537),i=e.n(o),r=e(23645),a=e.n(r)()(i());a.push([n.id,".album-cover[data-v-858c7dee]{display:flex;flex-direction:column;padding:16px;border-radius:var(--border-radius-large)}.album-cover[data-v-858c7dee]:hover,.album-cover[data-v-858c7dee]:focus{background:var(--color-background-dark)}.album-cover__image[data-v-858c7dee]{width:350px;height:350px;object-fit:none;border-radius:var(--border-radius-large)}@media only screen and (max-width: 1200px){.album-cover__image[data-v-858c7dee]{width:250px;height:250px}}.album-cover__image--placeholder[data-v-858c7dee]{background:var(--color-primary-light)}.album-cover__image--placeholder[data-v-858c7dee] .material-design-icon{width:100%;height:100%}.album-cover__image--placeholder[data-v-858c7dee] .material-design-icon .material-design-icon__svg{fill:var(--color-primary)}.album-cover__details[data-v-858c7dee]{display:flex;flex-direction:column;margin-top:16px;width:350px}@media only screen and (max-width: 1200px){.album-cover__details[data-v-858c7dee]{width:250px}}.album-cover__details__first-line[data-v-858c7dee]{display:flex}.album-cover__details__second-line[data-v-858c7dee]{display:flex;color:var(--color-text-lighter)}.album-cover__details__name[data-v-858c7dee]{flex-grow:1;margin:0;font-weight:normal;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}","",{version:3,sources:["webpack://./src/components/AlbumCover.vue"],names:[],mappings:"AAsGA,8BACC,YAAA,CACA,qBAAA,CACA,YAAA,CACA,wCAAA,CAEA,wEACC,uCAAA,CAGD,qCACC,WAAA,CACA,YAAA,CACA,eAAA,CACA,wCAAA,CAEA,2CAND,qCAOE,WAAA,CACA,YAAA,CAAA,CAGD,kDACC,qCAAA,CAEA,yEACC,UAAA,CACA,WAAA,CAEA,oGACC,yBAAA,CAMJ,uCACC,YAAA,CACA,qBAAA,CACA,eAAA,CACA,WAAA,CAEA,2CAND,uCAOE,WAAA,CAAA,CAGD,mDACC,YAAA,CAGD,oDACC,YAAA,CACA,+BAAA,CAGD,6CACC,WAAA,CACA,QAAA,CACA,kBAAA,CACA,eAAA,CACA,kBAAA,CACA,sBAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.album-cover {\n\tdisplay: flex;\n\tflex-direction: column;\n\tpadding: 16px;\n\tborder-radius: var(--border-radius-large);\n\n\t&:hover, &:focus {\n\t\tbackground: var(--color-background-dark);\n\t}\n\n\t&__image {\n\t\twidth: 350px;\n\t\theight: 350px;\n\t\tobject-fit: none;\n\t\tborder-radius: var(--border-radius-large);\n\n\t\t@media only screen and (max-width: 1200px) {\n\t\t\twidth: 250px;\n\t\t\theight: 250px;\n\t\t}\n\n\t\t&--placeholder {\n\t\t\tbackground: var(--color-primary-light);\n\n\t\t\t::v-deep .material-design-icon {\n\t\t\t\twidth: 100%;\n\t\t\t\theight: 100%;\n\n\t\t\t\t.material-design-icon__svg {\n\t\t\t\t\tfill: var(--color-primary);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t&__details {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tmargin-top: 16px;\n\t\twidth: 350px;\n\n\t\t@media only screen and (max-width: 1200px) {\n\t\t\twidth: 250px;\n\t\t}\n\n\t\t&__first-line {\n\t\t\tdisplay: flex;\n\t\t}\n\n\t\t&__second-line {\n\t\t\tdisplay: flex;\n\t\t\tcolor: var(--color-text-lighter);\n\t\t}\n\n\t\t&__name {\n\t\t\tflex-grow: 1;\n\t\t\tmargin: 0;\n\t\t\tfont-weight: normal;\n\t\t\toverflow: hidden;\n\t\t\twhite-space: nowrap;\n\t\t\ttext-overflow: ellipsis;\n\n\t\t}\n\t}\n\n}\n'],sourceRoot:""}]);const s=a},6179:(n,t,e)=>{e.d(t,{Z:()=>s});var o=e(87537),i=e.n(o),r=e(23645),a=e.n(r)()(i());a.push([n.id,":root{--photos-navigation-height: 64px;--photos-navigation-spacing: calc((var(--photos-navigation-height) - 44px) / 2)}button.app-navigation-toggle{top:0 !important;right:calc(var(--photos-navigation-height)*-1) !important;margin:var(--photos-navigation-spacing) !important}","",{version:3,sources:["webpack://./src/components/HeaderNavigation.vue"],names:[],mappings:"AAgLA,MACC,gCAAA,CAEA,+EAAA,CAID,6BAEC,gBAAA,CACA,yDAAA,CACA,kDAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n:root {\n\t--photos-navigation-height: 64px;\n\t// header height - button size\n\t--photos-navigation-spacing: calc((var(--photos-navigation-height) - 44px) / 2);\n}\n\n// Properly position the navigation toggle button\nbutton.app-navigation-toggle {\n\t// App-navigation have a 4px margin top\n\ttop: 0 !important;\n\tright: calc(var(--photos-navigation-height) * -1) !important;\n\tmargin: var(--photos-navigation-spacing) !important;\n}\n\n'],sourceRoot:""}]);const s=a},84827:(n,t,e)=>{e.d(t,{Z:()=>s});var o=e(87537),i=e.n(o),r=e(23645),a=e.n(r)()(i());a.push([n.id,".photos-navigation[data-v-b9975c76]{position:-webkit-sticky;position:sticky;z-index:20;top:0;display:flex;align-items:center;width:100%;height:var(--photos-navigation-height);min-height:var(--photos-navigation-height);padding:0 var(--photos-navigation-height);background:var(--color-main-background)}.photos-navigation__back[data-v-b9975c76]{position:absolute;left:0;margin:var(--photos-navigation-spacing) !important}.photos-navigation__title[data-v-b9975c76]{overflow:hidden;margin:0;margin-right:calc(2*var(--photos-navigation-spacing));cursor:pointer;white-space:nowrap;text-overflow:ellipsis}.photos-navigation__loader[data-v-b9975c76]{margin-left:32px}.photos-navigation__content-right[data-v-b9975c76]{display:flex;align-items:center;justify-content:center;margin-left:auto}","",{version:3,sources:["webpack://./src/components/HeaderNavigation.vue"],names:[],mappings:"AAiMA,oCACC,uBAAA,CAAA,eAAA,CACA,UAAA,CACA,KAAA,CACA,YAAA,CACA,kBAAA,CACA,UAAA,CACA,sCAAA,CACA,0CAAA,CACA,yCAAA,CACA,uCAAA,CAEA,0CAEC,iBAAA,CACA,MAAA,CACA,kDAAA,CAGD,2CACC,eAAA,CACA,QAAA,CACA,qDAAA,CACA,cAAA,CACA,kBAAA,CACA,sBAAA,CAGD,4CACC,gBAAA,CAGD,mDACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,gBAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.photos-navigation {\n\tposition: sticky;\n\tz-index: 20;\n\ttop: 0;\n\tdisplay: flex;\n\talign-items: center;\n\twidth: 100%;\n\theight: var(--photos-navigation-height);\n\tmin-height: var(--photos-navigation-height);\n\tpadding: 0 var(--photos-navigation-height);\n\tbackground: var(--color-main-background);\n\n\t&__back {\n\t\t// Above the navigation menu\n\t\tposition: absolute;\n\t\tleft: 0;\n\t\tmargin: var(--photos-navigation-spacing) !important;\n\t}\n\n\t&__title {\n\t\toverflow: hidden;\n\t\tmargin: 0;\n\t\tmargin-right: calc(2 * var(--photos-navigation-spacing));\n\t\tcursor: pointer;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t}\n\n\t&__loader {\n\t\tmargin-left: 32px;\n\t}\n\n\t&__content-right {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\tmargin-left: auto;\n\t}\n}\n\n'],sourceRoot:""}]);const s=a},21238:(n,t,e)=>{e.d(t,{Z:()=>s});var o=e(87537),i=e.n(o),r=e(23645),a=e.n(r)()(i());a.push([n.id,".vs-container[data-v-5e8733b7]{overflow-y:scroll;height:100%}.vs-rows-container[data-v-5e8733b7]{box-sizing:border-box}","",{version:3,sources:["webpack://./src/components/VirtualScrolling.vue"],names:[],mappings:"AAkTA,+BACC,iBAAA,CACA,WAAA,CAGD,oCACC,qBAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.vs-container {\n\toverflow-y: scroll;\n\theight: 100%;\n}\n\n.vs-rows-container {\n\tbox-sizing: border-box;\n}\n'],sourceRoot:""}]);const s=a},39104:(n,t,e)=>{e.d(t,{Z:()=>s});var o=e(87537),i=e.n(o),r=e(23645),a=e.n(r)()(i());a.push([n.id,".albums[data-v-3c63727a]{display:flex;flex-direction:column;height:100%}.albums__list[data-v-3c63727a]{padding:32px 48px;flex-grow:1;display:flex;flex-wrap:wrap;gap:16px;align-items:flex-start;height:calc(100% - 60px);overflow-x:scroll}@media only screen and (max-width: 1200px){.albums__list[data-v-3c63727a]{padding:32px 12px;justify-content:center}}.albums__empty[data-v-3c63727a]{display:flex;flex-direction:column;align-items:center}.albums__empty__button[data-v-3c63727a]{margin-top:32px}.empty-content-with-illustration[data-v-3c63727a] .empty-content__icon{width:200px;height:200px}.empty-content-with-illustration[data-v-3c63727a] .empty-content__icon svg{width:200px;height:200px}","",{version:3,sources:["webpack://./src/views/Albums.vue"],names:[],mappings:"AA+IA,yBACC,YAAA,CACA,qBAAA,CACA,WAAA,CAEA,+BACC,iBAAA,CACA,WAAA,CACA,YAAA,CACA,cAAA,CACA,QAAA,CACA,sBAAA,CACA,wBAAA,CACA,iBAAA,CAEA,2CAVD,+BAWE,iBAAA,CACA,sBAAA,CAAA,CAKF,gCACC,YAAA,CACA,qBAAA,CACA,kBAAA,CAEA,wCACC,eAAA,CAKH,wEACC,WAAA,CACA,YAAA,CAEA,4EACC,WAAA,CACA,YAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.albums {\n\tdisplay: flex;\n\tflex-direction: column;\n\theight: 100%;\n\n\t&__list {\n\t\tpadding: 32px 48px;\n\t\tflex-grow: 1;\n\t\tdisplay: flex;\n\t\tflex-wrap: wrap;\n\t\tgap: 16px;\n\t\talign-items: flex-start;\n\t\theight: calc(100% - 60px);\n\t\toverflow-x: scroll;\n\n\t\t@media only screen and (max-width: 1200px) {\n\t\t\tpadding: 32px 12px;\n\t\t\tjustify-content: center;\n\t\t}\n\n\t}\n\n\t&__empty {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\talign-items: center;\n\n\t\t&__button {\n\t\t\tmargin-top: 32px;\n\t\t}\n\t}\n}\n\n.empty-content-with-illustration ::v-deep .empty-content__icon {\n\twidth: 200px;\n\theight: 200px;\n\n\tsvg {\n\t\twidth: 200px;\n\t\theight: 200px;\n\t}\n}\n'],sourceRoot:""}]);const s=a},36288:(n,t,e)=>{e.d(t,{Z:()=>i});const o={name:"ImageMultipleIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const i=(0,e(51900).Z)(o,(function(){var n=this,t=n.$createElement,e=n._self._c||t;return e("span",n._b({staticClass:"material-design-icon image-multiple-icon",attrs:{"aria-hidden":!n.title,"aria-label":n.title,role:"img"},on:{click:function(t){return n.$emit("click",t)}}},"span",n.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:n.fillColor,width:n.size,height:n.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M22,16V4A2,2 0 0,0 20,2H8A2,2 0 0,0 6,4V16A2,2 0 0,0 8,18H20A2,2 0 0,0 22,16M11,12L13.03,14.71L16,11L20,16H8M2,6V20A2,2 0 0,0 4,22H18V20H4V6"}},[n.title?e("title",[n._v(n._s(n.title))]):n._e()])])])}),[],!1,null,null,null).exports},57821:(n,e,o)=>{o.d(e,{Z:()=>T});var i=o(20629),r=o(36288),a=o(79753);function s(n,t){var e=Object.keys(n);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(n);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(n,t).enumerable}))),e.push.apply(e,o)}return e}function l(n){for(var t=1;t{o.d(e,{Z:()=>w});var i=o(76240),r=o(33476);const a={name:"HeaderNavigation",components:{ArrowLeft:i.default,NcButton:r.NcButton,NcLoadingIcon:r.NcLoadingIcon},inheritAttrs:!1,props:{loading:{type:Boolean,default:!1},path:{type:String,default:"/"},title:{type:String,required:!0},rootTitle:{type:String,default:t("photos","Photos")},params:{type:Object,default:null}},computed:{isRoot:function(){var n="/"===this.path;return this.toggleNavigationButton(!n),n},name:function(){return this.isRoot?this.rootTitle:this.title},parentPath:function(){var n=this.path.split("/");n.pop();var t=n.join("/");return this.isRoot||""===t.trim()?"/":n.join("/")},parentName:function(){return this.parentPath&&this.parentPath.split("/").pop()},backToText:function(){return"/"===this.parentPath?t("photos","Back to {folder}",{folder:this.rootTitle}):t("photos","Back to {folder}",{folder:this.parentName})},to:function(){var n=/^\/?(.*)/i.exec(this.parentPath)[1],t=Object.assign({},this.$route,{params:this.params||{path:n}}),e=t.name,o=t.params;return""===n?{name:e}:decodeURIComponent(this.$router.resolve({name:e,params:o}).resolved.path)}},methods:{folderUp:function(){this.$router.push(this.to)},refresh:function(){this.$emit("refresh")},toggleNavigationButton:function(n){document.querySelector("button.app-navigation-toggle").style.display=n?"none":null}}};var s=o(93379),l=o.n(s),c=o(7795),A=o.n(c),u=o(90569),p=o.n(u),m=o(3565),g=o.n(m),d=o(19216),h=o.n(d),v=o(44589),C=o.n(v),f=o(6179),b={};b.styleTagTransform=C(),b.setAttributes=g(),b.insert=p().bind(null,"head"),b.domAPI=A(),b.insertStyleElement=h();l()(f.Z,b);f.Z&&f.Z.locals&&f.Z.locals;var _=o(84827),y={};y.styleTagTransform=C(),y.setAttributes=g(),y.insert=p().bind(null,"head"),y.domAPI=A(),y.insertStyleElement=h();l()(_.Z,y);_.Z&&_.Z.locals&&_.Z.locals;const w=(0,o(51900).Z)(a,(function(){var n=this,t=n.$createElement,e=n._self._c||t;return e("div",{staticClass:"photos-navigation",class:{"photos-navigation--root":n.isRoot},attrs:{role:"toolbar"}},[n.isRoot?n._e():e("NcButton",{staticClass:"photos-navigation__back",attrs:{type:"tertiary"},on:{click:n.folderUp},scopedSlots:n._u([{key:"icon",fn:function(){return[e("ArrowLeft",{attrs:{size:20}})]},proxy:!0}],null,!1,1821202730)}),n._v(" "),e("h2",{staticClass:"photos-navigation__title",on:{click:n.refresh}},[n._v("\n\t\t"+n._s(n.name)+"\n\t")]),n._v(" "),n.$slots.default?e("div",{staticClass:"photos-navigation__content"},[n._t("default")],2):n._e(),n._v(" "),n.loading?e("NcLoadingIcon",{staticClass:"photos-navigation__loader"}):n._e(),n._v(" "),e("div",{staticClass:"photos-navigation__content-right"},[n._t("right")],2)],1)}),[],!1,null,"b9975c76",null).exports},20561:(n,t,e)=>{e.d(t,{Z:()=>k});var o=e(20296),i=e(59537);function r(n,t){var e="undefined"!=typeof Symbol&&n[Symbol.iterator]||n["@@iterator"];if(!e){if(Array.isArray(n)||(e=A(n))||t&&n&&"number"==typeof n.length){e&&(n=e);var o=0,i=function(){};return{s:i,n:function(){return o>=n.length?{done:!0}:{done:!1,value:n[o++]}},e:function(n){throw n},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var r,a=!0,s=!1;return{s:function(){e=e.call(n)},n:function(){var n=e.next();return a=n.done,n},e:function(n){s=!0,r=n},f:function(){try{a||null==e.return||e.return()}finally{if(s)throw r}}}}function a(n,t){var e=Object.keys(n);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(n);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(n,t).enumerable}))),e.push.apply(e,o)}return e}function s(n){for(var t=1;tn.length)&&(t=n.length);for(var e=0,o=new Array(t);e=this.rowsHeight-n},container:function(){return i.Z.debug("[VirtualScrolling] Computing container"),null!==this.containerElement?this.containerElement:this.useWindow?window:this.$refs.container}},watch:{isNearBottom:function(n){n&&this.$emit("need-content")},rows:function(){this.isNearBottom&&this.$emit("need-content")},scrollToKey:function(n){var t,e=0,o=r(this.rows);try{for(o.s();!(t=o.n()).done;){var i=t.value;if(i.key===n)return void this.$refs.container.scrollTo({top:e,behavior:"smooth"});e+=i.height}}catch(n){o.e(n)}finally{o.f()}}},mounted:function(){var n=this;this.resizeObserver=new ResizeObserver((function(t){var e,o=r(t);try{for(o.s();!(e=o.n()).done;){var i=e.value,a=i.contentRect;i.target.classList.contains("vs-container")&&(n.containerHeight=a.height),i.target.classList.contains("vs-rows-container")&&(n.rowsContainerHeight=a.height)}}catch(n){o.e(n)}finally{o.f()}})),this.useWindow?(window.addEventListener("resize",this.updateContainerSize),this.containerHeight=window.innerHeight):this.resizeObserver.observe(this.container),this.resizeObserver.observe(this.$refs.rowsContainer),this.container.addEventListener("scroll",this.updateScrollPosition)},beforeDestroy:function(){this.useWindow&&window.removeEventListener("resize",this.updateContainerSize),this.resizeObserver.disconnect(),this.container.removeEventListener("scroll",this.updateScrollPosition)},methods:{updateScrollPosition:(0,o.debounce)((function(){this.useWindow?this.scrollPosition=this.container.scrollY:this.scrollPosition=this.container.scrollTop}),200),updateContainerSize:function(){this.containerHeight=window.innerHeight}}};var m=e(93379),g=e.n(m),d=e(7795),h=e.n(d),v=e(90569),C=e.n(v),f=e(3565),b=e.n(f),_=e(19216),y=e.n(_),w=e(44589),x=e.n(w),T=e(21238),W={};W.styleTagTransform=x(),W.setAttributes=b(),W.insert=C().bind(null,"head"),W.domAPI=h(),W.insertStyleElement=y();g()(T.Z,W);T.Z&&T.Z.locals&&T.Z.locals;const k=(0,e(51900).Z)(p,(function(){var n=this,t=n.$createElement,e=n._self._c||t;return n.useWindow||null!==n.containerElement?e("div",{ref:"rowsContainer",staticClass:"vs-rows-container",style:n.rowsContainerStyle},[n._t("default",null,{renderedRows:n.visibleRows}),n._v(" "),n._t("loader")],2):e("div",{ref:"container",staticClass:"vs-container"},[e("div",{ref:"rowsContainer",staticClass:"vs-rows-container",style:n.rowsContainerStyle},[n._t("default",null,{renderedRows:n.visibleRows}),n._v(" "),n._t("loader")],2)])}),[],!1,null,"5e8733b7",null).exports},55333:(n,t,e)=>{e.r(t),e.d(t,{default:()=>T});var o=e(33476),i=e(40502),r=e(65322),a=e(12945),s=e(57821),l=e(14684),c=e(46756);const A={name:"Albums",components:{AlbumCover:s.Z,AlbumForm:l.Z,FolderMultipleImage:r.Z,HeaderNavigation:c.Z,NcButton:o.NcButton,NcEmptyContent:o.NcEmptyContent,NcModal:o.NcModal,Plus:i.Z},mixins:[a.Z],data:function(){return{showAlbumCreationForm:!1}},computed:{noAlbums:function(){return 0===Object.keys(this.albums).length}},methods:{handleAlbumCreated:function(n){var t=n.album;this.showAlbumCreationForm=!1,this.$router.push({name:"albums",params:{path:t.basename}})},onRefresh:function(){this.fetchAlbums()}}};var u=e(93379),p=e.n(u),m=e(7795),g=e.n(m),d=e(90569),h=e.n(d),v=e(3565),C=e.n(v),f=e(19216),b=e.n(f),_=e(44589),y=e.n(_),w=e(39104),x={};x.styleTagTransform=y(),x.setAttributes=C(),x.insert=h().bind(null,"head"),x.domAPI=g(),x.insertStyleElement=b();p()(w.Z,x);w.Z&&w.Z.locals&&w.Z.locals;const T=(0,e(51900).Z)(A,(function(){var n=this,t=n.$createElement,e=n._self._c||t;return n.errorFetchingAlbums?e("NcEmptyContent",[n._v("\n\t"+n._s(n.t("photos","An error occurred"))+"\n")]):e("div",{staticClass:"albums"},[e("HeaderNavigation",{key:"navigation",attrs:{loading:n.loadingAlbums,title:n.t("photos","Albums"),"root-title":n.t("photos","Albums")},on:{refresh:n.onRefresh}},[e("NcButton",{attrs:{type:"primary","aria-label":n.t("photos","Create a new album.")},on:{click:function(t){n.showAlbumCreationForm=!0}},scopedSlots:n._u([{key:"icon",fn:function(){return[e("Plus")]},proxy:!0}])},[n._v("\n\t\t\t"+n._s(n.t("photos","New album"))+"\n\t\t")])],1),n._v(" "),n.noAlbums&&!n.loadingAlbums?e("div",{staticClass:"albums__empty"},[e("NcEmptyContent",{scopedSlots:n._u([{key:"icon",fn:function(){return[e("FolderMultipleImage")]},proxy:!0},{key:"desc",fn:function(){return[n._v("\n\t\t\t\t"+n._s(n.t("photos","There is no album yet!"))+"\n\t\t\t")]},proxy:!0}],null,!1,3685789295)}),n._v(" "),e("NcButton",{staticClass:"albums__empty__button",attrs:{type:"primary","aria-label":n.t("photos","Create a new album")},on:{click:function(t){n.showAlbumCreationForm=!0}},scopedSlots:n._u([{key:"icon",fn:function(){return[e("Plus")]},proxy:!0}],null,!1,1489515321)},[n._v("\n\t\t\t"+n._s(n.t("photos","Add"))+"\n\t\t")])],1):n.noAlbums?n._e():e("div",{staticClass:"albums__list"},n._l(n.albums,(function(n){return e("AlbumCover",{key:n.basename,staticClass:"album",attrs:{album:n}})})),1),n._v(" "),n.showAlbumCreationForm?e("NcModal",{attrs:{title:n.t("photos","New album")},on:{close:function(t){n.showAlbumCreationForm=!1}}},[e("AlbumForm",{on:{done:n.handleAlbumCreated}})],1):n._e()],1)}),[],!1,null,"3c63727a",null).exports}}]); -//# sourceMappingURL=photos-src_mixins_AbortControllerMixin_js-src_components_VirtualScrolling_vue-src_views_Albums_vue.js.map?v=92818d127703b262f9b7 \ No newline at end of file diff --git a/js/photos-src_mixins_AbortControllerMixin_js-src_components_VirtualScrolling_vue-src_views_Albums_vue.js.LICENSE.txt b/js/photos-src_mixins_AbortControllerMixin_js-src_components_VirtualScrolling_vue-src_views_Albums_vue.js.LICENSE.txt deleted file mode 100644 index 6f3657b52..000000000 --- a/js/photos-src_mixins_AbortControllerMixin_js-src_components_VirtualScrolling_vue-src_views_Albums_vue.js.LICENSE.txt +++ /dev/null @@ -1,21 +0,0 @@ -/** - * @copyright Copyright (c) 2022 Louis Chemineau - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ diff --git a/js/photos-src_mixins_AbortControllerMixin_js-src_components_VirtualScrolling_vue-src_views_Albums_vue.js.map b/js/photos-src_mixins_AbortControllerMixin_js-src_components_VirtualScrolling_vue-src_views_Albums_vue.js.map deleted file mode 100644 index c479cd413..000000000 --- a/js/photos-src_mixins_AbortControllerMixin_js-src_components_VirtualScrolling_vue-src_views_Albums_vue.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-src_mixins_AbortControllerMixin_js-src_components_VirtualScrolling_vue-src_views_Albums_vue.js?v=92818d127703b262f9b7","mappings":";2MAsBA,SACCA,KAAM,uBAENC,KAHc,WAIb,MAAO,CACNC,gBAAiB,IAAIC,gBAEtB,EAEDC,cATc,WAUbC,KAAKH,gBAAgBI,OACrB,EAEDC,iBAbc,SAaGC,EAAMC,EAAIC,GAC1BL,KAAKH,gBAAgBI,QACrBD,KAAKH,gBAAkB,IAAIC,gBAC3BO,GACA,wECpCEC,QAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,svCAAuvC,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,6CAA6C,MAAQ,GAAG,SAAW,8YAA8Y,eAAiB,CAAC,s7DAAsgE,WAAa,MAEjzH,8ECJIH,QAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,qRAAsR,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,mDAAmD,MAAQ,GAAG,SAAW,qEAAqE,eAAiB,CAAC,g0CAAg5C,WAAa,MAEv5D,+ECJIH,QAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,gxBAAixB,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,mDAAmD,MAAQ,GAAG,SAAW,0SAA0S,eAAiB,CAAC,mvDAAm0D,WAAa,MAE1iG,+ECJIH,QAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,0HAA2H,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,mDAAmD,MAAQ,GAAG,SAAW,+CAA+C,eAAiB,CAAC,2vCAA20C,WAAa,MAEjqD,+ECJIH,QAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,urBAAwrB,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,oCAAoC,MAAQ,GAAG,SAAW,mRAAmR,eAAiB,CAAC,4gDAA4lD,WAAa,MAEpsF,4CCaA,MCpBiH,EDoBjH,CACEd,KAAM,oBACNe,MAAO,CAAC,SACRC,MAAO,CACLC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,cACd,GCRW,WAAa,IAAIG,EAAInB,KAASoB,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOH,EAAIK,GAAG,CAACC,YAAY,2CAA2CC,MAAM,CAAC,eAAeP,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOe,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOT,EAAIU,MAAM,QAASD,EAAO,IAAI,OAAOT,EAAIW,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOP,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACK,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,iJAAiJ,CAAEP,EAAS,MAAEG,EAAG,QAAQ,CAACH,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIP,UAAUO,EAAIc,UAAU,GACxqB,IDUpB,EACA,KACA,KACA,MAI8B,0CElBhC,4tBCyDA,MCzD2K,EDyD3K,CACA,kBAEA,YAGA,mBAGA,OACA,UACA,YACA,cAIA,iBACA,SACA,QACA,YAHA,IASA,MATA,WAUA,iCACA,EAKA,SAhBA,WAiBA,oHACA,EAEA,OApBA,WAqBA,mFACA,0IEpFIC,EAAU,CAAC,EAEfA,EAAQC,kBAAoB,IAC5BD,EAAQE,cAAgB,IAElBF,EAAQG,OAAS,SAAc,KAAM,QAE3CH,EAAQI,OAAS,IACjBJ,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKJ,KAAW,YAAiB,WCPlD,SAXgB,cACd,GJTW,WAAa,IAAIf,EAAInB,KAASoB,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAOE,EAAG,cAAc,CAACG,YAAY,cAAcC,MAAM,CAAC,GAAM,WAAaP,EAAIqB,WAAY,EAA2B,IAAzBrB,EAAIsB,MAAMC,UAAkBpB,EAAG,MAAM,CAACG,YAAY,qBAAqBC,MAAM,CAAC,IAAMP,EAAIwB,SAAS,IAAMxB,EAAIyB,UAAUtB,EAAG,MAAM,CAACG,YAAY,sDAAsD,CAACH,EAAG,gBAAgB,CAACI,MAAM,CAAC,KAAO,QAAQ,GAAGP,EAAIY,GAAG,KAAKT,EAAG,MAAM,CAACG,YAAY,wBAAwB,CAACH,EAAG,MAAM,CAACG,YAAY,oCAAoC,CAACH,EAAG,KAAK,CAACG,YAAY,8BAA8B,CAACN,EAAIY,GAAG,aAAaZ,EAAIa,GAAGb,EAAIqB,UAAU,gBAAgBrB,EAAIY,GAAG,KAAKT,EAAG,MAAM,CAACG,YAAY,qCAAqC,CAACN,EAAIY,GAAG,WAAWZ,EAAIa,GAAGb,EAAIsB,MAAMI,MAAM,MAAM1B,EAAIa,GAAGb,EAAI2B,EAAE,SAAU,UAAW,uBAAwB3B,EAAIsB,MAAMM,UAAU,eAAe,GACx0B,IIWpB,EACA,KACA,WACA,MAI8B,0CCnBhC,0BCyDA,MCzDiL,EDyDjL,CACA,wBAEA,YACA,oBACA,oBACA,+BAGA,gBAEA,OACA,SACA,aACA,YAEA,MACA,YACA,aAEA,OACA,YACA,aAEA,WACA,YACA,8BAGA,QACA,YACA,eAIA,UACA,OADA,WAEA,sBAEA,OADA,gCACA,CACA,EAEA,KAPA,WAQA,mBACA,eAEA,UACA,EAEA,WAdA,WAeA,2BACA,QACA,kBACA,kCACA,IACA,WACA,EAEA,WAvBA,WAwBA,wDACA,EAEA,WA3BA,WA4BA,4BACA,uDAEA,uDACA,EAUA,GA1CA,WA6CA,IACA,EADA,YACA,yBAGA,gCACA,+BADA,oBAMA,aACA,SAIA,yEACA,GAGA,SACA,SADA,WAEA,0BACA,EAEA,QALA,WAMA,qBACA,EAEA,uBATA,SASA,GAEA,uDACA,2BACA,wIE9JIb,EAAU,CAAC,EAEfA,EAAQC,kBAAoB,IAC5BD,EAAQE,cAAgB,IAElBF,EAAQG,OAAS,SAAc,KAAM,QAE3CH,EAAQI,OAAS,IACjBJ,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKJ,KAAW,YAAiB,0BCf9C,EAAU,CAAC,EAEf,EAAQC,kBAAoB,IAC5B,EAAQC,cAAgB,IAElB,EAAQC,OAAS,SAAc,KAAM,QAE3C,EAAQC,OAAS,IACjB,EAAQC,mBAAqB,IAEhB,IAAI,IAAS,GAKJ,KAAW,YAAiB,WCNlD,SAXgB,cACd,GLVW,WAAa,IAAIpB,EAAInB,KAASoB,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACG,YAAY,oBAAoBuB,MAAM,CAAC,0BAA2B7B,EAAI8B,QAAQvB,MAAM,CAAC,KAAO,YAAY,CAAGP,EAAI8B,OAAmP9B,EAAIc,KAA/OX,EAAG,WAAW,CAACG,YAAY,0BAA0BC,MAAM,CAAC,KAAO,YAAYC,GAAG,CAAC,MAAQR,EAAI+B,UAAUC,YAAYhC,EAAIiC,GAAG,CAAC,CAACC,IAAI,OAAOC,GAAG,WAAW,MAAO,CAAChC,EAAG,YAAY,CAACI,MAAM,CAAC,KAAO,MAAM,EAAE6B,OAAM,IAAO,MAAK,EAAM,cAAuBpC,EAAIY,GAAG,KAAKT,EAAG,KAAK,CAACG,YAAY,2BAA2BE,GAAG,CAAC,MAAQR,EAAIqC,UAAU,CAACrC,EAAIY,GAAG,SAASZ,EAAIa,GAAGb,EAAIxB,MAAM,UAAUwB,EAAIY,GAAG,KAAMZ,EAAIsC,OAAc,QAAEnC,EAAG,MAAM,CAACG,YAAY,8BAA8B,CAACN,EAAIuC,GAAG,YAAY,GAAGvC,EAAIc,KAAKd,EAAIY,GAAG,KAAMZ,EAAW,QAAEG,EAAG,gBAAgB,CAACG,YAAY,8BAA8BN,EAAIc,KAAKd,EAAIY,GAAG,KAAKT,EAAG,MAAM,CAACG,YAAY,oCAAoC,CAACN,EAAIuC,GAAG,UAAU,IAAI,EAAE,GACr3B,IKYpB,EACA,KACA,WACA,MAI8B,0CCpBhC,skECsDA,MCtDiL,EDsDjL,CACA,wBAEA,OACA,MACA,WACA,aAGA,kBACA,iBACA,cAGA,WACA,aACA,YAGA,mBACA,YACA,WAEA,0BACA,YACA,WAEA,oBACA,YAEA,WAEA,mBACA,YACA,WAEA,aACA,YACA,aAIA,KA1CA,WA2CA,OACA,iBACA,kBACA,sBAEA,oBAEA,EAEA,UAIA,YAJA,WAKA,iEAGA,0BACA,uBAIA,2BACA,kCACA,4BAEA,IACA,IAIA,iBACA,sBAIA,GAHA,IACA,YAEA,eACA,SAGA,aAaA,OAXA,iBACA,SAEA,iBACA,aAEA,iBACA,cAIA,YACA,GADA,QAGA,GAHA,IAIA,gBAGA,MACA,EAOA,WA3DA,WA8DA,iBACA,oCACA,sCAJA,GAKA,EAKA,WAtEA,WAsEA,WACA,+BACA,SAGA,kFAEA,iBACA,oCACA,WACA,qCACA,EAOA,mBAxFA,WAyFA,OACA,uCACA,2CAEA,EAQA,aArGA,WAsGA,kDACA,kEACA,EAKA,UA7GA,WA+GA,OADA,oDACA,6BACA,sBACA,eACA,OAEA,oBAEA,GAGA,OACA,aADA,SACA,GACA,GACA,0BAEA,EAEA,KAPA,WAUA,mBACA,0BAEA,EAEA,YAfA,SAeA,GACA,IADA,EACA,IADA,IAEA,WAFA,IAEA,0CACA,aAEA,YADA,yDAIA,WACA,CATA,+BAUA,GAGA,QAzMA,WAyMA,WACA,8DACA,GADA,IACA,0CACA,gBACA,8CACA,4BAEA,mDACA,+BAEA,CATA,+BAUA,IAEA,gBACA,2DACA,yCAEA,4CAGA,sDACA,mEACA,EAEA,cAjOA,WAkOA,gBACA,8DAGA,iCACA,sEACA,EAEA,SACA,gDACA,eACA,2CAEA,4CAEA,QAEA,oBATA,WAUA,uCACA,yIEhSIxB,EAAU,CAAC,EAEfA,EAAQC,kBAAoB,IAC5BD,EAAQE,cAAgB,IAElBF,EAAQG,OAAS,SAAc,KAAM,QAE3CH,EAAQI,OAAS,IACjBJ,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKJ,KAAW,YAAiB,WCPlD,SAXgB,cACd,GJTW,WAAa,IAAIf,EAAInB,KAASoB,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAASD,EAAIwC,WAAsC,OAAzBxC,EAAIyC,iBAA4QtC,EAAG,MAAM,CAACuC,IAAI,gBAAgBpC,YAAY,oBAAoBqC,MAAO3C,EAAsB,oBAAG,CAACA,EAAIuC,GAAG,UAAU,KAAK,CAAC,aAAevC,EAAI4C,cAAc5C,EAAIY,GAAG,KAAKZ,EAAIuC,GAAG,WAAW,GAAtapC,EAAG,MAAM,CAACuC,IAAI,YAAYpC,YAAY,gBAAgB,CAACH,EAAG,MAAM,CAACuC,IAAI,gBAAgBpC,YAAY,oBAAoBqC,MAAO3C,EAAsB,oBAAG,CAACA,EAAIuC,GAAG,UAAU,KAAK,CAAC,aAAevC,EAAI4C,cAAc5C,EAAIY,GAAG,KAAKZ,EAAIuC,GAAG,WAAW,IAA4L,GACpiB,IIWpB,EACA,KACA,WACA,MAI8B,uDCnBhC,iFC4FA,MC5FuK,ED4FvK,CACA,cACA,YACA,eACA,cACA,wBACA,qBACA,oBACA,gCACA,kBACA,UAGA,QACA,KAGA,KAjBA,WAkBA,OACA,yBAEA,EAEA,UAIA,SAJA,WAKA,0CACA,GAGA,SACA,mBADA,YACA,cACA,8BACA,mBACA,cACA,QACA,kBAGA,EAEA,UAXA,WAYA,kBACA,yIE9HIxB,EAAU,CAAC,EAEfA,EAAQC,kBAAoB,IAC5BD,EAAQE,cAAgB,IAElBF,EAAQG,OAAS,SAAc,KAAM,QAE3CH,EAAQI,OAAS,IACjBJ,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKJ,KAAW,YAAiB,WCPlD,SAXgB,cACd,GJTW,WAAa,IAAIf,EAAInB,KAASoB,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAQD,EAAuB,oBAAEG,EAAG,iBAAiB,CAACH,EAAIY,GAAG,OAAOZ,EAAIa,GAAGb,EAAI6C,EAAE,SAAU,sBAAsB,QAAQ1C,EAAG,MAAM,CAACG,YAAY,UAAU,CAACH,EAAG,mBAAmB,CAAC+B,IAAI,aAAa3B,MAAM,CAAC,QAAUP,EAAI8C,cAAc,MAAQ9C,EAAI6C,EAAE,SAAU,UAAU,aAAa7C,EAAI6C,EAAE,SAAU,WAAWrC,GAAG,CAAC,QAAUR,EAAI+C,YAAY,CAAC5C,EAAG,WAAW,CAACI,MAAM,CAAC,KAAO,UAAU,aAAaP,EAAI6C,EAAE,SAAU,wBAAwBrC,GAAG,CAAC,MAAQ,SAASC,GAAQT,EAAIgD,uBAAwB,CAAI,GAAGhB,YAAYhC,EAAIiC,GAAG,CAAC,CAACC,IAAI,OAAOC,GAAG,WAAW,MAAO,CAAChC,EAAG,QAAQ,EAAEiC,OAAM,MAAS,CAACpC,EAAIY,GAAG,WAAWZ,EAAIa,GAAGb,EAAI6C,EAAE,SAAU,cAAc,aAAa,GAAG7C,EAAIY,GAAG,KAAMZ,EAAIiD,WAAajD,EAAI8C,cAAe3C,EAAG,MAAM,CAACG,YAAY,iBAAiB,CAACH,EAAG,iBAAiB,CAAC6B,YAAYhC,EAAIiC,GAAG,CAAC,CAACC,IAAI,OAAOC,GAAG,WAAW,MAAO,CAAChC,EAAG,uBAAuB,EAAEiC,OAAM,GAAM,CAACF,IAAI,OAAOC,GAAG,WAAW,MAAO,CAACnC,EAAIY,GAAG,aAAaZ,EAAIa,GAAGb,EAAI6C,EAAE,SAAU,2BAA2B,YAAY,EAAET,OAAM,IAAO,MAAK,EAAM,cAAcpC,EAAIY,GAAG,KAAKT,EAAG,WAAW,CAACG,YAAY,wBAAwBC,MAAM,CAAC,KAAO,UAAU,aAAaP,EAAI6C,EAAE,SAAU,uBAAuBrC,GAAG,CAAC,MAAQ,SAASC,GAAQT,EAAIgD,uBAAwB,CAAI,GAAGhB,YAAYhC,EAAIiC,GAAG,CAAC,CAACC,IAAI,OAAOC,GAAG,WAAW,MAAO,CAAChC,EAAG,QAAQ,EAAEiC,OAAM,IAAO,MAAK,EAAM,aAAa,CAACpC,EAAIY,GAAG,WAAWZ,EAAIa,GAAGb,EAAI6C,EAAE,SAAU,QAAQ,aAAa,GAAK7C,EAAIiD,SAAgLjD,EAAIc,KAA1KX,EAAG,MAAM,CAACG,YAAY,gBAAgBN,EAAIkD,GAAIlD,EAAU,QAAE,SAASsB,GAAO,OAAOnB,EAAG,aAAa,CAAC+B,IAAIZ,EAAM6B,SAAS7C,YAAY,QAAQC,MAAM,CAAC,MAAQe,IAAQ,IAAG,GAAYtB,EAAIY,GAAG,KAAMZ,EAAyB,sBAAEG,EAAG,UAAU,CAACI,MAAM,CAAC,MAAQP,EAAI6C,EAAE,SAAU,cAAcrC,GAAG,CAAC,MAAQ,SAASC,GAAQT,EAAIgD,uBAAwB,CAAK,IAAI,CAAC7C,EAAG,YAAY,CAACK,GAAG,CAAC,KAAOR,EAAIoD,uBAAuB,GAAGpD,EAAIc,MAAM,EAAE,GAC90D,IIWpB,EACA,KACA,WACA,MAI8B","sources":["webpack:///photos/src/mixins/AbortControllerMixin.js","webpack:///photos/src/components/AlbumCover.vue?vue&type=style&index=0&id=858c7dee&lang=scss&scoped=true&","webpack:///photos/src/components/HeaderNavigation.vue?vue&type=style&index=0&lang=scss&","webpack:///photos/src/components/HeaderNavigation.vue?vue&type=style&index=1&id=b9975c76&lang=scss&scoped=true&","webpack:///photos/src/components/VirtualScrolling.vue?vue&type=style&index=0&id=5e8733b7&scoped=true&lang=scss&","webpack:///photos/src/views/Albums.vue?vue&type=style&index=0&id=3c63727a&lang=scss&scoped=true&","webpack:///photos/node_modules/vue-material-design-icons/ImageMultiple.vue","webpack:///photos/node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/ImageMultiple.vue?126d","webpack:///photos/node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=template&id=21a95e74&","webpack:///photos/src/components/AlbumCover.vue?vue&type=template&id=858c7dee&scoped=true&","webpack:///photos/src/components/AlbumCover.vue","webpack:///photos/src/components/AlbumCover.vue?vue&type=script&lang=js&","webpack://photos/./src/components/AlbumCover.vue?496e","webpack://photos/./src/components/AlbumCover.vue?71ef","webpack:///photos/src/components/HeaderNavigation.vue?vue&type=template&id=b9975c76&scoped=true&","webpack:///photos/src/components/HeaderNavigation.vue","webpack:///photos/src/components/HeaderNavigation.vue?vue&type=script&lang=js&","webpack://photos/./src/components/HeaderNavigation.vue?29e2","webpack://photos/./src/components/HeaderNavigation.vue?1190","webpack://photos/./src/components/HeaderNavigation.vue?6702","webpack:///photos/src/components/VirtualScrolling.vue?vue&type=template&id=5e8733b7&scoped=true&","webpack:///photos/src/components/VirtualScrolling.vue","webpack:///photos/src/components/VirtualScrolling.vue?vue&type=script&lang=js&","webpack://photos/./src/components/VirtualScrolling.vue?876f","webpack://photos/./src/components/VirtualScrolling.vue?6e3f","webpack:///photos/src/views/Albums.vue?vue&type=template&id=3c63727a&scoped=true&","webpack:///photos/src/views/Albums.vue","webpack:///photos/src/views/Albums.vue?vue&type=script&lang=js&","webpack://photos/./src/views/Albums.vue?b478","webpack://photos/./src/views/Albums.vue?2029"],"sourcesContent":["/**\n * @copyright Copyright (c) 2022 Louis Chemineau \n *\n * @author Louis Chemineau \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 .\n *\n */\n\nexport default {\n\tname: 'AbortControllerMixin',\n\n\tdata() {\n\t\treturn {\n\t\t\tabortController: new AbortController(),\n\t\t}\n\t},\n\n\tbeforeDestroy() {\n\t\tthis.abortController.abort()\n\t},\n\n\tbeforeRouteLeave(from, to, next) {\n\t\tthis.abortController.abort()\n\t\tthis.abortController = new AbortController()\n\t\tnext()\n\t},\n}\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".album-cover[data-v-858c7dee]{display:flex;flex-direction:column;padding:16px;border-radius:var(--border-radius-large)}.album-cover[data-v-858c7dee]:hover,.album-cover[data-v-858c7dee]:focus{background:var(--color-background-dark)}.album-cover__image[data-v-858c7dee]{width:350px;height:350px;object-fit:none;border-radius:var(--border-radius-large)}@media only screen and (max-width: 1200px){.album-cover__image[data-v-858c7dee]{width:250px;height:250px}}.album-cover__image--placeholder[data-v-858c7dee]{background:var(--color-primary-light)}.album-cover__image--placeholder[data-v-858c7dee] .material-design-icon{width:100%;height:100%}.album-cover__image--placeholder[data-v-858c7dee] .material-design-icon .material-design-icon__svg{fill:var(--color-primary)}.album-cover__details[data-v-858c7dee]{display:flex;flex-direction:column;margin-top:16px;width:350px}@media only screen and (max-width: 1200px){.album-cover__details[data-v-858c7dee]{width:250px}}.album-cover__details__first-line[data-v-858c7dee]{display:flex}.album-cover__details__second-line[data-v-858c7dee]{display:flex;color:var(--color-text-lighter)}.album-cover__details__name[data-v-858c7dee]{flex-grow:1;margin:0;font-weight:normal;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/AlbumCover.vue\"],\"names\":[],\"mappings\":\"AAsGA,8BACC,YAAA,CACA,qBAAA,CACA,YAAA,CACA,wCAAA,CAEA,wEACC,uCAAA,CAGD,qCACC,WAAA,CACA,YAAA,CACA,eAAA,CACA,wCAAA,CAEA,2CAND,qCAOE,WAAA,CACA,YAAA,CAAA,CAGD,kDACC,qCAAA,CAEA,yEACC,UAAA,CACA,WAAA,CAEA,oGACC,yBAAA,CAMJ,uCACC,YAAA,CACA,qBAAA,CACA,eAAA,CACA,WAAA,CAEA,2CAND,uCAOE,WAAA,CAAA,CAGD,mDACC,YAAA,CAGD,oDACC,YAAA,CACA,+BAAA,CAGD,6CACC,WAAA,CACA,QAAA,CACA,kBAAA,CACA,eAAA,CACA,kBAAA,CACA,sBAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.album-cover {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\tpadding: 16px;\\n\\tborder-radius: var(--border-radius-large);\\n\\n\\t&:hover, &:focus {\\n\\t\\tbackground: var(--color-background-dark);\\n\\t}\\n\\n\\t&__image {\\n\\t\\twidth: 350px;\\n\\t\\theight: 350px;\\n\\t\\tobject-fit: none;\\n\\t\\tborder-radius: var(--border-radius-large);\\n\\n\\t\\t@media only screen and (max-width: 1200px) {\\n\\t\\t\\twidth: 250px;\\n\\t\\t\\theight: 250px;\\n\\t\\t}\\n\\n\\t\\t&--placeholder {\\n\\t\\t\\tbackground: var(--color-primary-light);\\n\\n\\t\\t\\t::v-deep .material-design-icon {\\n\\t\\t\\t\\twidth: 100%;\\n\\t\\t\\t\\theight: 100%;\\n\\n\\t\\t\\t\\t.material-design-icon__svg {\\n\\t\\t\\t\\t\\tfill: var(--color-primary);\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t&__details {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\tmargin-top: 16px;\\n\\t\\twidth: 350px;\\n\\n\\t\\t@media only screen and (max-width: 1200px) {\\n\\t\\t\\twidth: 250px;\\n\\t\\t}\\n\\n\\t\\t&__first-line {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t}\\n\\n\\t\\t&__second-line {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tcolor: var(--color-text-lighter);\\n\\t\\t}\\n\\n\\t\\t&__name {\\n\\t\\t\\tflex-grow: 1;\\n\\t\\t\\tmargin: 0;\\n\\t\\t\\tfont-weight: normal;\\n\\t\\t\\toverflow: hidden;\\n\\t\\t\\twhite-space: nowrap;\\n\\t\\t\\ttext-overflow: ellipsis;\\n\\n\\t\\t}\\n\\t}\\n\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \":root{--photos-navigation-height: 64px;--photos-navigation-spacing: calc((var(--photos-navigation-height) - 44px) / 2)}button.app-navigation-toggle{top:0 !important;right:calc(var(--photos-navigation-height)*-1) !important;margin:var(--photos-navigation-spacing) !important}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/HeaderNavigation.vue\"],\"names\":[],\"mappings\":\"AAgLA,MACC,gCAAA,CAEA,+EAAA,CAID,6BAEC,gBAAA,CACA,yDAAA,CACA,kDAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n:root {\\n\\t--photos-navigation-height: 64px;\\n\\t// header height - button size\\n\\t--photos-navigation-spacing: calc((var(--photos-navigation-height) - 44px) / 2);\\n}\\n\\n// Properly position the navigation toggle button\\nbutton.app-navigation-toggle {\\n\\t// App-navigation have a 4px margin top\\n\\ttop: 0 !important;\\n\\tright: calc(var(--photos-navigation-height) * -1) !important;\\n\\tmargin: var(--photos-navigation-spacing) !important;\\n}\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".photos-navigation[data-v-b9975c76]{position:-webkit-sticky;position:sticky;z-index:20;top:0;display:flex;align-items:center;width:100%;height:var(--photos-navigation-height);min-height:var(--photos-navigation-height);padding:0 var(--photos-navigation-height);background:var(--color-main-background)}.photos-navigation__back[data-v-b9975c76]{position:absolute;left:0;margin:var(--photos-navigation-spacing) !important}.photos-navigation__title[data-v-b9975c76]{overflow:hidden;margin:0;margin-right:calc(2*var(--photos-navigation-spacing));cursor:pointer;white-space:nowrap;text-overflow:ellipsis}.photos-navigation__loader[data-v-b9975c76]{margin-left:32px}.photos-navigation__content-right[data-v-b9975c76]{display:flex;align-items:center;justify-content:center;margin-left:auto}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/HeaderNavigation.vue\"],\"names\":[],\"mappings\":\"AAiMA,oCACC,uBAAA,CAAA,eAAA,CACA,UAAA,CACA,KAAA,CACA,YAAA,CACA,kBAAA,CACA,UAAA,CACA,sCAAA,CACA,0CAAA,CACA,yCAAA,CACA,uCAAA,CAEA,0CAEC,iBAAA,CACA,MAAA,CACA,kDAAA,CAGD,2CACC,eAAA,CACA,QAAA,CACA,qDAAA,CACA,cAAA,CACA,kBAAA,CACA,sBAAA,CAGD,4CACC,gBAAA,CAGD,mDACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,gBAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.photos-navigation {\\n\\tposition: sticky;\\n\\tz-index: 20;\\n\\ttop: 0;\\n\\tdisplay: flex;\\n\\talign-items: center;\\n\\twidth: 100%;\\n\\theight: var(--photos-navigation-height);\\n\\tmin-height: var(--photos-navigation-height);\\n\\tpadding: 0 var(--photos-navigation-height);\\n\\tbackground: var(--color-main-background);\\n\\n\\t&__back {\\n\\t\\t// Above the navigation menu\\n\\t\\tposition: absolute;\\n\\t\\tleft: 0;\\n\\t\\tmargin: var(--photos-navigation-spacing) !important;\\n\\t}\\n\\n\\t&__title {\\n\\t\\toverflow: hidden;\\n\\t\\tmargin: 0;\\n\\t\\tmargin-right: calc(2 * var(--photos-navigation-spacing));\\n\\t\\tcursor: pointer;\\n\\t\\twhite-space: nowrap;\\n\\t\\ttext-overflow: ellipsis;\\n\\t}\\n\\n\\t&__loader {\\n\\t\\tmargin-left: 32px;\\n\\t}\\n\\n\\t&__content-right {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\tjustify-content: center;\\n\\t\\tmargin-left: auto;\\n\\t}\\n}\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".vs-container[data-v-5e8733b7]{overflow-y:scroll;height:100%}.vs-rows-container[data-v-5e8733b7]{box-sizing:border-box}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/VirtualScrolling.vue\"],\"names\":[],\"mappings\":\"AAkTA,+BACC,iBAAA,CACA,WAAA,CAGD,oCACC,qBAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.vs-container {\\n\\toverflow-y: scroll;\\n\\theight: 100%;\\n}\\n\\n.vs-rows-container {\\n\\tbox-sizing: border-box;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".albums[data-v-3c63727a]{display:flex;flex-direction:column;height:100%}.albums__list[data-v-3c63727a]{padding:32px 48px;flex-grow:1;display:flex;flex-wrap:wrap;gap:16px;align-items:flex-start;height:calc(100% - 60px);overflow-x:scroll}@media only screen and (max-width: 1200px){.albums__list[data-v-3c63727a]{padding:32px 12px;justify-content:center}}.albums__empty[data-v-3c63727a]{display:flex;flex-direction:column;align-items:center}.albums__empty__button[data-v-3c63727a]{margin-top:32px}.empty-content-with-illustration[data-v-3c63727a] .empty-content__icon{width:200px;height:200px}.empty-content-with-illustration[data-v-3c63727a] .empty-content__icon svg{width:200px;height:200px}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/views/Albums.vue\"],\"names\":[],\"mappings\":\"AA+IA,yBACC,YAAA,CACA,qBAAA,CACA,WAAA,CAEA,+BACC,iBAAA,CACA,WAAA,CACA,YAAA,CACA,cAAA,CACA,QAAA,CACA,sBAAA,CACA,wBAAA,CACA,iBAAA,CAEA,2CAVD,+BAWE,iBAAA,CACA,sBAAA,CAAA,CAKF,gCACC,YAAA,CACA,qBAAA,CACA,kBAAA,CAEA,wCACC,eAAA,CAKH,wEACC,WAAA,CACA,YAAA,CAEA,4EACC,WAAA,CACA,YAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.albums {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\theight: 100%;\\n\\n\\t&__list {\\n\\t\\tpadding: 32px 48px;\\n\\t\\tflex-grow: 1;\\n\\t\\tdisplay: flex;\\n\\t\\tflex-wrap: wrap;\\n\\t\\tgap: 16px;\\n\\t\\talign-items: flex-start;\\n\\t\\theight: calc(100% - 60px);\\n\\t\\toverflow-x: scroll;\\n\\n\\t\\t@media only screen and (max-width: 1200px) {\\n\\t\\t\\tpadding: 32px 12px;\\n\\t\\t\\tjustify-content: center;\\n\\t\\t}\\n\\n\\t}\\n\\n\\t&__empty {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\talign-items: center;\\n\\n\\t\\t&__button {\\n\\t\\t\\tmargin-top: 32px;\\n\\t\\t}\\n\\t}\\n}\\n\\n.empty-content-with-illustration ::v-deep .empty-content__icon {\\n\\twidth: 200px;\\n\\theight: 200px;\\n\\n\\tsvg {\\n\\t\\twidth: 200px;\\n\\t\\theight: 200px;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ImageMultiple.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ImageMultiple.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ImageMultiple.vue?vue&type=template&id=21a95e74&\"\nimport script from \"./ImageMultiple.vue?vue&type=script&lang=js&\"\nexport * from \"./ImageMultiple.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon image-multiple-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M22,16V4A2,2 0 0,0 20,2H8A2,2 0 0,0 6,4V16A2,2 0 0,0 8,18H20A2,2 0 0,0 22,16M11,12L13.03,14.71L16,11L20,16H8M2,6V20A2,2 0 0,0 4,22H18V20H4V6\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('router-link',{staticClass:\"album-cover\",attrs:{\"to\":(\"/albums/\" + _vm.baseName)}},[(_vm.album.lastPhoto !== -1)?_c('img',{staticClass:\"album-cover__image\",attrs:{\"src\":_vm.coverUrl,\"alt\":_vm.altImg}}):_c('div',{staticClass:\"album-cover__image album-cover__image--placeholder\"},[_c('ImageMultiple',{attrs:{\"size\":128}})],1),_vm._v(\" \"),_c('div',{staticClass:\"album-cover__details\"},[_c('div',{staticClass:\"album-cover__details__first-line\"},[_c('h2',{staticClass:\"album-cover__details__name\"},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.baseName)+\"\\n\\t\\t\\t\")])]),_vm._v(\" \"),_c('div',{staticClass:\"album-cover__details__second-line\"},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.album.date)+\" ⸱ \"+_vm._s(_vm.n('photos', '%n item', '%n photos and videos', _vm.album.nbItems))+\"\\n\\t\\t\")])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AlbumCover.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!./AlbumCover.vue?vue&type=script&lang=js&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./AlbumCover.vue?vue&type=style&index=0&id=858c7dee&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./AlbumCover.vue?vue&type=style&index=0&id=858c7dee&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./AlbumCover.vue?vue&type=template&id=858c7dee&scoped=true&\"\nimport script from \"./AlbumCover.vue?vue&type=script&lang=js&\"\nexport * from \"./AlbumCover.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AlbumCover.vue?vue&type=style&index=0&id=858c7dee&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 \"858c7dee\",\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:\"photos-navigation\",class:{'photos-navigation--root': _vm.isRoot},attrs:{\"role\":\"toolbar\"}},[(!_vm.isRoot)?_c('NcButton',{staticClass:\"photos-navigation__back\",attrs:{\"type\":\"tertiary\"},on:{\"click\":_vm.folderUp},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('ArrowLeft',{attrs:{\"size\":20}})]},proxy:true}],null,false,1821202730)}):_vm._e(),_vm._v(\" \"),_c('h2',{staticClass:\"photos-navigation__title\",on:{\"click\":_vm.refresh}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.name)+\"\\n\\t\")]),_vm._v(\" \"),(_vm.$slots.default)?_c('div',{staticClass:\"photos-navigation__content\"},[_vm._t(\"default\")],2):_vm._e(),_vm._v(\" \"),(_vm.loading)?_c('NcLoadingIcon',{staticClass:\"photos-navigation__loader\"}):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"photos-navigation__content-right\"},[_vm._t(\"right\")],2)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HeaderNavigation.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!./HeaderNavigation.vue?vue&type=script&lang=js&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./HeaderNavigation.vue?vue&type=style&index=0&lang=scss&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./HeaderNavigation.vue?vue&type=style&index=0&lang=scss&\";\n export default content && content.locals ? content.locals : undefined;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./HeaderNavigation.vue?vue&type=style&index=1&id=b9975c76&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./HeaderNavigation.vue?vue&type=style&index=1&id=b9975c76&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./HeaderNavigation.vue?vue&type=template&id=b9975c76&scoped=true&\"\nimport script from \"./HeaderNavigation.vue?vue&type=script&lang=js&\"\nexport * from \"./HeaderNavigation.vue?vue&type=script&lang=js&\"\nimport style0 from \"./HeaderNavigation.vue?vue&type=style&index=0&lang=scss&\"\nimport style1 from \"./HeaderNavigation.vue?vue&type=style&index=1&id=b9975c76&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 \"b9975c76\",\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 (!_vm.useWindow && _vm.containerElement === null)?_c('div',{ref:\"container\",staticClass:\"vs-container\"},[_c('div',{ref:\"rowsContainer\",staticClass:\"vs-rows-container\",style:(_vm.rowsContainerStyle)},[_vm._t(\"default\",null,{\"renderedRows\":_vm.visibleRows}),_vm._v(\" \"),_vm._t(\"loader\")],2)]):_c('div',{ref:\"rowsContainer\",staticClass:\"vs-rows-container\",style:(_vm.rowsContainerStyle)},[_vm._t(\"default\",null,{\"renderedRows\":_vm.visibleRows}),_vm._v(\" \"),_vm._t(\"loader\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VirtualScrolling.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!./VirtualScrolling.vue?vue&type=script&lang=js&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./VirtualScrolling.vue?vue&type=style&index=0&id=5e8733b7&scoped=true&lang=scss&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./VirtualScrolling.vue?vue&type=style&index=0&id=5e8733b7&scoped=true&lang=scss&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./VirtualScrolling.vue?vue&type=template&id=5e8733b7&scoped=true&\"\nimport script from \"./VirtualScrolling.vue?vue&type=script&lang=js&\"\nexport * from \"./VirtualScrolling.vue?vue&type=script&lang=js&\"\nimport style0 from \"./VirtualScrolling.vue?vue&type=style&index=0&id=5e8733b7&scoped=true&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 \"5e8733b7\",\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 (_vm.errorFetchingAlbums)?_c('NcEmptyContent',[_vm._v(\"\\n\\t\"+_vm._s(_vm.t('photos', 'An error occurred'))+\"\\n\")]):_c('div',{staticClass:\"albums\"},[_c('HeaderNavigation',{key:\"navigation\",attrs:{\"loading\":_vm.loadingAlbums,\"title\":_vm.t('photos', 'Albums'),\"root-title\":_vm.t('photos', 'Albums')},on:{\"refresh\":_vm.onRefresh}},[_c('NcButton',{attrs:{\"type\":\"primary\",\"aria-label\":_vm.t('photos', 'Create a new album.')},on:{\"click\":function($event){_vm.showAlbumCreationForm = true}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Plus')]},proxy:true}])},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('photos', 'New album'))+\"\\n\\t\\t\")])],1),_vm._v(\" \"),(_vm.noAlbums && !_vm.loadingAlbums)?_c('div',{staticClass:\"albums__empty\"},[_c('NcEmptyContent',{scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('FolderMultipleImage')]},proxy:true},{key:\"desc\",fn:function(){return [_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('photos', \"There is no album yet!\"))+\"\\n\\t\\t\\t\")]},proxy:true}],null,false,3685789295)}),_vm._v(\" \"),_c('NcButton',{staticClass:\"albums__empty__button\",attrs:{\"type\":\"primary\",\"aria-label\":_vm.t('photos', 'Create a new album')},on:{\"click\":function($event){_vm.showAlbumCreationForm = true}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Plus')]},proxy:true}],null,false,1489515321)},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('photos', \"Add\"))+\"\\n\\t\\t\")])],1):(!_vm.noAlbums)?_c('div',{staticClass:\"albums__list\"},_vm._l((_vm.albums),function(album){return _c('AlbumCover',{key:album.basename,staticClass:\"album\",attrs:{\"album\":album}})}),1):_vm._e(),_vm._v(\" \"),(_vm.showAlbumCreationForm)?_c('NcModal',{attrs:{\"title\":_vm.t('photos', 'New album')},on:{\"close\":function($event){_vm.showAlbumCreationForm = false}}},[_c('AlbumForm',{on:{\"done\":_vm.handleAlbumCreated}})],1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Albums.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!./Albums.vue?vue&type=script&lang=js&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./Albums.vue?vue&type=style&index=0&id=3c63727a&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./Albums.vue?vue&type=style&index=0&id=3c63727a&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Albums.vue?vue&type=template&id=3c63727a&scoped=true&\"\nimport script from \"./Albums.vue?vue&type=script&lang=js&\"\nexport * from \"./Albums.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Albums.vue?vue&type=style&index=0&id=3c63727a&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 \"3c63727a\",\n null\n \n)\n\nexport default component.exports"],"names":["name","data","abortController","AbortController","beforeDestroy","this","abort","beforeRouteLeave","from","to","next","___CSS_LOADER_EXPORT___","push","module","id","emits","props","title","type","String","fillColor","default","size","Number","_vm","_h","$createElement","_c","_self","_b","staticClass","attrs","on","$event","$emit","$attrs","_v","_s","_e","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","baseName","album","lastPhoto","coverUrl","altImg","date","n","nbItems","class","isRoot","folderUp","scopedSlots","_u","key","fn","proxy","refresh","$slots","_t","useWindow","containerElement","ref","style","visibleRows","t","loadingAlbums","onRefresh","showAlbumCreationForm","noAlbums","_l","basename","handleAlbumCreated"],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-src_mixins_AbortControllerMixin_js-src_components_VirtualScrolling_vue.js b/js/photos-src_mixins_AbortControllerMixin_js-src_components_VirtualScrolling_vue.js deleted file mode 100644 index 053c4d816..000000000 --- a/js/photos-src_mixins_AbortControllerMixin_js-src_components_VirtualScrolling_vue.js +++ /dev/null @@ -1,583 +0,0 @@ -"use strict"; -(self["webpackChunkphotos"] = self["webpackChunkphotos"] || []).push([["src_mixins_AbortControllerMixin_js-src_components_VirtualScrolling_vue"],{ - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/VirtualScrolling.vue?vue&type=script&lang=js&": -/*!**************************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/VirtualScrolling.vue?vue&type=script&lang=js& ***! - \**************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var debounce__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! debounce */ "./node_modules/debounce/index.js"); -/* harmony import */ var debounce__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(debounce__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _services_logger_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../services/logger.js */ "./src/services/logger.js"); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - - -/** - * @typedef {object} Row - * @property {number} height - The height of the row. - */ - -/** - * @typedef {Row} VisibleRow - * @property {'none'|'near'|'visible'} visibility - The visibility state of the row - * @property {boolean} shouldRender - Whether the row should be renderer in the DOM - */ - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'VirtualScrolling', - props: { - rows: { - type: Array, - required: true - }, - containerElement: { - type: HTMLElement, - default: null - }, - useWindow: { - type: Boolean, - default: false - }, - renderWindowRatio: { - type: Number, - default: 4 - }, - willBeVisibleWindowRatio: { - type: Number, - default: 4 - }, - visibleWindowRatio: { - type: Number, - // A little bit more than the container's height to include items at its edges. - default: 0 - }, - bottomBufferRatio: { - type: Number, - default: 5 - }, - scrollToKey: { - type: String, - default: '' - } - }, - - data() { - return { - scrollPosition: 0, - containerHeight: 0, - rowsContainerHeight: 0, - - /** @type {ResizeObserver} */ - resizeObserver: null - }; - }, - - computed: { - /** - * @return {VisibleRow[]} - */ - visibleRows() { - _services_logger_js__WEBPACK_IMPORTED_MODULE_1__["default"].debug('[VirtualScrolling] Computing visible rows', this.rows); // Optimisation: get those computed properties once to not go through vue's internal every time we need them. - - const scrollPosition = this.scrollPosition; - const containerHeight = this.containerHeight; // Optimisation: different windows to hint the items how they should render themselves. - // This will be forwarded with the visibility props. - - const shouldRenderedWindow = containerHeight * this.renderWindowRatio; - const willBeVisibleWindow = containerHeight * this.willBeVisibleWindowRatio; - const visibleWindow = containerHeight * this.visibleWindowRatio; - let currentRowTopDistanceFromTop = 0; - let currentRowBottomDistanceFromTop = 0; // Compute whether a row should be included in the DOM (shouldRender) - // And how visible the row is. - - return this.rows.reduce((visibleRows, row) => { - currentRowTopDistanceFromTop = currentRowBottomDistanceFromTop; - currentRowBottomDistanceFromTop += row.height; - - if (currentRowTopDistanceFromTop < scrollPosition - shouldRenderedWindow || scrollPosition + containerHeight + shouldRenderedWindow < currentRowTopDistanceFromTop) { - return visibleRows; - } - - let visibility = 'none'; - - if (scrollPosition - willBeVisibleWindow < currentRowTopDistanceFromTop && currentRowTopDistanceFromTop < scrollPosition + containerHeight + willBeVisibleWindow) { - visibility = 'near'; - - if (scrollPosition - visibleWindow < currentRowTopDistanceFromTop && currentRowTopDistanceFromTop < scrollPosition + containerHeight + visibleWindow) { - visibility = 'visible'; - } - - if (scrollPosition - visibleWindow < currentRowBottomDistanceFromTop && currentRowBottomDistanceFromTop < scrollPosition + containerHeight + visibleWindow) { - visibility = 'visible'; - } - } - - return [...visibleRows, { ...row, - visibility - }]; - }, []); - }, - - /** - * Total height of all the rows + some room for the loader. - * - * @return {number} - */ - rowsHeight() { - const loaderHeight = 200; - return this.rows.map(row => row.height).reduce((totalHeight, rowHeight) => totalHeight + rowHeight, 0) + loaderHeight; - }, - - /** - * @return {number} - */ - paddingTop() { - if (this.visibleRows.length === 0) { - return 0; - } - - const firstVisibleRowIndex = this.rows.findIndex(row => row.items === this.visibleRows[0].items); - return this.rows.map(row => row.height).slice(0, firstVisibleRowIndex).reduce((totalHeight, rowHeight) => totalHeight + rowHeight, 0); - }, - - /** - * padding-top is used to replace not included item in the container. - * - * @return {object} - */ - rowsContainerStyle() { - return { - height: `${this.rowsHeight}px`, - paddingTop: `${this.paddingTop}px` - }; - }, - - /** - * Whether the user is near the bottom. - * If true, then the need-content event will be emitted. - * - * @return {boolean} - */ - isNearBottom() { - const buffer = this.containerHeight * this.bottomBufferRatio; - return this.scrollPosition + this.containerHeight >= this.rowsHeight - buffer; - }, - - /** - * @return {HTMLElement} - */ - container() { - _services_logger_js__WEBPACK_IMPORTED_MODULE_1__["default"].debug('[VirtualScrolling] Computing container'); - - if (this.containerElement !== null) { - return this.containerElement; - } else if (this.useWindow) { - return window; - } else { - return this.$refs.container; - } - } - - }, - watch: { - isNearBottom(value) { - if (value) { - this.$emit('need-content'); - } - }, - - rows() { - // Re-emit need-content when rows is updated and isNearBottom is still true. - // If the height of added rows is under `bottomBufferRatio`, `isNearBottom` will still be true so we need more content. - if (this.isNearBottom) { - this.$emit('need-content'); - } - }, - - scrollToKey(key) { - let currentRowTopDistanceFromTop = 0; - - for (const row of this.rows) { - if (row.key === key) { - this.$refs.container.scrollTo({ - top: currentRowTopDistanceFromTop, - behavior: 'smooth' - }); - return; - } - - currentRowTopDistanceFromTop += row.height; - } - } - - }, - - mounted() { - this.resizeObserver = new ResizeObserver(entries => { - for (const entry of entries) { - const cr = entry.contentRect; - - if (entry.target === this.container) { - this.containerHeight = cr.height; - } - - if (entry.target.classList.contains('vs-rows-container')) { - this.rowsContainerHeight = cr.height; - } - } - }); - - if (this.useWindow) { - window.addEventListener('resize', this.updateContainerSize); - this.containerHeight = window.innerHeight; - } else { - this.resizeObserver.observe(this.container); - } - - this.resizeObserver.observe(this.$refs.rowsContainer); - this.container.addEventListener('scroll', this.updateScrollPosition); - }, - - beforeDestroy() { - if (this.useWindow) { - window.removeEventListener('resize', this.updateContainerSize); - } - - this.resizeObserver.disconnect(); - this.container.removeEventListener('scroll', this.updateScrollPosition); - }, - - methods: { - updateScrollPosition: (0,debounce__WEBPACK_IMPORTED_MODULE_0__.debounce)(function () { - if (this.useWindow) { - this.scrollPosition = this.container.scrollY; - } else { - this.scrollPosition = this.container.scrollTop; - } - }, 200), - - updateContainerSize() { - this.containerHeight = window.innerHeight; - } - - } -}); - -/***/ }), - -/***/ "./src/mixins/AbortControllerMixin.js": -/*!********************************************!*\ - !*** ./src/mixins/AbortControllerMixin.js ***! - \********************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/** - * @copyright Copyright (c) 2022 Louis Chemineau - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'AbortControllerMixin', - - data() { - return { - abortController: new AbortController() - }; - }, - - beforeDestroy() { - this.abortController.abort(); - }, - - beforeRouteLeave(from, to, next) { - this.abortController.abort(); - this.abortController = new AbortController(); - next(); - } - -}); - -/***/ }), - -/***/ "./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!./src/components/VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss&": -/*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/components/VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss& ***! - \**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".vs-container[data-v-3d9f7b4c] {\n overflow-y: scroll;\n height: 100%;\n}\n.vs-rows-container[data-v-3d9f7b4c] {\n box-sizing: border-box;\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss&": -/*!******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/components/VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss& ***! - \******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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_VirtualScrolling_vue_vue_type_style_index_0_id_3d9f7b4c_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../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!./VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss& */ "./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!./src/components/VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_VirtualScrolling_vue_vue_type_style_index_0_id_3d9f7b4c_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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_VirtualScrolling_vue_vue_type_style_index_0_id_3d9f7b4c_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_VirtualScrolling_vue_vue_type_style_index_0_id_3d9f7b4c_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_VirtualScrolling_vue_vue_type_style_index_0_id_3d9f7b4c_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./src/components/VirtualScrolling.vue": -/*!*********************************************!*\ - !*** ./src/components/VirtualScrolling.vue ***! - \*********************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _VirtualScrolling_vue_vue_type_template_id_3d9f7b4c_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true& */ "./src/components/VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true&"); -/* harmony import */ var _VirtualScrolling_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./VirtualScrolling.vue?vue&type=script&lang=js& */ "./src/components/VirtualScrolling.vue?vue&type=script&lang=js&"); -/* harmony import */ var _VirtualScrolling_vue_vue_type_style_index_0_id_3d9f7b4c_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss& */ "./src/components/VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( - _VirtualScrolling_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _VirtualScrolling_vue_vue_type_template_id_3d9f7b4c_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render, - _VirtualScrolling_vue_vue_type_template_id_3d9f7b4c_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - "3d9f7b4c", - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/VirtualScrolling.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/VirtualScrolling.vue?vue&type=script&lang=js&": -/*!**********************************************************************!*\ - !*** ./src/components/VirtualScrolling.vue?vue&type=script&lang=js& ***! - \**********************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_VirtualScrolling_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VirtualScrolling.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/VirtualScrolling.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_VirtualScrolling_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/components/VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss&": -/*!*******************************************************************************************************!*\ - !*** ./src/components/VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss& ***! - \*******************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_VirtualScrolling_vue_vue_type_style_index_0_id_3d9f7b4c_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/style-loader/dist/cjs.js!../../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!./VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss&"); - - -/***/ }), - -/***/ "./src/components/VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true&": -/*!****************************************************************************************!*\ - !*** ./src/components/VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true& ***! - \****************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_VirtualScrolling_vue_vue_type_template_id_3d9f7b4c_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_VirtualScrolling_vue_vue_type_template_id_3d9f7b4c_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_VirtualScrolling_vue_vue_type_template_id_3d9f7b4c_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true&"); - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true&": -/*!*******************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true& ***! - \*******************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return !_vm.useWindow && _vm.containerElement === null - ? _c("div", { ref: "container", staticClass: "vs-container" }, [ - _c( - "div", - { - ref: "rowsContainer", - staticClass: "vs-rows-container", - style: _vm.rowsContainerStyle, - }, - [ - _vm._t("default", null, { renderedRows: _vm.visibleRows }), - _vm._v(" "), - _vm._t("loader"), - ], - 2 - ), - ]) - : _c( - "div", - { - ref: "rowsContainer", - staticClass: "vs-rows-container", - style: _vm.rowsContainerStyle, - }, - [ - _vm._t("default", null, { renderedRows: _vm.visibleRows }), - _vm._v(" "), - _vm._t("loader"), - ], - 2 - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }) - -}]); -//# sourceMappingURL=photos-src_mixins_AbortControllerMixin_js-src_components_VirtualScrolling_vue.js.map?v=16fa9a9802b33c9dd642 \ No newline at end of file diff --git a/js/photos-src_mixins_AbortControllerMixin_js-src_components_VirtualScrolling_vue.js.map b/js/photos-src_mixins_AbortControllerMixin_js-src_components_VirtualScrolling_vue.js.map deleted file mode 100644 index 56f03e2b9..000000000 --- a/js/photos-src_mixins_AbortControllerMixin_js-src_components_VirtualScrolling_vue.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-src_mixins_AbortControllerMixin_js-src_components_VirtualScrolling_vue.js?v=16fa9a9802b33c9dd642","mappings":";;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;AClSA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;ACxCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;ACvCA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AGAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sources":["webpack:///photos/src/components/VirtualScrolling.vue?vue&type=script&lang=js&","webpack:///photos/src/mixins/AbortControllerMixin.js","webpack:///photos/src/components/VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss&","webpack://photos/./src/components/VirtualScrolling.vue?38b9","webpack:///photos/src/components/VirtualScrolling.vue","webpack://photos/./src/components/VirtualScrolling.vue?de60","webpack://photos/./src/components/VirtualScrolling.vue?7351","webpack:///photos/src/components/VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true&","webpack://photos/./src/components/VirtualScrolling.vue?74e7"],"sourcesContent":["//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport { debounce } from 'debounce';\nimport logger from '../services/logger.js';\n/**\n * @typedef {object} Row\n * @property {number} height - The height of the row.\n */\n\n/**\n * @typedef {Row} VisibleRow\n * @property {'none'|'near'|'visible'} visibility - The visibility state of the row\n * @property {boolean} shouldRender - Whether the row should be renderer in the DOM\n */\n\nexport default {\n name: 'VirtualScrolling',\n props: {\n rows: {\n type: Array,\n required: true\n },\n containerElement: {\n type: HTMLElement,\n default: null\n },\n useWindow: {\n type: Boolean,\n default: false\n },\n renderWindowRatio: {\n type: Number,\n default: 4\n },\n willBeVisibleWindowRatio: {\n type: Number,\n default: 4\n },\n visibleWindowRatio: {\n type: Number,\n // A little bit more than the container's height to include items at its edges.\n default: 0\n },\n bottomBufferRatio: {\n type: Number,\n default: 5\n },\n scrollToKey: {\n type: String,\n default: ''\n }\n },\n\n data() {\n return {\n scrollPosition: 0,\n containerHeight: 0,\n rowsContainerHeight: 0,\n\n /** @type {ResizeObserver} */\n resizeObserver: null\n };\n },\n\n computed: {\n /**\n * @return {VisibleRow[]}\n */\n visibleRows() {\n logger.debug('[VirtualScrolling] Computing visible rows', this.rows); // Optimisation: get those computed properties once to not go through vue's internal every time we need them.\n\n const scrollPosition = this.scrollPosition;\n const containerHeight = this.containerHeight; // Optimisation: different windows to hint the items how they should render themselves.\n // This will be forwarded with the visibility props.\n\n const shouldRenderedWindow = containerHeight * this.renderWindowRatio;\n const willBeVisibleWindow = containerHeight * this.willBeVisibleWindowRatio;\n const visibleWindow = containerHeight * this.visibleWindowRatio;\n let currentRowTopDistanceFromTop = 0;\n let currentRowBottomDistanceFromTop = 0; // Compute whether a row should be included in the DOM (shouldRender)\n // And how visible the row is.\n\n return this.rows.reduce((visibleRows, row) => {\n currentRowTopDistanceFromTop = currentRowBottomDistanceFromTop;\n currentRowBottomDistanceFromTop += row.height;\n\n if (currentRowTopDistanceFromTop < scrollPosition - shouldRenderedWindow || scrollPosition + containerHeight + shouldRenderedWindow < currentRowTopDistanceFromTop) {\n return visibleRows;\n }\n\n let visibility = 'none';\n\n if (scrollPosition - willBeVisibleWindow < currentRowTopDistanceFromTop && currentRowTopDistanceFromTop < scrollPosition + containerHeight + willBeVisibleWindow) {\n visibility = 'near';\n\n if (scrollPosition - visibleWindow < currentRowTopDistanceFromTop && currentRowTopDistanceFromTop < scrollPosition + containerHeight + visibleWindow) {\n visibility = 'visible';\n }\n\n if (scrollPosition - visibleWindow < currentRowBottomDistanceFromTop && currentRowBottomDistanceFromTop < scrollPosition + containerHeight + visibleWindow) {\n visibility = 'visible';\n }\n }\n\n return [...visibleRows, { ...row,\n visibility\n }];\n }, []);\n },\n\n /**\n * Total height of all the rows + some room for the loader.\n *\n * @return {number}\n */\n rowsHeight() {\n const loaderHeight = 200;\n return this.rows.map(row => row.height).reduce((totalHeight, rowHeight) => totalHeight + rowHeight, 0) + loaderHeight;\n },\n\n /**\n * @return {number}\n */\n paddingTop() {\n if (this.visibleRows.length === 0) {\n return 0;\n }\n\n const firstVisibleRowIndex = this.rows.findIndex(row => row.items === this.visibleRows[0].items);\n return this.rows.map(row => row.height).slice(0, firstVisibleRowIndex).reduce((totalHeight, rowHeight) => totalHeight + rowHeight, 0);\n },\n\n /**\n * padding-top is used to replace not included item in the container.\n *\n * @return {object}\n */\n rowsContainerStyle() {\n return {\n height: `${this.rowsHeight}px`,\n paddingTop: `${this.paddingTop}px`\n };\n },\n\n /**\n * Whether the user is near the bottom.\n * If true, then the need-content event will be emitted.\n *\n * @return {boolean}\n */\n isNearBottom() {\n const buffer = this.containerHeight * this.bottomBufferRatio;\n return this.scrollPosition + this.containerHeight >= this.rowsHeight - buffer;\n },\n\n /**\n * @return {HTMLElement}\n */\n container() {\n logger.debug('[VirtualScrolling] Computing container');\n\n if (this.containerElement !== null) {\n return this.containerElement;\n } else if (this.useWindow) {\n return window;\n } else {\n return this.$refs.container;\n }\n }\n\n },\n watch: {\n isNearBottom(value) {\n if (value) {\n this.$emit('need-content');\n }\n },\n\n rows() {\n // Re-emit need-content when rows is updated and isNearBottom is still true.\n // If the height of added rows is under `bottomBufferRatio`, `isNearBottom` will still be true so we need more content.\n if (this.isNearBottom) {\n this.$emit('need-content');\n }\n },\n\n scrollToKey(key) {\n let currentRowTopDistanceFromTop = 0;\n\n for (const row of this.rows) {\n if (row.key === key) {\n this.$refs.container.scrollTo({\n top: currentRowTopDistanceFromTop,\n behavior: 'smooth'\n });\n return;\n }\n\n currentRowTopDistanceFromTop += row.height;\n }\n }\n\n },\n\n mounted() {\n this.resizeObserver = new ResizeObserver(entries => {\n for (const entry of entries) {\n const cr = entry.contentRect;\n\n if (entry.target === this.container) {\n this.containerHeight = cr.height;\n }\n\n if (entry.target.classList.contains('vs-rows-container')) {\n this.rowsContainerHeight = cr.height;\n }\n }\n });\n\n if (this.useWindow) {\n window.addEventListener('resize', this.updateContainerSize);\n this.containerHeight = window.innerHeight;\n } else {\n this.resizeObserver.observe(this.container);\n }\n\n this.resizeObserver.observe(this.$refs.rowsContainer);\n this.container.addEventListener('scroll', this.updateScrollPosition);\n },\n\n beforeDestroy() {\n if (this.useWindow) {\n window.removeEventListener('resize', this.updateContainerSize);\n }\n\n this.resizeObserver.disconnect();\n this.container.removeEventListener('scroll', this.updateScrollPosition);\n },\n\n methods: {\n updateScrollPosition: debounce(function () {\n if (this.useWindow) {\n this.scrollPosition = this.container.scrollY;\n } else {\n this.scrollPosition = this.container.scrollTop;\n }\n }, 200),\n\n updateContainerSize() {\n this.containerHeight = window.innerHeight;\n }\n\n }\n};","/**\n * @copyright Copyright (c) 2022 Louis Chemineau \n *\n * @author Louis Chemineau \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 .\n *\n */\nexport default {\n name: 'AbortControllerMixin',\n\n data() {\n return {\n abortController: new AbortController()\n };\n },\n\n beforeDestroy() {\n this.abortController.abort();\n },\n\n beforeRouteLeave(from, to, next) {\n this.abortController.abort();\n this.abortController = new AbortController();\n next();\n }\n\n};","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".vs-container[data-v-3d9f7b4c] {\\n overflow-y: scroll;\\n height: 100%;\\n}\\n.vs-rows-container[data-v-3d9f7b4c] {\\n box-sizing: border-box;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true&\"\nimport script from \"./VirtualScrolling.vue?vue&type=script&lang=js&\"\nexport * from \"./VirtualScrolling.vue?vue&type=script&lang=js&\"\nimport style0 from \"./VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&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 \"3d9f7b4c\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/louis/workspace/nextcloud/apps/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('3d9f7b4c')) {\n api.createRecord('3d9f7b4c', component.options)\n } else {\n api.reload('3d9f7b4c', component.options)\n }\n module.hot.accept(\"./VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true&\", function () {\n api.rerender('3d9f7b4c', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/VirtualScrolling.vue\"\nexport default component.exports","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VirtualScrolling.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!./VirtualScrolling.vue?vue&type=script&lang=js&\"","export * from \"-!../../node_modules/style-loader/dist/cjs.js!../../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!./VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss&\"","export * from \"-!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true&\"","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return !_vm.useWindow && _vm.containerElement === null\n ? _c(\"div\", { ref: \"container\", staticClass: \"vs-container\" }, [\n _c(\n \"div\",\n {\n ref: \"rowsContainer\",\n staticClass: \"vs-rows-container\",\n style: _vm.rowsContainerStyle,\n },\n [\n _vm._t(\"default\", null, { renderedRows: _vm.visibleRows }),\n _vm._v(\" \"),\n _vm._t(\"loader\"),\n ],\n 2\n ),\n ])\n : _c(\n \"div\",\n {\n ref: \"rowsContainer\",\n staticClass: \"vs-rows-container\",\n style: _vm.rowsContainerStyle,\n },\n [\n _vm._t(\"default\", null, { renderedRows: _vm.visibleRows }),\n _vm._v(\" \"),\n _vm._t(\"loader\"),\n ],\n 2\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-src_mixins_AbortControllerMixin_js-src_services_DavRequest_js-src_components_File_vue.js b/js/photos-src_mixins_AbortControllerMixin_js-src_services_DavRequest_js-src_components_File_vue.js deleted file mode 100644 index ce0e6ba98..000000000 --- a/js/photos-src_mixins_AbortControllerMixin_js-src_services_DavRequest_js-src_components_File_vue.js +++ /dev/null @@ -1,3 +0,0 @@ -/*! For license information please see photos-src_mixins_AbortControllerMixin_js-src_services_DavRequest_js-src_components_File_vue.js.LICENSE.txt */ -"use strict";(self.webpackChunkphotos=self.webpackChunkphotos||[]).push([["src_mixins_AbortControllerMixin_js-src_services_DavRequest_js-src_components_File_vue"],{69363:(t,n,e)=>{e.d(n,{Z:()=>i});const i={name:"CancelRequestMixin",data:function(){return{abortController:new AbortController}},beforeDestroy:function(){this.abortController.abort()},beforeRouteLeave:function(){this.abortController.abort(),this.abortController=new AbortController}}},2161:(t,n,e)=>{e.d(n,{N:()=>i,Z:()=>o});var i="\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t";const o='\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t'.concat(i,"\n\t\t\t\t\n\t\t\t")},84496:(t,n,e)=>{e.d(n,{Z:()=>A});var i=e(87537),o=e.n(i),a=e(23645),r=e.n(a)()(o());r.push([t.id,'.file-container[data-v-67e992e4]{background:var(--color-primary-light);position:relative;height:100%;width:100%;border:2px solid var(--color-main-background);box-sizing:border-box}.file-container.selected[data-v-67e992e4]::after,.file-container[data-v-67e992e4]:focus-within::after{position:absolute;top:0;left:0;z-index:2;width:100%;height:100%;content:"";outline:var(--color-primary) solid 4px;outline-offset:-4px;pointer-events:none}.file-container .file[data-v-67e992e4]{width:100%;height:100%;box-sizing:border-box;outline:none}.file-container .file__images[data-v-67e992e4]{display:contents}.file-container .file__images .video-icon[data-v-67e992e4]{position:absolute;top:0px;right:0px;width:100%;height:100%;z-index:1;opacity:.8}.file-container .file__images .video-icon[data-v-67e992e4] .material-design-icon__svg{fill:var(--color-main-background)}.file-container .file__images img[data-v-67e992e4]{width:100%;height:100%;object-fit:cover;position:absolute;color:rgba(0,0,0,0)}.file-container .file__images .loading-overlay[data-v-67e992e4]{position:absolute;height:100%;width:100%;display:flex;align-content:center;align-items:center;justify-content:center}.file-container .file__images .loading-overlay svg[data-v-67e992e4]{width:70%;height:70%}.file-container .file__hidden-description[data-v-67e992e4]{position:absolute;left:-10000px;top:-10000px;width:1px;height:1px;overflow:hidden}.file-container .file__hidden-description.show[data-v-67e992e4]{position:initial;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;height:-webkit-fit-content;height:-moz-fit-content;height:fit-content}.file-container:hover .selection-checkbox[data-v-67e992e4],.file-container.selected .selection-checkbox[data-v-67e992e4],.file-container:focus-within .selection-checkbox[data-v-67e992e4]{display:flex}.file-container:hover .favorite-state[data-v-67e992e4],.file-container.selected .favorite-state[data-v-67e992e4],.file-container:focus-within .favorite-state[data-v-67e992e4]{display:none}.file-container .selection-checkbox[data-v-67e992e4]{display:none;position:absolute;top:8px;right:min(22px,50% - 7px);z-index:1;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}.file-container .selection-checkbox[data-v-67e992e4] .checkbox-radio-switch__label{padding:10px;box-sizing:border-box}.file-container .selection-checkbox[data-v-67e992e4] .checkbox-radio-switch__label::after{content:"";background:var(--color-primary-light);width:16px;height:16px;position:absolute;left:1px;z-index:-1}.file-container .selection-checkbox[data-v-67e992e4] .checkbox-radio-switch__label .checkbox-radio-switch__icon{margin:0}.file-container .selection-checkbox .input-label[data-v-67e992e4]{position:fixed;z-index:-1;top:-5000px;left:-5000px}.file-container .favorite-state[data-v-67e992e4]{position:absolute;top:2px;right:min(2px,50% - 7px)}.file-container .favorite-state[data-v-67e992e4] .material-design-icon__svg{fill:#fc0}.file-container .favorite-state[data-v-67e992e4] .material-design-icon__svg path{stroke:var(--color-primary-light);stroke-width:1px}',"",{version:3,sources:["webpack://./src/components/File.vue"],names:[],mappings:"AAiOA,iCACC,qCAAA,CACA,iBAAA,CACA,WAAA,CACA,UAAA,CACA,6CAAA,CACA,qBAAA,CAIC,sGACC,iBAAA,CACA,KAAA,CACA,MAAA,CACA,SAAA,CACA,UAAA,CACA,WAAA,CACA,UAAA,CACA,sCAAA,CACA,mBAAA,CACA,mBAAA,CAIF,uCACC,UAAA,CACA,WAAA,CACA,qBAAA,CACA,YAAA,CAEA,+CACC,gBAAA,CAEA,2DACC,iBAAA,CACA,OAAA,CACA,SAAA,CACA,UAAA,CACA,WAAA,CACA,SAAA,CACA,UAAA,CAEA,uFACC,iCAAA,CAIF,mDACC,UAAA,CACA,WAAA,CACA,gBAAA,CACA,iBAAA,CACA,mBAAA,CAGD,gEACC,iBAAA,CACA,WAAA,CACA,UAAA,CACA,YAAA,CACA,oBAAA,CACA,kBAAA,CACA,sBAAA,CAEA,oEACC,SAAA,CACA,UAAA,CAKH,2DACC,iBAAA,CACA,aAAA,CACA,YAAA,CACA,SAAA,CACA,UAAA,CACA,eAAA,CAEA,gEACC,gBAAA,CACA,yBAAA,CAAA,sBAAA,CAAA,iBAAA,CACA,0BAAA,CAAA,uBAAA,CAAA,kBAAA,CAOF,2LACC,YAAA,CAGD,+KACC,YAAA,CAIF,qDACC,YAAA,CACA,iBAAA,CACA,OAAA,CAEA,yBAAA,CACA,SAAA,CACA,yBAAA,CAAA,sBAAA,CAAA,iBAAA,CAGA,oFACC,YAAA,CACA,qBAAA,CAGA,2FACC,UAAA,CACA,qCAAA,CACA,UAAA,CACA,WAAA,CACA,iBAAA,CACA,QAAA,CACA,UAAA,CAGD,iHACC,QAAA,CAIF,kEACC,cAAA,CACA,UAAA,CACA,WAAA,CACA,YAAA,CAIF,iDACC,iBAAA,CACA,OAAA,CAEA,wBAAA,CAEA,6EACC,SAAA,CAEA,kFACC,iCAAA,CACA,gBAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.file-container {\n\tbackground: var(--color-primary-light);\n\tposition: relative;\n\theight: 100%;\n\twidth: 100%;\n\tborder: 2px solid var(--color-main-background); // Use border so create a separation between images.\n\tbox-sizing: border-box;\n\n\t// Selection border.\n\t&.selected, &:focus-within {\n\t\t&::after {\n\t\t\tposition: absolute;\n\t\t\ttop: 0;\n\t\t\tleft: 0;\n\t\t\tz-index: 2;\n\t\t\twidth: 100%;\n\t\t\theight: 100%;\n\t\t\tcontent: \'\';\n\t\t\toutline: var(--color-primary) solid 4px;\n\t\t\toutline-offset: -4px;\n\t\t\tpointer-events: none;\n\t\t}\n\t}\n\n\t.file {\n\t\twidth: 100%;\n\t\theight: 100%;\n\t\tbox-sizing: border-box;\n\t\toutline: none; // Override global focus state.\n\n\t\t&__images {\n\t\t\tdisplay: contents;\n\n\t\t\t.video-icon {\n\t\t\t\tposition: absolute;\n\t\t\t\ttop: 0px;\n\t\t\t\tright: 0px;\n\t\t\t\twidth: 100%;\n\t\t\t\theight: 100%;\n\t\t\t\tz-index: 1;\n\t\t\t\topacity: 0.8;\n\n\t\t\t\t::v-deep .material-design-icon__svg {\n\t\t\t\t\tfill: var(--color-main-background);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\timg {\n\t\t\t\twidth: 100%;\n\t\t\t\theight: 100%;\n\t\t\t\tobject-fit: cover;\n\t\t\t\tposition: absolute;\n\t\t\t\tcolor: transparent; /// Hide alt=\'\' text when loading.\n\t\t\t}\n\n\t\t\t.loading-overlay {\n\t\t\t\tposition: absolute;\n\t\t\t\theight: 100%;\n\t\t\t\twidth: 100%;\n\t\t\t\tdisplay: flex;\n\t\t\t\talign-content: center;\n\t\t\t\talign-items: center;\n\t\t\t\tjustify-content: center;\n\n\t\t\t\tsvg {\n\t\t\t\t\twidth: 70%;\n\t\t\t\t\theight: 70%;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t&__hidden-description {\n\t\t\tposition: absolute;\n\t\t\tleft: -10000px;\n\t\t\ttop: -10000px;\n\t\t\twidth: 1px;\n\t\t\theight: 1px;\n\t\t\toverflow: hidden;\n\n\t\t\t&.show {\n\t\t\t\tposition: initial;\n\t\t\t\twidth: fit-content;\n\t\t\t\theight: fit-content;\n\t\t\t}\n\t\t}\n\t}\n\n\t// Reveal checkbox on hover.\n\t&:hover, &.selected, &:focus-within {\n\t\t.selection-checkbox {\n\t\t\tdisplay: flex;\n\t\t}\n\n\t\t.favorite-state {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n\n\t.selection-checkbox {\n\t\tdisplay: none;\n\t\tposition: absolute;\n\t\ttop: 8px;\n\t\t// Fancy calculation to render the checkbox in the middle of narrow images.\n\t\tright: min(22px, calc(50% - 7px));\n\t\tz-index: 1;\n\t\twidth: fit-content;\n\n\t\t// Make the checkbox background round on hover.\n\t\t::v-deep .checkbox-radio-switch__label {\n\t\t\tpadding: 10px;\n\t\t\tbox-sizing: border-box;\n\n\t\t\t// Add a background to the checkbox so we do not see the image through it.\n\t\t\t&::after {\n\t\t\t\tcontent: \'\';\n\t\t\t\tbackground: var(--color-primary-light);\n\t\t\t\twidth: 16px;\n\t\t\t\theight: 16px;\n\t\t\t\tposition: absolute;\n\t\t\t\tleft: 1px;\n\t\t\t\tz-index: -1;\n\t\t\t}\n\n\t\t\t.checkbox-radio-switch__icon {\n\t\t\t\tmargin: 0;\n\t\t\t}\n\t\t}\n\n\t\t.input-label {\n\t\t\tposition: fixed;\n\t\t\tz-index: -1;\n\t\t\ttop: -5000px;\n\t\t\tleft: -5000px;\n\t\t}\n\t}\n\n\t.favorite-state {\n\t\tposition: absolute;\n\t\ttop: 2px;\n\t\t// Fancy calculation to render the start in the middle of narrow images.\n\t\tright: min(2px, calc(50% - 7px));\n\n\t\t::v-deep .material-design-icon__svg {\n\t\t\tfill: #FC0;\n\n\t\t\tpath {\n\t\t\t\tstroke: var(--color-primary-light);\n\t\t\t\tstroke-width: 1px;\n\t\t\t}\n\t\t}\n\t}\n}\n'],sourceRoot:""}]);const A=r},53932:(n,e,i)=>{i.d(e,{Z:()=>z});var o=i(75760),a=i(16235),r=i(79753),A=i(45994),s=i(33476),c=i(81090),l=i(32114);function d(t,n,e,i,o,a,r){try{var A=t[a](r),s=A.value}catch(t){return void e(t)}A.done?n(s):Promise.resolve(s).then(i,o)}function h(t){return function(){var n=this,e=arguments;return new Promise((function(i,o){var a=t.apply(n,e);function r(t){d(a,i,o,r,A,"next",t)}function A(t){d(a,i,o,r,A,"throw",t)}r(void 0)}))}}const C={name:"File",components:{CheckboxRadioSwitch:s.CheckboxRadioSwitch,Star:o.default,VideoIcon:a.Z},mixins:[c.Z],inheritAttrs:!1,props:{file:{type:Object,required:!0},selected:{type:Boolean,required:!0},allowSelection:{type:Boolean,default:!0},visibility:{type:String,required:!0},semaphore:{type:l.Z,required:!0}},data:function(){return{loaded:!1,error:!1,canLoad:!1,semaphoreSymbol:null,isDestroyed:!1}},computed:{davPath:function(){return(0,r.generateRemoteUrl)("dav/files/".concat((0,A.ts)().uid))+this.file.filename},ariaDescription:function(){return"image-description-".concat(this.file.fileid)},ariaLabel:function(){return t("photos",'Open the full size "{name}" image',{name:this.file.basename})},isImage:function(){return this.file.mime.startsWith("image")},decodedEtag:function(){return this.file.etag.replace(""","").replace(""","")},srcVisible:function(){return this.getItemURL(512)},srcNear:function(){return this.getItemURL(64)}},mounted:function(){var t=this;setTimeout(h(regeneratorRuntime.mark((function n(){return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,t.semaphore.acquire((function(){switch(t.visibility){case"visible":return 1;case"near":return 2;default:return 3}}),t.file.fileid);case 2:t.semaphoreSymbol=n.sent,t.canLoad=!0,("none"===t.visibility||t.isDestroyed)&&t.releaseSemaphore();case 5:case"end":return n.stop()}}),n)}))),250)},beforeDestroy:function(){this.isDestroyed=!0,this.releaseSemaphore(),void 0!==this.$refs.imgNear&&(this.$refs.imgNear.src=""),void 0!==this.$refs.srcVisible&&(this.$refs.srcVisible.src="")},methods:{emitClick:function(){this.$emit("click",this.file.fileid)},onLoad:function(){this.loaded=!0,this.releaseSemaphore()},onError:function(){this.error=!0,this.releaseSemaphore()},onToggle:function(t){this.$emit("select-toggled",{id:this.file.fileid,value:t})},getItemURL:function(t){return(0,r.generateUrl)("/core/preview?fileId=".concat(this.file.fileid,"&c=").concat(this.decodedEtag,"&x=").concat(t,"&y=").concat(t,"&forceIcon=0&a=1"))},releaseSemaphore:function(){null!==this.semaphoreSymbol&&(this.semaphore.release(this.semaphoreSymbol),this.semaphoreSymbol=null)}}};var p=i(93379),f=i.n(p),g=i(7795),u=i.n(g),m=i(90569),b=i.n(m),v=i(3565),x=i.n(v),w=i(19216),_=i.n(w),y=i(44589),k=i.n(y),B=i(84496),S={};S.styleTagTransform=k(),S.setAttributes=x(),S.insert=b().bind(null,"head"),S.domAPI=u(),S.insertStyleElement=_();f()(B.Z,S);B.Z&&B.Z.locals&&B.Z.locals;const z=(0,i(51900).Z)(C,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("div",{staticClass:"file-container",class:{selected:t.selected}},[e("a",{staticClass:"file",attrs:{href:t.davPath,"aria-label":t.ariaLabel},on:{click:function(n){return n.preventDefault(),t.emitClick.apply(null,arguments)}}},[e("div",{staticClass:"file__images"},[t.file.mime.includes("video")?e("VideoIcon",{staticClass:"video-icon",attrs:{size:64}}):t._e(),t._v(" "),"none"!==t.visibility&&t.canLoad&&!t.error?e("img",{key:t.file.basename+"-near",ref:"imgNear",attrs:{src:t.srcNear,alt:t.file.basename,"aria-describedby":t.ariaDescription},on:{load:t.onLoad,error:t.onError}}):t._e(),t._v(" "),"visible"===t.visibility&&t.canLoad&&!t.error?e("img",{key:t.file.basename+"-visible",ref:"imgVisible",attrs:{src:t.srcVisible,alt:t.file.basename,"aria-describedby":t.ariaDescription},on:{load:t.onLoad,error:t.onError}}):t._e()],1),t._v(" "),e("p",{staticClass:"file__hidden-description",class:{show:t.error},attrs:{id:t.ariaDescription}},[t._v(t._s(t.file.basename))])]),t._v(" "),t.allowSelection?e("CheckboxRadioSwitch",{staticClass:"selection-checkbox",attrs:{checked:t.selected},on:{"update:checked":t.onToggle}},[e("span",{staticClass:"input-label"},[t._v(t._s(t.t("photos","Select image {imageName}",{imageName:t.file.basename})))])]):t._e(),t._v(" "),1===t.file.favorite?e("Star",{staticClass:"favorite-state",attrs:{"aria-label":t.t("photos","The file is in the favorites")}}):t._e()],1)}),[],!1,null,"67e992e4",null).exports}}]); -//# sourceMappingURL=photos-src_mixins_AbortControllerMixin_js-src_services_DavRequest_js-src_components_File_vue.js.map?v=b0acba54c86e78d80a7f \ No newline at end of file diff --git a/js/photos-src_mixins_AbortControllerMixin_js-src_services_DavRequest_js-src_components_File_vue.js.LICENSE.txt b/js/photos-src_mixins_AbortControllerMixin_js-src_services_DavRequest_js-src_components_File_vue.js.LICENSE.txt deleted file mode 100644 index 3edd37b78..000000000 --- a/js/photos-src_mixins_AbortControllerMixin_js-src_services_DavRequest_js-src_components_File_vue.js.LICENSE.txt +++ /dev/null @@ -1,43 +0,0 @@ -/** - * @copyright Copyright (c) 2019 John Molakvoæ - * - * @author John Molakvoæ - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ - -/** - * @copyright Copyright (c) 2022 Louis Chemineau - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ diff --git a/js/photos-src_mixins_AbortControllerMixin_js-src_services_DavRequest_js-src_components_File_vue.js.map b/js/photos-src_mixins_AbortControllerMixin_js-src_services_DavRequest_js-src_components_File_vue.js.map deleted file mode 100644 index 7144a2eb3..000000000 --- a/js/photos-src_mixins_AbortControllerMixin_js-src_services_DavRequest_js-src_components_File_vue.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-src_mixins_AbortControllerMixin_js-src_services_DavRequest_js-src_components_File_vue.js?v=b0acba54c86e78d80a7f","mappings":";qMAsBA,SACCA,KAAM,qBAENC,KAHc,WAIb,MAAO,CACNC,gBAAiB,IAAIC,gBAEtB,EAEDC,cATc,WAUbC,KAAKH,gBAAgBI,OACrB,EAEDC,iBAbc,WAcbF,KAAKH,gBAAgBI,QACrBD,KAAKH,gBAAkB,IAAIC,eAC3B,4CCjBF,IAAMK,EAAQ,yPAcd,QAAe,sPAMRA,EANP,iHChCIC,QAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,wgGAA6gG,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,uCAAuC,MAAQ,GAAG,SAAW,ogCAAogC,eAAiB,CAAC,2sIAAqxI,WAAa,MAEt8Q,4CCPA,6YC+EA,MC/EqK,ED+ErK,CACA,YACA,YACA,0CACA,eACA,eAEA,aACA,gBACA,OACA,MACA,YACA,aAEA,UACA,aACA,aAEA,gBACA,aACA,YAEA,YACA,YACA,aAEA,WACA,SACA,cAIA,KAhCA,WAiCA,OACA,UACA,SACA,WACA,qBACA,eAEA,EAEA,UAEA,QAFA,WAGA,qFACA,EAEA,gBANA,WAOA,mDACA,EAEA,UAVA,WAWA,gFACA,EAEA,QAdA,WAeA,yCACA,EAEA,YAlBA,WAmBA,+DACA,EAEA,WAtBA,WAuBA,2BACA,EAEA,QA1BA,WA2BA,0BACA,GAGA,QAzEA,WAyEA,WAEA,mJACA,gCACA,qBACA,cACA,SACA,WACA,SACA,QACA,SAEA,kBAVA,OACA,kBADA,OAYA,cACA,uCACA,qBAdA,2CAgBA,IACA,EAEA,cA9FA,WA+FA,oBACA,6BAGA,yBACA,gCAEA,4BACA,6BAEA,EAEA,SACA,UADA,WAEA,oCACA,EAGA,OANA,WAOA,eACA,uBACA,EAEA,QAXA,WAYA,cACA,uBACA,EAEA,SAhBA,SAgBA,GACA,0DACA,EAEA,WApBA,SAoBA,GACA,2JAEA,EAEA,iBAzBA,WA0BA,8BAGA,6CACA,0BACA,yIE9MIC,EAAU,CAAC,EAEfA,EAAQC,kBAAoB,IAC5BD,EAAQE,cAAgB,IAElBF,EAAQG,OAAS,SAAc,KAAM,QAE3CH,EAAQI,OAAS,IACjBJ,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKJ,KAAW,YAAiB,WCPlD,SAXgB,cACd,GJTW,WAAa,IAAIM,EAAId,KAASe,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACE,YAAY,iBAAiBC,MAAM,CAACC,SAAUP,EAAIO,WAAW,CAACJ,EAAG,IAAI,CAACE,YAAY,OAAOG,MAAM,CAAC,KAAOR,EAAIS,QAAQ,aAAaT,EAAIU,WAAWC,GAAG,CAAC,MAAQ,SAASC,GAAgC,OAAxBA,EAAOC,iBAAwBb,EAAIc,UAAUC,MAAM,KAAMC,UAAU,IAAI,CAACb,EAAG,MAAM,CAACE,YAAY,gBAAgB,CAAEL,EAAIiB,KAAKC,KAAKC,SAAS,SAAUhB,EAAG,YAAY,CAACE,YAAY,aAAaG,MAAM,CAAC,KAAO,MAAMR,EAAIoB,KAAKpB,EAAIqB,GAAG,KAAyB,SAAnBrB,EAAIsB,YAAyBtB,EAAIuB,UAAYvB,EAAIwB,MAAOrB,EAAG,MAAM,CAACsB,IAAMzB,EAAIiB,KAAa,SAAI,QAASS,IAAI,UAAUlB,MAAM,CAAC,IAAMR,EAAI2B,QAAQ,IAAM3B,EAAIiB,KAAKW,SAAS,mBAAmB5B,EAAI6B,iBAAiBlB,GAAG,CAAC,KAAOX,EAAI8B,OAAO,MAAQ9B,EAAI+B,WAAW/B,EAAIoB,KAAKpB,EAAIqB,GAAG,KAAyB,YAAnBrB,EAAIsB,YAA4BtB,EAAIuB,UAAYvB,EAAIwB,MAAOrB,EAAG,MAAM,CAACsB,IAAMzB,EAAIiB,KAAa,SAAI,WAAYS,IAAI,aAAalB,MAAM,CAAC,IAAMR,EAAIgC,WAAW,IAAMhC,EAAIiB,KAAKW,SAAS,mBAAmB5B,EAAI6B,iBAAiBlB,GAAG,CAAC,KAAOX,EAAI8B,OAAO,MAAQ9B,EAAI+B,WAAW/B,EAAIoB,MAAM,GAAGpB,EAAIqB,GAAG,KAAKlB,EAAG,IAAI,CAACE,YAAY,2BAA2BC,MAAM,CAAC2B,KAAMjC,EAAIwB,OAAOhB,MAAM,CAAC,GAAKR,EAAI6B,kBAAkB,CAAC7B,EAAIqB,GAAGrB,EAAIkC,GAAGlC,EAAIiB,KAAKW,eAAe5B,EAAIqB,GAAG,KAAMrB,EAAkB,eAAEG,EAAG,sBAAsB,CAACE,YAAY,qBAAqBG,MAAM,CAAC,QAAUR,EAAIO,UAAUI,GAAG,CAAC,iBAAiBX,EAAImC,WAAW,CAAChC,EAAG,OAAO,CAACE,YAAY,eAAe,CAACL,EAAIqB,GAAGrB,EAAIkC,GAAGlC,EAAIoC,EAAE,SAAU,2BAA4B,CAACC,UAAWrC,EAAIiB,KAAKW,iBAAiB5B,EAAIoB,KAAKpB,EAAIqB,GAAG,KAA4B,IAAtBrB,EAAIiB,KAAKqB,SAAgBnC,EAAG,OAAO,CAACE,YAAY,iBAAiBG,MAAM,CAAC,aAAaR,EAAIoC,EAAE,SAAU,mCAAmCpC,EAAIoB,MAAM,EAAE,GACpnD,IIWpB,EACA,KACA,WACA,MAI8B","sources":["webpack:///photos/src/mixins/AbortControllerMixin.js","webpack:///photos/src/services/DavRequest.js","webpack:///photos/src/components/File.vue?vue&type=style&index=0&id=67e992e4&lang=scss&scoped=true&","webpack:///photos/src/components/File.vue?vue&type=template&id=67e992e4&scoped=true&","webpack:///photos/src/components/File.vue","webpack:///photos/src/components/File.vue?vue&type=script&lang=js&","webpack://photos/./src/components/File.vue?c765","webpack://photos/./src/components/File.vue?f552"],"sourcesContent":["/**\n * @copyright Copyright (c) 2022 Louis Chemineau \n *\n * @author Louis Chemineau \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 .\n *\n */\n\nexport default {\n\tname: 'CancelRequestMixin',\n\n\tdata() {\n\t\treturn {\n\t\t\tabortController: new AbortController(),\n\t\t}\n\t},\n\n\tbeforeDestroy() {\n\t\tthis.abortController.abort()\n\t},\n\n\tbeforeRouteLeave() {\n\t\tthis.abortController.abort()\n\t\tthis.abortController = new AbortController()\n\t},\n}\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ \n *\n * @author John Molakvoæ \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 .\n *\n */\nconst props = `\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t`\n\nexport { props }\nexport default `\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t${props}\n\t\t\t\t\n\t\t\t`\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".file-container[data-v-67e992e4]{background:var(--color-primary-light);position:relative;height:100%;width:100%;border:2px solid var(--color-main-background);box-sizing:border-box}.file-container.selected[data-v-67e992e4]::after,.file-container[data-v-67e992e4]:focus-within::after{position:absolute;top:0;left:0;z-index:2;width:100%;height:100%;content:\\\"\\\";outline:var(--color-primary) solid 4px;outline-offset:-4px;pointer-events:none}.file-container .file[data-v-67e992e4]{width:100%;height:100%;box-sizing:border-box;outline:none}.file-container .file__images[data-v-67e992e4]{display:contents}.file-container .file__images .video-icon[data-v-67e992e4]{position:absolute;top:0px;right:0px;width:100%;height:100%;z-index:1;opacity:.8}.file-container .file__images .video-icon[data-v-67e992e4] .material-design-icon__svg{fill:var(--color-main-background)}.file-container .file__images img[data-v-67e992e4]{width:100%;height:100%;object-fit:cover;position:absolute;color:rgba(0,0,0,0)}.file-container .file__images .loading-overlay[data-v-67e992e4]{position:absolute;height:100%;width:100%;display:flex;align-content:center;align-items:center;justify-content:center}.file-container .file__images .loading-overlay svg[data-v-67e992e4]{width:70%;height:70%}.file-container .file__hidden-description[data-v-67e992e4]{position:absolute;left:-10000px;top:-10000px;width:1px;height:1px;overflow:hidden}.file-container .file__hidden-description.show[data-v-67e992e4]{position:initial;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;height:-webkit-fit-content;height:-moz-fit-content;height:fit-content}.file-container:hover .selection-checkbox[data-v-67e992e4],.file-container.selected .selection-checkbox[data-v-67e992e4],.file-container:focus-within .selection-checkbox[data-v-67e992e4]{display:flex}.file-container:hover .favorite-state[data-v-67e992e4],.file-container.selected .favorite-state[data-v-67e992e4],.file-container:focus-within .favorite-state[data-v-67e992e4]{display:none}.file-container .selection-checkbox[data-v-67e992e4]{display:none;position:absolute;top:8px;right:min(22px,50% - 7px);z-index:1;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}.file-container .selection-checkbox[data-v-67e992e4] .checkbox-radio-switch__label{padding:10px;box-sizing:border-box}.file-container .selection-checkbox[data-v-67e992e4] .checkbox-radio-switch__label::after{content:\\\"\\\";background:var(--color-primary-light);width:16px;height:16px;position:absolute;left:1px;z-index:-1}.file-container .selection-checkbox[data-v-67e992e4] .checkbox-radio-switch__label .checkbox-radio-switch__icon{margin:0}.file-container .selection-checkbox .input-label[data-v-67e992e4]{position:fixed;z-index:-1;top:-5000px;left:-5000px}.file-container .favorite-state[data-v-67e992e4]{position:absolute;top:2px;right:min(2px,50% - 7px)}.file-container .favorite-state[data-v-67e992e4] .material-design-icon__svg{fill:#fc0}.file-container .favorite-state[data-v-67e992e4] .material-design-icon__svg path{stroke:var(--color-primary-light);stroke-width:1px}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/File.vue\"],\"names\":[],\"mappings\":\"AAiOA,iCACC,qCAAA,CACA,iBAAA,CACA,WAAA,CACA,UAAA,CACA,6CAAA,CACA,qBAAA,CAIC,sGACC,iBAAA,CACA,KAAA,CACA,MAAA,CACA,SAAA,CACA,UAAA,CACA,WAAA,CACA,UAAA,CACA,sCAAA,CACA,mBAAA,CACA,mBAAA,CAIF,uCACC,UAAA,CACA,WAAA,CACA,qBAAA,CACA,YAAA,CAEA,+CACC,gBAAA,CAEA,2DACC,iBAAA,CACA,OAAA,CACA,SAAA,CACA,UAAA,CACA,WAAA,CACA,SAAA,CACA,UAAA,CAEA,uFACC,iCAAA,CAIF,mDACC,UAAA,CACA,WAAA,CACA,gBAAA,CACA,iBAAA,CACA,mBAAA,CAGD,gEACC,iBAAA,CACA,WAAA,CACA,UAAA,CACA,YAAA,CACA,oBAAA,CACA,kBAAA,CACA,sBAAA,CAEA,oEACC,SAAA,CACA,UAAA,CAKH,2DACC,iBAAA,CACA,aAAA,CACA,YAAA,CACA,SAAA,CACA,UAAA,CACA,eAAA,CAEA,gEACC,gBAAA,CACA,yBAAA,CAAA,sBAAA,CAAA,iBAAA,CACA,0BAAA,CAAA,uBAAA,CAAA,kBAAA,CAOF,2LACC,YAAA,CAGD,+KACC,YAAA,CAIF,qDACC,YAAA,CACA,iBAAA,CACA,OAAA,CAEA,yBAAA,CACA,SAAA,CACA,yBAAA,CAAA,sBAAA,CAAA,iBAAA,CAGA,oFACC,YAAA,CACA,qBAAA,CAGA,2FACC,UAAA,CACA,qCAAA,CACA,UAAA,CACA,WAAA,CACA,iBAAA,CACA,QAAA,CACA,UAAA,CAGD,iHACC,QAAA,CAIF,kEACC,cAAA,CACA,UAAA,CACA,WAAA,CACA,YAAA,CAIF,iDACC,iBAAA,CACA,OAAA,CAEA,wBAAA,CAEA,6EACC,SAAA,CAEA,kFACC,iCAAA,CACA,gBAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.file-container {\\n\\tbackground: var(--color-primary-light);\\n\\tposition: relative;\\n\\theight: 100%;\\n\\twidth: 100%;\\n\\tborder: 2px solid var(--color-main-background); // Use border so create a separation between images.\\n\\tbox-sizing: border-box;\\n\\n\\t// Selection border.\\n\\t&.selected, &:focus-within {\\n\\t\\t&::after {\\n\\t\\t\\tposition: absolute;\\n\\t\\t\\ttop: 0;\\n\\t\\t\\tleft: 0;\\n\\t\\t\\tz-index: 2;\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\theight: 100%;\\n\\t\\t\\tcontent: '';\\n\\t\\t\\toutline: var(--color-primary) solid 4px;\\n\\t\\t\\toutline-offset: -4px;\\n\\t\\t\\tpointer-events: none;\\n\\t\\t}\\n\\t}\\n\\n\\t.file {\\n\\t\\twidth: 100%;\\n\\t\\theight: 100%;\\n\\t\\tbox-sizing: border-box;\\n\\t\\toutline: none; // Override global focus state.\\n\\n\\t\\t&__images {\\n\\t\\t\\tdisplay: contents;\\n\\n\\t\\t\\t.video-icon {\\n\\t\\t\\t\\tposition: absolute;\\n\\t\\t\\t\\ttop: 0px;\\n\\t\\t\\t\\tright: 0px;\\n\\t\\t\\t\\twidth: 100%;\\n\\t\\t\\t\\theight: 100%;\\n\\t\\t\\t\\tz-index: 1;\\n\\t\\t\\t\\topacity: 0.8;\\n\\n\\t\\t\\t\\t::v-deep .material-design-icon__svg {\\n\\t\\t\\t\\t\\tfill: var(--color-main-background);\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\n\\t\\t\\timg {\\n\\t\\t\\t\\twidth: 100%;\\n\\t\\t\\t\\theight: 100%;\\n\\t\\t\\t\\tobject-fit: cover;\\n\\t\\t\\t\\tposition: absolute;\\n\\t\\t\\t\\tcolor: transparent; /// Hide alt='' text when loading.\\n\\t\\t\\t}\\n\\n\\t\\t\\t.loading-overlay {\\n\\t\\t\\t\\tposition: absolute;\\n\\t\\t\\t\\theight: 100%;\\n\\t\\t\\t\\twidth: 100%;\\n\\t\\t\\t\\tdisplay: flex;\\n\\t\\t\\t\\talign-content: center;\\n\\t\\t\\t\\talign-items: center;\\n\\t\\t\\t\\tjustify-content: center;\\n\\n\\t\\t\\t\\tsvg {\\n\\t\\t\\t\\t\\twidth: 70%;\\n\\t\\t\\t\\t\\theight: 70%;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t&__hidden-description {\\n\\t\\t\\tposition: absolute;\\n\\t\\t\\tleft: -10000px;\\n\\t\\t\\ttop: -10000px;\\n\\t\\t\\twidth: 1px;\\n\\t\\t\\theight: 1px;\\n\\t\\t\\toverflow: hidden;\\n\\n\\t\\t\\t&.show {\\n\\t\\t\\t\\tposition: initial;\\n\\t\\t\\t\\twidth: fit-content;\\n\\t\\t\\t\\theight: fit-content;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t// Reveal checkbox on hover.\\n\\t&:hover, &.selected, &:focus-within {\\n\\t\\t.selection-checkbox {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t}\\n\\n\\t\\t.favorite-state {\\n\\t\\t\\tdisplay: none;\\n\\t\\t}\\n\\t}\\n\\n\\t.selection-checkbox {\\n\\t\\tdisplay: none;\\n\\t\\tposition: absolute;\\n\\t\\ttop: 8px;\\n\\t\\t// Fancy calculation to render the checkbox in the middle of narrow images.\\n\\t\\tright: min(22px, calc(50% - 7px));\\n\\t\\tz-index: 1;\\n\\t\\twidth: fit-content;\\n\\n\\t\\t// Make the checkbox background round on hover.\\n\\t\\t::v-deep .checkbox-radio-switch__label {\\n\\t\\t\\tpadding: 10px;\\n\\t\\t\\tbox-sizing: border-box;\\n\\n\\t\\t\\t// Add a background to the checkbox so we do not see the image through it.\\n\\t\\t\\t&::after {\\n\\t\\t\\t\\tcontent: '';\\n\\t\\t\\t\\tbackground: var(--color-primary-light);\\n\\t\\t\\t\\twidth: 16px;\\n\\t\\t\\t\\theight: 16px;\\n\\t\\t\\t\\tposition: absolute;\\n\\t\\t\\t\\tleft: 1px;\\n\\t\\t\\t\\tz-index: -1;\\n\\t\\t\\t}\\n\\n\\t\\t\\t.checkbox-radio-switch__icon {\\n\\t\\t\\t\\tmargin: 0;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t.input-label {\\n\\t\\t\\tposition: fixed;\\n\\t\\t\\tz-index: -1;\\n\\t\\t\\ttop: -5000px;\\n\\t\\t\\tleft: -5000px;\\n\\t\\t}\\n\\t}\\n\\n\\t.favorite-state {\\n\\t\\tposition: absolute;\\n\\t\\ttop: 2px;\\n\\t\\t// Fancy calculation to render the start in the middle of narrow images.\\n\\t\\tright: min(2px, calc(50% - 7px));\\n\\n\\t\\t::v-deep .material-design-icon__svg {\\n\\t\\t\\tfill: #FC0;\\n\\n\\t\\t\\tpath {\\n\\t\\t\\t\\tstroke: var(--color-primary-light);\\n\\t\\t\\t\\tstroke-width: 1px;\\n\\t\\t\\t}\\n\\t\\t}\\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 _c('div',{staticClass:\"file-container\",class:{selected: _vm.selected}},[_c('a',{staticClass:\"file\",attrs:{\"href\":_vm.davPath,\"aria-label\":_vm.ariaLabel},on:{\"click\":function($event){$event.preventDefault();return _vm.emitClick.apply(null, arguments)}}},[_c('div',{staticClass:\"file__images\"},[(_vm.file.mime.includes('video'))?_c('VideoIcon',{staticClass:\"video-icon\",attrs:{\"size\":64}}):_vm._e(),_vm._v(\" \"),(_vm.visibility !== 'none' && _vm.canLoad && !_vm.error)?_c('img',{key:((_vm.file.basename) + \"-near\"),ref:\"imgNear\",attrs:{\"src\":_vm.srcNear,\"alt\":_vm.file.basename,\"aria-describedby\":_vm.ariaDescription},on:{\"load\":_vm.onLoad,\"error\":_vm.onError}}):_vm._e(),_vm._v(\" \"),(_vm.visibility === 'visible' && _vm.canLoad && !_vm.error)?_c('img',{key:((_vm.file.basename) + \"-visible\"),ref:\"imgVisible\",attrs:{\"src\":_vm.srcVisible,\"alt\":_vm.file.basename,\"aria-describedby\":_vm.ariaDescription},on:{\"load\":_vm.onLoad,\"error\":_vm.onError}}):_vm._e()],1),_vm._v(\" \"),_c('p',{staticClass:\"file__hidden-description\",class:{show: _vm.error},attrs:{\"id\":_vm.ariaDescription}},[_vm._v(_vm._s(_vm.file.basename))])]),_vm._v(\" \"),(_vm.allowSelection)?_c('CheckboxRadioSwitch',{staticClass:\"selection-checkbox\",attrs:{\"checked\":_vm.selected},on:{\"update:checked\":_vm.onToggle}},[_c('span',{staticClass:\"input-label\"},[_vm._v(_vm._s(_vm.t('photos', 'Select image {imageName}', {imageName: _vm.file.basename})))])]):_vm._e(),_vm._v(\" \"),(_vm.file.favorite === 1)?_c('Star',{staticClass:\"favorite-state\",attrs:{\"aria-label\":_vm.t('photos', 'The file is in the favorites')}}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./File.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!./File.vue?vue&type=script&lang=js&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./File.vue?vue&type=style&index=0&id=67e992e4&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./File.vue?vue&type=style&index=0&id=67e992e4&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./File.vue?vue&type=template&id=67e992e4&scoped=true&\"\nimport script from \"./File.vue?vue&type=script&lang=js&\"\nexport * from \"./File.vue?vue&type=script&lang=js&\"\nimport style0 from \"./File.vue?vue&type=style&index=0&id=67e992e4&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 \"67e992e4\",\n null\n \n)\n\nexport default component.exports"],"names":["name","data","abortController","AbortController","beforeDestroy","this","abort","beforeRouteLeave","props","___CSS_LOADER_EXPORT___","push","module","id","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","_vm","_h","$createElement","_c","_self","staticClass","class","selected","attrs","davPath","ariaLabel","on","$event","preventDefault","emitClick","apply","arguments","file","mime","includes","_e","_v","visibility","canLoad","error","key","ref","srcNear","basename","ariaDescription","onLoad","onError","srcVisible","show","_s","onToggle","t","imageName","favorite"],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-src_mixins_AbortControllerMixin_js-src_views_Albums_vue.js b/js/photos-src_mixins_AbortControllerMixin_js-src_views_Albums_vue.js deleted file mode 100644 index 67d0b60d5..000000000 --- a/js/photos-src_mixins_AbortControllerMixin_js-src_views_Albums_vue.js +++ /dev/null @@ -1,3 +0,0 @@ -/*! For license information please see photos-src_mixins_AbortControllerMixin_js-src_views_Albums_vue.js.LICENSE.txt */ -"use strict";(self.webpackChunkphotos=self.webpackChunkphotos||[]).push([["src_mixins_AbortControllerMixin_js-src_views_Albums_vue"],{69363:(n,t,a)=>{a.d(t,{Z:()=>o});const o={name:"AbortControllerMixin",data:function(){return{abortController:new AbortController}},beforeDestroy:function(){this.abortController.abort()},beforeRouteLeave:function(n,t,a){this.abortController.abort(),this.abortController=new AbortController,a()}}},87399:(n,t,a)=>{a.d(t,{Z:()=>s});var o=a(87537),e=a.n(o),i=a(23645),r=a.n(i)()(e());r.push([n.id,".album-cover[data-v-7d7f11f1]{display:flex;flex-direction:column;padding:16px;border-radius:12px}.album-cover[data-v-7d7f11f1]:hover,.album-cover[data-v-7d7f11f1]:focus{background:var(--color-background-dark)}.album-cover__image[data-v-7d7f11f1]{width:350px;height:350px;object-fit:none;border-radius:12px}@media only screen and (max-width: 1200px){.album-cover__image[data-v-7d7f11f1]{width:250px;height:250px}}.album-cover__image--placeholder[data-v-7d7f11f1]{background:var(--color-primary-light)}.album-cover__image--placeholder[data-v-7d7f11f1] .material-design-icon{width:100%;height:100%}.album-cover__image--placeholder[data-v-7d7f11f1] .material-design-icon .material-design-icon__svg{fill:var(--color-primary)}.album-cover__details[data-v-7d7f11f1]{display:flex;flex-direction:column;margin-top:16px;width:350px}@media only screen and (max-width: 1200px){.album-cover__details[data-v-7d7f11f1]{width:250px}}.album-cover__details__first-line[data-v-7d7f11f1]{display:flex}.album-cover__details__second-line[data-v-7d7f11f1]{display:flex;color:var(--color-text-lighter)}.album-cover__details__name[data-v-7d7f11f1]{flex-grow:1;margin:0;font-weight:normal;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}","",{version:3,sources:["webpack://./src/components/AlbumCover.vue"],names:[],mappings:"AAsGA,8BACC,YAAA,CACA,qBAAA,CACA,YAAA,CACA,kBAAA,CAEA,wEACC,uCAAA,CAGD,qCACC,WAAA,CACA,YAAA,CACA,eAAA,CACA,kBAAA,CAEA,2CAND,qCAOE,WAAA,CACA,YAAA,CAAA,CAGD,kDACC,qCAAA,CAEA,yEACC,UAAA,CACA,WAAA,CAEA,oGACC,yBAAA,CAMJ,uCACC,YAAA,CACA,qBAAA,CACA,eAAA,CACA,WAAA,CAEA,2CAND,uCAOE,WAAA,CAAA,CAGD,mDACC,YAAA,CAGD,oDACC,YAAA,CACA,+BAAA,CAGD,6CACC,WAAA,CACA,QAAA,CACA,kBAAA,CACA,eAAA,CACA,kBAAA,CACA,sBAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.album-cover {\n\tdisplay: flex;\n\tflex-direction: column;\n\tpadding: 16px;\n\tborder-radius: 12px;\n\n\t&:hover, &:focus {\n\t\tbackground: var(--color-background-dark);\n\t}\n\n\t&__image {\n\t\twidth: 350px;\n\t\theight: 350px;\n\t\tobject-fit: none;\n\t\tborder-radius: 12px;\n\n\t\t@media only screen and (max-width: 1200px) {\n\t\t\twidth: 250px;\n\t\t\theight: 250px;\n\t\t}\n\n\t\t&--placeholder {\n\t\t\tbackground: var(--color-primary-light);\n\n\t\t\t::v-deep .material-design-icon {\n\t\t\t\twidth: 100%;\n\t\t\t\theight: 100%;\n\n\t\t\t\t.material-design-icon__svg {\n\t\t\t\t\tfill: var(--color-primary);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t&__details {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tmargin-top: 16px;\n\t\twidth: 350px;\n\n\t\t@media only screen and (max-width: 1200px) {\n\t\t\twidth: 250px;\n\t\t}\n\n\t\t&__first-line {\n\t\t\tdisplay: flex;\n\t\t}\n\n\t\t&__second-line {\n\t\t\tdisplay: flex;\n\t\t\tcolor: var(--color-text-lighter);\n\t\t}\n\n\t\t&__name {\n\t\t\tflex-grow: 1;\n\t\t\tmargin: 0;\n\t\t\tfont-weight: normal;\n\t\t\toverflow: hidden;\n\t\t\twhite-space: nowrap;\n\t\t\ttext-overflow: ellipsis;\n\n\t\t}\n\t}\n\n}\n'],sourceRoot:""}]);const s=r},6179:(n,t,a)=>{a.d(t,{Z:()=>s});var o=a(87537),e=a.n(o),i=a(23645),r=a.n(i)()(e());r.push([n.id,":root{--photos-navigation-height: 64px;--photos-navigation-spacing: calc((var(--photos-navigation-height) - 44px) / 2)}button.app-navigation-toggle{top:0 !important;right:calc(var(--photos-navigation-height)*-1) !important;margin:var(--photos-navigation-spacing) !important}","",{version:3,sources:["webpack://./src/components/HeaderNavigation.vue"],names:[],mappings:"AAgLA,MACC,gCAAA,CAEA,+EAAA,CAID,6BAEC,gBAAA,CACA,yDAAA,CACA,kDAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n:root {\n\t--photos-navigation-height: 64px;\n\t// header height - button size\n\t--photos-navigation-spacing: calc((var(--photos-navigation-height) - 44px) / 2);\n}\n\n// Properly position the navigation toggle button\nbutton.app-navigation-toggle {\n\t// App-navigation have a 4px margin top\n\ttop: 0 !important;\n\tright: calc(var(--photos-navigation-height) * -1) !important;\n\tmargin: var(--photos-navigation-spacing) !important;\n}\n\n'],sourceRoot:""}]);const s=r},84827:(n,t,a)=>{a.d(t,{Z:()=>s});var o=a(87537),e=a.n(o),i=a(23645),r=a.n(i)()(e());r.push([n.id,".photos-navigation[data-v-b9975c76]{position:-webkit-sticky;position:sticky;z-index:20;top:0;display:flex;align-items:center;width:100%;height:var(--photos-navigation-height);min-height:var(--photos-navigation-height);padding:0 var(--photos-navigation-height);background:var(--color-main-background)}.photos-navigation__back[data-v-b9975c76]{position:absolute;left:0;margin:var(--photos-navigation-spacing) !important}.photos-navigation__title[data-v-b9975c76]{overflow:hidden;margin:0;margin-right:calc(2*var(--photos-navigation-spacing));cursor:pointer;white-space:nowrap;text-overflow:ellipsis}.photos-navigation__loader[data-v-b9975c76]{margin-left:32px}.photos-navigation__content-right[data-v-b9975c76]{display:flex;align-items:center;justify-content:center;margin-left:auto}","",{version:3,sources:["webpack://./src/components/HeaderNavigation.vue"],names:[],mappings:"AAiMA,oCACC,uBAAA,CAAA,eAAA,CACA,UAAA,CACA,KAAA,CACA,YAAA,CACA,kBAAA,CACA,UAAA,CACA,sCAAA,CACA,0CAAA,CACA,yCAAA,CACA,uCAAA,CAEA,0CAEC,iBAAA,CACA,MAAA,CACA,kDAAA,CAGD,2CACC,eAAA,CACA,QAAA,CACA,qDAAA,CACA,cAAA,CACA,kBAAA,CACA,sBAAA,CAGD,4CACC,gBAAA,CAGD,mDACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,gBAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.photos-navigation {\n\tposition: sticky;\n\tz-index: 20;\n\ttop: 0;\n\tdisplay: flex;\n\talign-items: center;\n\twidth: 100%;\n\theight: var(--photos-navigation-height);\n\tmin-height: var(--photos-navigation-height);\n\tpadding: 0 var(--photos-navigation-height);\n\tbackground: var(--color-main-background);\n\n\t&__back {\n\t\t// Above the navigation menu\n\t\tposition: absolute;\n\t\tleft: 0;\n\t\tmargin: var(--photos-navigation-spacing) !important;\n\t}\n\n\t&__title {\n\t\toverflow: hidden;\n\t\tmargin: 0;\n\t\tmargin-right: calc(2 * var(--photos-navigation-spacing));\n\t\tcursor: pointer;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t}\n\n\t&__loader {\n\t\tmargin-left: 32px;\n\t}\n\n\t&__content-right {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\tmargin-left: auto;\n\t}\n}\n\n'],sourceRoot:""}]);const s=r},33031:(n,t,a)=>{a.d(t,{Z:()=>s});var o=a(87537),e=a.n(o),i=a(23645),r=a.n(i)()(e());r.push([n.id,".albums[data-v-3d2da984]{display:flex;flex-direction:column;height:100%}.albums__list[data-v-3d2da984]{padding:32px 48px;flex-grow:1;display:flex;flex-wrap:wrap;gap:16px;align-items:flex-start;height:calc(100% - 60px);overflow-x:scroll}@media only screen and (max-width: 1200px){.albums__list[data-v-3d2da984]{padding:32px 12px;justify-content:center}}.albums__empty[data-v-3d2da984]{display:flex;flex-direction:column;align-items:center}.albums__empty__button[data-v-3d2da984]{margin-top:32px}.empty-content-with-illustration[data-v-3d2da984] .empty-content__icon{width:200px;height:200px}.empty-content-with-illustration[data-v-3d2da984] .empty-content__icon svg{width:200px;height:200px}","",{version:3,sources:["webpack://./src/views/Albums.vue"],names:[],mappings:"AA+IA,yBACC,YAAA,CACA,qBAAA,CACA,WAAA,CAEA,+BACC,iBAAA,CACA,WAAA,CACA,YAAA,CACA,cAAA,CACA,QAAA,CACA,sBAAA,CACA,wBAAA,CACA,iBAAA,CAEA,2CAVD,+BAWE,iBAAA,CACA,sBAAA,CAAA,CAKF,gCACC,YAAA,CACA,qBAAA,CACA,kBAAA,CAEA,wCACC,eAAA,CAKH,wEACC,WAAA,CACA,YAAA,CAEA,4EACC,WAAA,CACA,YAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.albums {\n\tdisplay: flex;\n\tflex-direction: column;\n\theight: 100%;\n\n\t&__list {\n\t\tpadding: 32px 48px;\n\t\tflex-grow: 1;\n\t\tdisplay: flex;\n\t\tflex-wrap: wrap;\n\t\tgap: 16px;\n\t\talign-items: flex-start;\n\t\theight: calc(100% - 60px);\n\t\toverflow-x: scroll;\n\n\t\t@media only screen and (max-width: 1200px) {\n\t\t\tpadding: 32px 12px;\n\t\t\tjustify-content: center;\n\t\t}\n\n\t}\n\n\t&__empty {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\talign-items: center;\n\n\t\t&__button {\n\t\t\tmargin-top: 32px;\n\t\t}\n\t}\n}\n\n.empty-content-with-illustration ::v-deep .empty-content__icon {\n\twidth: 200px;\n\theight: 200px;\n\n\tsvg {\n\t\twidth: 200px;\n\t\theight: 200px;\n\t}\n}\n'],sourceRoot:""}]);const s=r},36288:(n,t,a)=>{a.d(t,{Z:()=>e});const o={name:"ImageMultipleIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const e=(0,a(51900).Z)(o,(function(){var n=this,t=n.$createElement,a=n._self._c||t;return a("span",n._b({staticClass:"material-design-icon image-multiple-icon",attrs:{"aria-hidden":!n.title,"aria-label":n.title,role:"img"},on:{click:function(t){return n.$emit("click",t)}}},"span",n.$attrs,!1),[a("svg",{staticClass:"material-design-icon__svg",attrs:{fill:n.fillColor,width:n.size,height:n.size,viewBox:"0 0 24 24"}},[a("path",{attrs:{d:"M22,16V4A2,2 0 0,0 20,2H8A2,2 0 0,0 6,4V16A2,2 0 0,0 8,18H20A2,2 0 0,0 22,16M11,12L13.03,14.71L16,11L20,16H8M2,6V20A2,2 0 0,0 4,22H18V20H4V6"}},[n.title?a("title",[n._v(n._s(n.title))]):n._e()])])])}),[],!1,null,null,null).exports},46756:(n,a,o)=>{o.d(a,{Z:()=>y});var e=o(76240),i=o(33476);const r={name:"HeaderNavigation",components:{ArrowLeft:e.default,NcButton:i.NcButton,NcLoadingIcon:i.NcLoadingIcon},inheritAttrs:!1,props:{loading:{type:Boolean,default:!1},path:{type:String,default:"/"},title:{type:String,required:!0},rootTitle:{type:String,default:t("photos","Photos")},params:{type:Object,default:null}},computed:{isRoot:function(){var n="/"===this.path;return this.toggleNavigationButton(!n),n},name:function(){return this.isRoot?this.rootTitle:this.title},parentPath:function(){var n=this.path.split("/");n.pop();var t=n.join("/");return this.isRoot||""===t.trim()?"/":n.join("/")},parentName:function(){return this.parentPath&&this.parentPath.split("/").pop()},backToText:function(){return"/"===this.parentPath?t("photos","Back to {folder}",{folder:this.rootTitle}):t("photos","Back to {folder}",{folder:this.parentName})},to:function(){var n=/^\/?(.*)/i.exec(this.parentPath)[1],t=Object.assign({},this.$route,{params:this.params||{path:n}}),a=t.name,o=t.params;return""===n?{name:a}:decodeURIComponent(this.$router.resolve({name:a,params:o}).resolved.path)}},methods:{folderUp:function(){this.$router.push(this.to)},refresh:function(){this.$emit("refresh")},toggleNavigationButton:function(n){document.querySelector("button.app-navigation-toggle").style.display=n?"none":null}}};var s=o(93379),l=o.n(s),A=o(7795),c=o.n(A),p=o(90569),m=o.n(p),u=o(3565),g=o.n(u),d=o(19216),h=o.n(d),C=o(44589),v=o.n(C),f=o(6179),b={};b.styleTagTransform=v(),b.setAttributes=g(),b.insert=m().bind(null,"head"),b.domAPI=c(),b.insertStyleElement=h();l()(f.Z,b);f.Z&&f.Z.locals&&f.Z.locals;var _=o(84827),x={};x.styleTagTransform=v(),x.setAttributes=g(),x.insert=m().bind(null,"head"),x.domAPI=c(),x.insertStyleElement=h();l()(_.Z,x);_.Z&&_.Z.locals&&_.Z.locals;const y=(0,o(51900).Z)(r,(function(){var n=this,t=n.$createElement,a=n._self._c||t;return a("div",{staticClass:"photos-navigation",class:{"photos-navigation--root":n.isRoot},attrs:{role:"toolbar"}},[n.isRoot?n._e():a("NcButton",{staticClass:"photos-navigation__back",attrs:{type:"tertiary"},on:{click:n.folderUp},scopedSlots:n._u([{key:"icon",fn:function(){return[a("ArrowLeft",{attrs:{size:20}})]},proxy:!0}],null,!1,1821202730)}),n._v(" "),a("h2",{staticClass:"photos-navigation__title",on:{click:n.refresh}},[n._v("\n\t\t"+n._s(n.name)+"\n\t")]),n._v(" "),n.$slots.default?a("div",{staticClass:"photos-navigation__content"},[n._t("default")],2):n._e(),n._v(" "),n.loading?a("NcLoadingIcon",{staticClass:"photos-navigation__loader"}):n._e(),n._v(" "),a("div",{staticClass:"photos-navigation__content-right"},[n._t("right")],2)],1)}),[],!1,null,"b9975c76",null).exports},41715:(n,a,o)=>{o.r(a),o.d(a,{default:()=>I});var e=o(33476),i=o(40502),r=o(65322),s=o(12945),l=o(20629),A=o(36288),c=o(79753);function p(n,t){var a=Object.keys(n);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(n);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(n,t).enumerable}))),a.push.apply(a,o)}return a}function m(n){for(var t=1;t - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ diff --git a/js/photos-src_mixins_AbortControllerMixin_js-src_views_Albums_vue.js.map b/js/photos-src_mixins_AbortControllerMixin_js-src_views_Albums_vue.js.map deleted file mode 100644 index 0484f698a..000000000 --- a/js/photos-src_mixins_AbortControllerMixin_js-src_views_Albums_vue.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-src_mixins_AbortControllerMixin_js-src_views_Albums_vue.js?v=89208e565dca60db6af7","mappings":";uKAsBA,SACCA,KAAM,uBAENC,KAHc,WAIb,MAAO,CACNC,gBAAiB,IAAIC,gBAEtB,EAEDC,cATc,WAUbC,KAAKH,gBAAgBI,OACrB,EAEDC,iBAbc,SAaGC,EAAMC,EAAIC,GAC1BL,KAAKH,gBAAgBI,QACrBD,KAAKH,gBAAkB,IAAIC,gBAC3BO,GACA,wECpCEC,QAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,0sCAA2sC,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,6CAA6C,MAAQ,GAAG,SAAW,8YAA8Y,eAAiB,CAAC,04DAA09D,WAAa,MAEztH,8ECJIH,QAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,qRAAsR,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,mDAAmD,MAAQ,GAAG,SAAW,qEAAqE,eAAiB,CAAC,g0CAAg5C,WAAa,MAEv5D,+ECJIH,QAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,gxBAAixB,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,mDAAmD,MAAQ,GAAG,SAAW,0SAA0S,eAAiB,CAAC,mvDAAm0D,WAAa,MAE1iG,+ECJIH,QAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,urBAAwrB,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,oCAAoC,MAAQ,GAAG,SAAW,mRAAmR,eAAiB,CAAC,4gDAA4lD,WAAa,MAEpsF,4CCaA,MCpBiH,EDoBjH,CACEd,KAAM,oBACNe,MAAO,CAAC,SACRC,MAAO,CACLC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,cACd,GCRW,WAAa,IAAIG,EAAInB,KAASoB,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOH,EAAIK,GAAG,CAACC,YAAY,2CAA2CC,MAAM,CAAC,eAAeP,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOe,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOT,EAAIU,MAAM,QAASD,EAAO,IAAI,OAAOT,EAAIW,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOP,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACK,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,iJAAiJ,CAAEP,EAAS,MAAEG,EAAG,QAAQ,CAACH,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIP,UAAUO,EAAIc,UAAU,GACxqB,IDUpB,EACA,KACA,KACA,MAI8B,0CElBhC,0BCyDA,MCzDiL,EDyDjL,CACA,wBAEA,YACA,oBACA,oBACA,+BAGA,gBAEA,OACA,SACA,aACA,YAEA,MACA,YACA,aAEA,OACA,YACA,aAEA,WACA,YACA,8BAGA,QACA,YACA,eAIA,UACA,OADA,WAEA,sBAEA,OADA,gCACA,CACA,EAEA,KAPA,WAQA,mBACA,eAEA,UACA,EAEA,WAdA,WAeA,2BACA,QACA,kBACA,kCACA,IACA,WACA,EAEA,WAvBA,WAwBA,wDACA,EAEA,WA3BA,WA4BA,4BACA,uDAEA,uDACA,EAUA,GA1CA,WA6CA,IACA,EADA,YACA,yBAGA,gCACA,+BADA,oBAMA,aACA,SAIA,yEACA,GAGA,SACA,SADA,WAEA,0BACA,EAEA,QALA,WAMA,qBACA,EAEA,uBATA,SASA,GAEA,uDACA,2BACA,wIE9JIC,EAAU,CAAC,EAEfA,EAAQC,kBAAoB,IAC5BD,EAAQE,cAAgB,IAElBF,EAAQG,OAAS,SAAc,KAAM,QAE3CH,EAAQI,OAAS,IACjBJ,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKJ,KAAW,YAAiB,0BCf9C,EAAU,CAAC,EAEf,EAAQC,kBAAoB,IAC5B,EAAQC,cAAgB,IAElB,EAAQC,OAAS,SAAc,KAAM,QAE3C,EAAQC,OAAS,IACjB,EAAQC,mBAAqB,IAEhB,IAAI,IAAS,GAKJ,KAAW,YAAiB,WCNlD,SAXgB,cACd,GLVW,WAAa,IAAIpB,EAAInB,KAASoB,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACG,YAAY,oBAAoBe,MAAM,CAAC,0BAA2BrB,EAAIsB,QAAQf,MAAM,CAAC,KAAO,YAAY,CAAGP,EAAIsB,OAAmPtB,EAAIc,KAA/OX,EAAG,WAAW,CAACG,YAAY,0BAA0BC,MAAM,CAAC,KAAO,YAAYC,GAAG,CAAC,MAAQR,EAAIuB,UAAUC,YAAYxB,EAAIyB,GAAG,CAAC,CAACC,IAAI,OAAOC,GAAG,WAAW,MAAO,CAACxB,EAAG,YAAY,CAACI,MAAM,CAAC,KAAO,MAAM,EAAEqB,OAAM,IAAO,MAAK,EAAM,cAAuB5B,EAAIY,GAAG,KAAKT,EAAG,KAAK,CAACG,YAAY,2BAA2BE,GAAG,CAAC,MAAQR,EAAI6B,UAAU,CAAC7B,EAAIY,GAAG,SAASZ,EAAIa,GAAGb,EAAIxB,MAAM,UAAUwB,EAAIY,GAAG,KAAMZ,EAAI8B,OAAc,QAAE3B,EAAG,MAAM,CAACG,YAAY,8BAA8B,CAACN,EAAI+B,GAAG,YAAY,GAAG/B,EAAIc,KAAKd,EAAIY,GAAG,KAAMZ,EAAW,QAAEG,EAAG,gBAAgB,CAACG,YAAY,8BAA8BN,EAAIc,KAAKd,EAAIY,GAAG,KAAKT,EAAG,MAAM,CAACG,YAAY,oCAAoC,CAACN,EAAI+B,GAAG,UAAU,IAAI,EAAE,GACr3B,IKYpB,EACA,KACA,WACA,MAI8B,uDCpBhC,wwBCyDA,MCzD2K,EDyD3K,CACA,kBAEA,YAGA,mBAGA,OACA,UACA,YACA,cAIA,iBACA,SACA,QACA,YAHA,IASA,MATA,WAUA,iCACA,EAKA,SAhBA,WAiBA,oHACA,EAEA,OApBA,WAqBA,mFACA,0IEpFIhB,EAAU,CAAC,EAEfA,EAAQC,kBAAoB,IAC5BD,EAAQE,cAAgB,IAElBF,EAAQG,OAAS,SAAc,KAAM,QAE3CH,EAAQI,OAAS,IACjBJ,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKJ,KAAW,YAAiB,0BCPlD,SAXgB,OACd,GCTW,WAAa,IAAIf,EAAInB,KAASoB,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAOE,EAAG,cAAc,CAACG,YAAY,cAAcC,MAAM,CAAC,GAAM,WAAaP,EAAIgC,WAAY,CAA0B,IAAxBhC,EAAIiC,MAAMC,UAAiB/B,EAAG,MAAM,CAACG,YAAY,qBAAqBC,MAAM,CAAC,IAAMP,EAAImC,SAAS,IAAMnC,EAAIoC,UAAUjC,EAAG,MAAM,CAACG,YAAY,sDAAsD,CAACH,EAAG,gBAAgB,CAACI,MAAM,CAAC,KAAO,QAAQ,GAAGP,EAAIY,GAAG,KAAKT,EAAG,MAAM,CAACG,YAAY,wBAAwB,CAACH,EAAG,MAAM,CAACG,YAAY,oCAAoC,CAACH,EAAG,KAAK,CAACG,YAAY,8BAA8B,CAACN,EAAIY,GAAG,aAAaZ,EAAIa,GAAGb,EAAIgC,UAAU,gBAAgBhC,EAAIY,GAAG,KAAKT,EAAG,MAAM,CAACG,YAAY,qCAAqC,CAACN,EAAIY,GAAG,WAAWZ,EAAIa,GAAGb,EAAIiC,MAAMI,MAAM,MAAMrC,EAAIa,GAAGb,EAAIsC,EAAE,SAAU,UAAW,uBAAwBtC,EAAIiC,MAAMM,UAAU,eAAe,GACv0B,IDWpB,EACA,KACA,WACA,MAI8B,kCEyEhC,MC5FuK,ED4FvK,CACA,cACA,YACA,aACA,cACA,wBACA,qBACA,oBACA,gCACA,kBACA,UAGA,QACA,KAGA,KAjBA,WAkBA,OACA,yBAEA,EAEA,UAIA,SAJA,WAKA,0CACA,GAGA,SACA,mBADA,YACA,cACA,8BACA,mBACA,cACA,QACA,kBAGA,EAEA,UAXA,WAYA,kBACA,mBE9HI,EAAU,CAAC,EAEf,EAAQvB,kBAAoB,IAC5B,EAAQC,cAAgB,IAElB,EAAQC,OAAS,SAAc,KAAM,QAE3C,EAAQC,OAAS,IACjB,EAAQC,mBAAqB,IAEhB,IAAI,IAAS,GAKJ,KAAW,YAAiB,WCPlD,SAXgB,OACd,GTTW,WAAa,IAAIpB,EAAInB,KAASoB,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAQD,EAAuB,oBAAEG,EAAG,iBAAiB,CAACH,EAAIY,GAAG,OAAOZ,EAAIa,GAAGb,EAAIwC,EAAE,SAAU,sBAAsB,QAAQrC,EAAG,MAAM,CAACG,YAAY,UAAU,CAACH,EAAG,mBAAmB,CAACuB,IAAI,aAAanB,MAAM,CAAC,QAAUP,EAAIyC,cAAc,MAAQzC,EAAIwC,EAAE,SAAU,UAAU,aAAaxC,EAAIwC,EAAE,SAAU,WAAWhC,GAAG,CAAC,QAAUR,EAAI0C,YAAY,CAACvC,EAAG,WAAW,CAACI,MAAM,CAAC,KAAO,UAAU,aAAaP,EAAIwC,EAAE,SAAU,wBAAwBhC,GAAG,CAAC,MAAQ,SAASC,GAAQT,EAAI2C,uBAAwB,CAAI,GAAGnB,YAAYxB,EAAIyB,GAAG,CAAC,CAACC,IAAI,OAAOC,GAAG,WAAW,MAAO,CAACxB,EAAG,QAAQ,EAAEyB,OAAM,MAAS,CAAC5B,EAAIY,GAAG,WAAWZ,EAAIa,GAAGb,EAAIwC,EAAE,SAAU,cAAc,aAAa,GAAGxC,EAAIY,GAAG,KAAMZ,EAAI4C,WAAa5C,EAAIyC,cAAetC,EAAG,MAAM,CAACG,YAAY,iBAAiB,CAACH,EAAG,iBAAiB,CAACqB,YAAYxB,EAAIyB,GAAG,CAAC,CAACC,IAAI,OAAOC,GAAG,WAAW,MAAO,CAACxB,EAAG,uBAAuB,EAAEyB,OAAM,GAAM,CAACF,IAAI,OAAOC,GAAG,WAAW,MAAO,CAAC3B,EAAIY,GAAG,aAAaZ,EAAIa,GAAGb,EAAIwC,EAAE,SAAU,2BAA2B,YAAY,EAAEZ,OAAM,IAAO,MAAK,EAAM,cAAc5B,EAAIY,GAAG,KAAKT,EAAG,WAAW,CAACG,YAAY,wBAAwBC,MAAM,CAAC,KAAO,UAAU,aAAaP,EAAIwC,EAAE,SAAU,uBAAuBhC,GAAG,CAAC,MAAQ,SAASC,GAAQT,EAAI2C,uBAAwB,CAAI,GAAGnB,YAAYxB,EAAIyB,GAAG,CAAC,CAACC,IAAI,OAAOC,GAAG,WAAW,MAAO,CAACxB,EAAG,QAAQ,EAAEyB,OAAM,IAAO,MAAK,EAAM,aAAa,CAAC5B,EAAIY,GAAG,WAAWZ,EAAIa,GAAGb,EAAIwC,EAAE,SAAU,QAAQ,aAAa,GAAKxC,EAAI4C,SAA6L5C,EAAIc,KAAvLX,EAAG,MAAM,CAACG,YAAY,gBAAgBN,EAAI6C,GAAI7C,EAAU,QAAE,SAASiC,GAAO,OAAO9B,EAAG,aAAa,CAACuB,IAAIO,EAAMa,SAASxC,YAAY,QAAQC,MAAM,CAAC,YAAY0B,EAAMa,WAAW,IAAG,GAAY9C,EAAIY,GAAG,KAAMZ,EAAyB,sBAAEG,EAAG,UAAU,CAACI,MAAM,CAAC,MAAQP,EAAIwC,EAAE,SAAU,cAAchC,GAAG,CAAC,MAAQ,SAASC,GAAQT,EAAI2C,uBAAwB,CAAK,IAAI,CAACxC,EAAG,YAAY,CAACK,GAAG,CAAC,KAAOR,EAAI+C,uBAAuB,GAAG/C,EAAIc,MAAM,EAAE,GAC31D,ISWpB,EACA,KACA,WACA,MAI8B","sources":["webpack:///photos/src/mixins/AbortControllerMixin.js","webpack:///photos/src/components/AlbumCover.vue?vue&type=style&index=0&id=7d7f11f1&lang=scss&scoped=true&","webpack:///photos/src/components/HeaderNavigation.vue?vue&type=style&index=0&lang=scss&","webpack:///photos/src/components/HeaderNavigation.vue?vue&type=style&index=1&id=b9975c76&lang=scss&scoped=true&","webpack:///photos/src/views/Albums.vue?vue&type=style&index=0&id=3d2da984&lang=scss&scoped=true&","webpack:///photos/node_modules/vue-material-design-icons/ImageMultiple.vue","webpack:///photos/node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/ImageMultiple.vue?126d","webpack:///photos/node_modules/vue-material-design-icons/ImageMultiple.vue?vue&type=template&id=21a95e74&","webpack:///photos/src/components/HeaderNavigation.vue?vue&type=template&id=b9975c76&scoped=true&","webpack:///photos/src/components/HeaderNavigation.vue","webpack:///photos/src/components/HeaderNavigation.vue?vue&type=script&lang=js&","webpack://photos/./src/components/HeaderNavigation.vue?29e2","webpack://photos/./src/components/HeaderNavigation.vue?1190","webpack://photos/./src/components/HeaderNavigation.vue?6702","webpack:///photos/src/views/Albums.vue?vue&type=template&id=3d2da984&scoped=true&","webpack:///photos/src/components/AlbumCover.vue","webpack:///photos/src/components/AlbumCover.vue?vue&type=script&lang=js&","webpack://photos/./src/components/AlbumCover.vue?af1f","webpack://photos/./src/components/AlbumCover.vue?71ef","webpack:///photos/src/components/AlbumCover.vue?vue&type=template&id=7d7f11f1&scoped=true&","webpack:///photos/src/views/Albums.vue","webpack:///photos/src/views/Albums.vue?vue&type=script&lang=js&","webpack://photos/./src/views/Albums.vue?6f5b","webpack://photos/./src/views/Albums.vue?2029"],"sourcesContent":["/**\n * @copyright Copyright (c) 2022 Louis Chemineau \n *\n * @author Louis Chemineau \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 .\n *\n */\n\nexport default {\n\tname: 'AbortControllerMixin',\n\n\tdata() {\n\t\treturn {\n\t\t\tabortController: new AbortController(),\n\t\t}\n\t},\n\n\tbeforeDestroy() {\n\t\tthis.abortController.abort()\n\t},\n\n\tbeforeRouteLeave(from, to, next) {\n\t\tthis.abortController.abort()\n\t\tthis.abortController = new AbortController()\n\t\tnext()\n\t},\n}\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".album-cover[data-v-7d7f11f1]{display:flex;flex-direction:column;padding:16px;border-radius:12px}.album-cover[data-v-7d7f11f1]:hover,.album-cover[data-v-7d7f11f1]:focus{background:var(--color-background-dark)}.album-cover__image[data-v-7d7f11f1]{width:350px;height:350px;object-fit:none;border-radius:12px}@media only screen and (max-width: 1200px){.album-cover__image[data-v-7d7f11f1]{width:250px;height:250px}}.album-cover__image--placeholder[data-v-7d7f11f1]{background:var(--color-primary-light)}.album-cover__image--placeholder[data-v-7d7f11f1] .material-design-icon{width:100%;height:100%}.album-cover__image--placeholder[data-v-7d7f11f1] .material-design-icon .material-design-icon__svg{fill:var(--color-primary)}.album-cover__details[data-v-7d7f11f1]{display:flex;flex-direction:column;margin-top:16px;width:350px}@media only screen and (max-width: 1200px){.album-cover__details[data-v-7d7f11f1]{width:250px}}.album-cover__details__first-line[data-v-7d7f11f1]{display:flex}.album-cover__details__second-line[data-v-7d7f11f1]{display:flex;color:var(--color-text-lighter)}.album-cover__details__name[data-v-7d7f11f1]{flex-grow:1;margin:0;font-weight:normal;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/AlbumCover.vue\"],\"names\":[],\"mappings\":\"AAsGA,8BACC,YAAA,CACA,qBAAA,CACA,YAAA,CACA,kBAAA,CAEA,wEACC,uCAAA,CAGD,qCACC,WAAA,CACA,YAAA,CACA,eAAA,CACA,kBAAA,CAEA,2CAND,qCAOE,WAAA,CACA,YAAA,CAAA,CAGD,kDACC,qCAAA,CAEA,yEACC,UAAA,CACA,WAAA,CAEA,oGACC,yBAAA,CAMJ,uCACC,YAAA,CACA,qBAAA,CACA,eAAA,CACA,WAAA,CAEA,2CAND,uCAOE,WAAA,CAAA,CAGD,mDACC,YAAA,CAGD,oDACC,YAAA,CACA,+BAAA,CAGD,6CACC,WAAA,CACA,QAAA,CACA,kBAAA,CACA,eAAA,CACA,kBAAA,CACA,sBAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.album-cover {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\tpadding: 16px;\\n\\tborder-radius: 12px;\\n\\n\\t&:hover, &:focus {\\n\\t\\tbackground: var(--color-background-dark);\\n\\t}\\n\\n\\t&__image {\\n\\t\\twidth: 350px;\\n\\t\\theight: 350px;\\n\\t\\tobject-fit: none;\\n\\t\\tborder-radius: 12px;\\n\\n\\t\\t@media only screen and (max-width: 1200px) {\\n\\t\\t\\twidth: 250px;\\n\\t\\t\\theight: 250px;\\n\\t\\t}\\n\\n\\t\\t&--placeholder {\\n\\t\\t\\tbackground: var(--color-primary-light);\\n\\n\\t\\t\\t::v-deep .material-design-icon {\\n\\t\\t\\t\\twidth: 100%;\\n\\t\\t\\t\\theight: 100%;\\n\\n\\t\\t\\t\\t.material-design-icon__svg {\\n\\t\\t\\t\\t\\tfill: var(--color-primary);\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t&__details {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\tmargin-top: 16px;\\n\\t\\twidth: 350px;\\n\\n\\t\\t@media only screen and (max-width: 1200px) {\\n\\t\\t\\twidth: 250px;\\n\\t\\t}\\n\\n\\t\\t&__first-line {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t}\\n\\n\\t\\t&__second-line {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tcolor: var(--color-text-lighter);\\n\\t\\t}\\n\\n\\t\\t&__name {\\n\\t\\t\\tflex-grow: 1;\\n\\t\\t\\tmargin: 0;\\n\\t\\t\\tfont-weight: normal;\\n\\t\\t\\toverflow: hidden;\\n\\t\\t\\twhite-space: nowrap;\\n\\t\\t\\ttext-overflow: ellipsis;\\n\\n\\t\\t}\\n\\t}\\n\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \":root{--photos-navigation-height: 64px;--photos-navigation-spacing: calc((var(--photos-navigation-height) - 44px) / 2)}button.app-navigation-toggle{top:0 !important;right:calc(var(--photos-navigation-height)*-1) !important;margin:var(--photos-navigation-spacing) !important}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/HeaderNavigation.vue\"],\"names\":[],\"mappings\":\"AAgLA,MACC,gCAAA,CAEA,+EAAA,CAID,6BAEC,gBAAA,CACA,yDAAA,CACA,kDAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n:root {\\n\\t--photos-navigation-height: 64px;\\n\\t// header height - button size\\n\\t--photos-navigation-spacing: calc((var(--photos-navigation-height) - 44px) / 2);\\n}\\n\\n// Properly position the navigation toggle button\\nbutton.app-navigation-toggle {\\n\\t// App-navigation have a 4px margin top\\n\\ttop: 0 !important;\\n\\tright: calc(var(--photos-navigation-height) * -1) !important;\\n\\tmargin: var(--photos-navigation-spacing) !important;\\n}\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".photos-navigation[data-v-b9975c76]{position:-webkit-sticky;position:sticky;z-index:20;top:0;display:flex;align-items:center;width:100%;height:var(--photos-navigation-height);min-height:var(--photos-navigation-height);padding:0 var(--photos-navigation-height);background:var(--color-main-background)}.photos-navigation__back[data-v-b9975c76]{position:absolute;left:0;margin:var(--photos-navigation-spacing) !important}.photos-navigation__title[data-v-b9975c76]{overflow:hidden;margin:0;margin-right:calc(2*var(--photos-navigation-spacing));cursor:pointer;white-space:nowrap;text-overflow:ellipsis}.photos-navigation__loader[data-v-b9975c76]{margin-left:32px}.photos-navigation__content-right[data-v-b9975c76]{display:flex;align-items:center;justify-content:center;margin-left:auto}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/HeaderNavigation.vue\"],\"names\":[],\"mappings\":\"AAiMA,oCACC,uBAAA,CAAA,eAAA,CACA,UAAA,CACA,KAAA,CACA,YAAA,CACA,kBAAA,CACA,UAAA,CACA,sCAAA,CACA,0CAAA,CACA,yCAAA,CACA,uCAAA,CAEA,0CAEC,iBAAA,CACA,MAAA,CACA,kDAAA,CAGD,2CACC,eAAA,CACA,QAAA,CACA,qDAAA,CACA,cAAA,CACA,kBAAA,CACA,sBAAA,CAGD,4CACC,gBAAA,CAGD,mDACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,gBAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.photos-navigation {\\n\\tposition: sticky;\\n\\tz-index: 20;\\n\\ttop: 0;\\n\\tdisplay: flex;\\n\\talign-items: center;\\n\\twidth: 100%;\\n\\theight: var(--photos-navigation-height);\\n\\tmin-height: var(--photos-navigation-height);\\n\\tpadding: 0 var(--photos-navigation-height);\\n\\tbackground: var(--color-main-background);\\n\\n\\t&__back {\\n\\t\\t// Above the navigation menu\\n\\t\\tposition: absolute;\\n\\t\\tleft: 0;\\n\\t\\tmargin: var(--photos-navigation-spacing) !important;\\n\\t}\\n\\n\\t&__title {\\n\\t\\toverflow: hidden;\\n\\t\\tmargin: 0;\\n\\t\\tmargin-right: calc(2 * var(--photos-navigation-spacing));\\n\\t\\tcursor: pointer;\\n\\t\\twhite-space: nowrap;\\n\\t\\ttext-overflow: ellipsis;\\n\\t}\\n\\n\\t&__loader {\\n\\t\\tmargin-left: 32px;\\n\\t}\\n\\n\\t&__content-right {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\tjustify-content: center;\\n\\t\\tmargin-left: auto;\\n\\t}\\n}\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".albums[data-v-3d2da984]{display:flex;flex-direction:column;height:100%}.albums__list[data-v-3d2da984]{padding:32px 48px;flex-grow:1;display:flex;flex-wrap:wrap;gap:16px;align-items:flex-start;height:calc(100% - 60px);overflow-x:scroll}@media only screen and (max-width: 1200px){.albums__list[data-v-3d2da984]{padding:32px 12px;justify-content:center}}.albums__empty[data-v-3d2da984]{display:flex;flex-direction:column;align-items:center}.albums__empty__button[data-v-3d2da984]{margin-top:32px}.empty-content-with-illustration[data-v-3d2da984] .empty-content__icon{width:200px;height:200px}.empty-content-with-illustration[data-v-3d2da984] .empty-content__icon svg{width:200px;height:200px}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/views/Albums.vue\"],\"names\":[],\"mappings\":\"AA+IA,yBACC,YAAA,CACA,qBAAA,CACA,WAAA,CAEA,+BACC,iBAAA,CACA,WAAA,CACA,YAAA,CACA,cAAA,CACA,QAAA,CACA,sBAAA,CACA,wBAAA,CACA,iBAAA,CAEA,2CAVD,+BAWE,iBAAA,CACA,sBAAA,CAAA,CAKF,gCACC,YAAA,CACA,qBAAA,CACA,kBAAA,CAEA,wCACC,eAAA,CAKH,wEACC,WAAA,CACA,YAAA,CAEA,4EACC,WAAA,CACA,YAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.albums {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\theight: 100%;\\n\\n\\t&__list {\\n\\t\\tpadding: 32px 48px;\\n\\t\\tflex-grow: 1;\\n\\t\\tdisplay: flex;\\n\\t\\tflex-wrap: wrap;\\n\\t\\tgap: 16px;\\n\\t\\talign-items: flex-start;\\n\\t\\theight: calc(100% - 60px);\\n\\t\\toverflow-x: scroll;\\n\\n\\t\\t@media only screen and (max-width: 1200px) {\\n\\t\\t\\tpadding: 32px 12px;\\n\\t\\t\\tjustify-content: center;\\n\\t\\t}\\n\\n\\t}\\n\\n\\t&__empty {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\talign-items: center;\\n\\n\\t\\t&__button {\\n\\t\\t\\tmargin-top: 32px;\\n\\t\\t}\\n\\t}\\n}\\n\\n.empty-content-with-illustration ::v-deep .empty-content__icon {\\n\\twidth: 200px;\\n\\theight: 200px;\\n\\n\\tsvg {\\n\\t\\twidth: 200px;\\n\\t\\theight: 200px;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ImageMultiple.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ImageMultiple.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ImageMultiple.vue?vue&type=template&id=21a95e74&\"\nimport script from \"./ImageMultiple.vue?vue&type=script&lang=js&\"\nexport * from \"./ImageMultiple.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon image-multiple-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M22,16V4A2,2 0 0,0 20,2H8A2,2 0 0,0 6,4V16A2,2 0 0,0 8,18H20A2,2 0 0,0 22,16M11,12L13.03,14.71L16,11L20,16H8M2,6V20A2,2 0 0,0 4,22H18V20H4V6\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"photos-navigation\",class:{'photos-navigation--root': _vm.isRoot},attrs:{\"role\":\"toolbar\"}},[(!_vm.isRoot)?_c('NcButton',{staticClass:\"photos-navigation__back\",attrs:{\"type\":\"tertiary\"},on:{\"click\":_vm.folderUp},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('ArrowLeft',{attrs:{\"size\":20}})]},proxy:true}],null,false,1821202730)}):_vm._e(),_vm._v(\" \"),_c('h2',{staticClass:\"photos-navigation__title\",on:{\"click\":_vm.refresh}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.name)+\"\\n\\t\")]),_vm._v(\" \"),(_vm.$slots.default)?_c('div',{staticClass:\"photos-navigation__content\"},[_vm._t(\"default\")],2):_vm._e(),_vm._v(\" \"),(_vm.loading)?_c('NcLoadingIcon',{staticClass:\"photos-navigation__loader\"}):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"photos-navigation__content-right\"},[_vm._t(\"right\")],2)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HeaderNavigation.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!./HeaderNavigation.vue?vue&type=script&lang=js&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./HeaderNavigation.vue?vue&type=style&index=0&lang=scss&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./HeaderNavigation.vue?vue&type=style&index=0&lang=scss&\";\n export default content && content.locals ? content.locals : undefined;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./HeaderNavigation.vue?vue&type=style&index=1&id=b9975c76&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./HeaderNavigation.vue?vue&type=style&index=1&id=b9975c76&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./HeaderNavigation.vue?vue&type=template&id=b9975c76&scoped=true&\"\nimport script from \"./HeaderNavigation.vue?vue&type=script&lang=js&\"\nexport * from \"./HeaderNavigation.vue?vue&type=script&lang=js&\"\nimport style0 from \"./HeaderNavigation.vue?vue&type=style&index=0&lang=scss&\"\nimport style1 from \"./HeaderNavigation.vue?vue&type=style&index=1&id=b9975c76&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 \"b9975c76\",\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 (_vm.errorFetchingAlbums)?_c('NcEmptyContent',[_vm._v(\"\\n\\t\"+_vm._s(_vm.t('photos', 'An error occurred'))+\"\\n\")]):_c('div',{staticClass:\"albums\"},[_c('HeaderNavigation',{key:\"navigation\",attrs:{\"loading\":_vm.loadingAlbums,\"title\":_vm.t('photos', 'Albums'),\"root-title\":_vm.t('photos', 'Albums')},on:{\"refresh\":_vm.onRefresh}},[_c('NcButton',{attrs:{\"type\":\"primary\",\"aria-label\":_vm.t('photos', 'Create a new album.')},on:{\"click\":function($event){_vm.showAlbumCreationForm = true}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Plus')]},proxy:true}])},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('photos', 'New album'))+\"\\n\\t\\t\")])],1),_vm._v(\" \"),(_vm.noAlbums && !_vm.loadingAlbums)?_c('div',{staticClass:\"albums__empty\"},[_c('NcEmptyContent',{scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('FolderMultipleImage')]},proxy:true},{key:\"desc\",fn:function(){return [_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('photos', \"There is no album yet!\"))+\"\\n\\t\\t\\t\")]},proxy:true}],null,false,3685789295)}),_vm._v(\" \"),_c('NcButton',{staticClass:\"albums__empty__button\",attrs:{\"type\":\"primary\",\"aria-label\":_vm.t('photos', 'Create a new album')},on:{\"click\":function($event){_vm.showAlbumCreationForm = true}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Plus')]},proxy:true}],null,false,1489515321)},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('photos', \"Add\"))+\"\\n\\t\\t\")])],1):(!_vm.noAlbums)?_c('div',{staticClass:\"albums__list\"},_vm._l((_vm.albums),function(album){return _c('AlbumCover',{key:album.basename,staticClass:\"album\",attrs:{\"base-name\":album.basename}})}),1):_vm._e(),_vm._v(\" \"),(_vm.showAlbumCreationForm)?_c('NcModal',{attrs:{\"title\":_vm.t('photos', 'New album')},on:{\"close\":function($event){_vm.showAlbumCreationForm = false}}},[_c('AlbumForm',{on:{\"done\":_vm.handleAlbumCreated}})],1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AlbumCover.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!./AlbumCover.vue?vue&type=script&lang=js&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./AlbumCover.vue?vue&type=style&index=0&id=7d7f11f1&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./AlbumCover.vue?vue&type=style&index=0&id=7d7f11f1&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./AlbumCover.vue?vue&type=template&id=7d7f11f1&scoped=true&\"\nimport script from \"./AlbumCover.vue?vue&type=script&lang=js&\"\nexport * from \"./AlbumCover.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AlbumCover.vue?vue&type=style&index=0&id=7d7f11f1&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 \"7d7f11f1\",\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('router-link',{staticClass:\"album-cover\",attrs:{\"to\":(\"/albums/\" + _vm.baseName)}},[(_vm.album.lastPhoto !== 0)?_c('img',{staticClass:\"album-cover__image\",attrs:{\"src\":_vm.coverUrl,\"alt\":_vm.altImg}}):_c('div',{staticClass:\"album-cover__image album-cover__image--placeholder\"},[_c('ImageMultiple',{attrs:{\"size\":128}})],1),_vm._v(\" \"),_c('div',{staticClass:\"album-cover__details\"},[_c('div',{staticClass:\"album-cover__details__first-line\"},[_c('h2',{staticClass:\"album-cover__details__name\"},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.baseName)+\"\\n\\t\\t\\t\")])]),_vm._v(\" \"),_c('div',{staticClass:\"album-cover__details__second-line\"},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.album.date)+\" ⸱ \"+_vm._s(_vm.n('photos', '%n item', '%n photos and videos', _vm.album.nbItems))+\"\\n\\t\\t\")])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Albums.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!./Albums.vue?vue&type=script&lang=js&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./Albums.vue?vue&type=style&index=0&id=3d2da984&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./Albums.vue?vue&type=style&index=0&id=3d2da984&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Albums.vue?vue&type=template&id=3d2da984&scoped=true&\"\nimport script from \"./Albums.vue?vue&type=script&lang=js&\"\nexport * from \"./Albums.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Albums.vue?vue&type=style&index=0&id=3d2da984&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 \"3d2da984\",\n null\n \n)\n\nexport default component.exports"],"names":["name","data","abortController","AbortController","beforeDestroy","this","abort","beforeRouteLeave","from","to","next","___CSS_LOADER_EXPORT___","push","module","id","emits","props","title","type","String","fillColor","default","size","Number","_vm","_h","$createElement","_c","_self","_b","staticClass","attrs","on","$event","$emit","$attrs","_v","_s","_e","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","class","isRoot","folderUp","scopedSlots","_u","key","fn","proxy","refresh","$slots","_t","baseName","album","lastPhoto","coverUrl","altImg","date","n","nbItems","t","loadingAlbums","onRefresh","showAlbumCreationForm","noAlbums","_l","basename","handleAlbumCreated"],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-src_mixins_AbortControllerMixin_js-src_views_Faces_vue.js b/js/photos-src_mixins_AbortControllerMixin_js-src_views_Faces_vue.js deleted file mode 100644 index ae60f2b77..000000000 --- a/js/photos-src_mixins_AbortControllerMixin_js-src_views_Faces_vue.js +++ /dev/null @@ -1,818 +0,0 @@ -"use strict"; -(self["webpackChunkphotos"] = self["webpackChunkphotos"] || []).push([["src_mixins_AbortControllerMixin_js-src_views_Faces_vue"],{ - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FaceCover.vue?vue&type=script&lang=js&": -/*!*******************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FaceCover.vue?vue&type=script&lang=js& ***! - \*******************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! vuex */ "./node_modules/vuex/dist/vuex.esm.js"); -/* harmony import */ var _nextcloud_router__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/router */ "./node_modules/@nextcloud/router/dist/index.js"); -/* harmony import */ var _mixins_FetchFacesMixin_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../mixins/FetchFacesMixin.js */ "./src/mixins/FetchFacesMixin.js"); -/* harmony import */ var _mixins_FaceCoverMixin_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../mixins/FaceCoverMixin.js */ "./src/mixins/FaceCoverMixin.js"); -function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } - -function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } - -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } - -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'FaceCover', - mixins: [_mixins_FetchFacesMixin_js__WEBPACK_IMPORTED_MODULE_1__["default"], _mixins_FaceCoverMixin_js__WEBPACK_IMPORTED_MODULE_2__["default"]], - props: { - baseName: { - type: String, - required: true - } - }, - computed: _objectSpread(_objectSpread({}, (0,vuex__WEBPACK_IMPORTED_MODULE_3__.mapGetters)(['files', 'faces', 'facesFiles'])), {}, { - /** - * @return {Face} - */ - face: function face() { - return this.faces[this.baseName]; - }, - - /** - * @return {string} - */ - coverUrl: function coverUrl() { - if (!this.cover) { - return ''; - } - - return (0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_0__.generateUrl)("/apps/photos/api/v1/preview/".concat(this.cover.fileid, "?x=", 512, "&y=", 512)); - }, - cover: function cover() { - return this.getFaceCover(this.face.basename); - }, - coverDimensions: function coverDimensions() { - if (!this.cover) return {}; - return this.getCoverStyle(this.face.basename); - } - }), - beforeMount: function beforeMount() { - var _this = this; - - return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() { - return regeneratorRuntime.wrap(function _callee$(_context) { - while (1) { - switch (_context.prev = _context.next) { - case 0: - _context.next = 2; - return _this.fetchFiles(); - - case 2: - case "end": - return _context.stop(); - } - } - }, _callee); - }))(); - }, - methods: { - fetchFiles: function fetchFiles() { - var _this2 = this; - - return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() { - return regeneratorRuntime.wrap(function _callee2$(_context2) { - while (1) { - switch (_context2.prev = _context2.next) { - case 0: - _context2.next = 2; - return _this2.fetchFaceContent(_this2.face.basename); - - case 2: - case "end": - return _context2.stop(); - } - } - }, _callee2); - }))(); - } - } -}); - -/***/ }), - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/Faces.vue?vue&type=script&lang=js&": -/*!**********************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/Faces.vue?vue&type=script&lang=js& ***! - \**********************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var vue_material_design_icons_AccountBoxMultipleOutline__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue-material-design-icons/AccountBoxMultipleOutline */ "./node_modules/vue-material-design-icons/AccountBoxMultipleOutline.vue"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/vue */ "./node_modules/@nextcloud/vue/dist/ncvuecomponents.js"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _mixins_FetchFacesMixin_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../mixins/FetchFacesMixin.js */ "./src/mixins/FetchFacesMixin.js"); -/* harmony import */ var _components_FaceCover_vue__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../components/FaceCover.vue */ "./src/components/FaceCover.vue"); -/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! vuex */ "./node_modules/vuex/dist/vuex.esm.js"); -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } - -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - - - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'Faces', - components: { - FaceCover: _components_FaceCover_vue__WEBPACK_IMPORTED_MODULE_3__["default"], - NcEmptyContent: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_1__.NcEmptyContent, - NcLoadingIcon: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_1__.NcLoadingIcon, - AccountBoxMultipleOutline: vue_material_design_icons_AccountBoxMultipleOutline__WEBPACK_IMPORTED_MODULE_0__["default"] - }, - mixins: [_mixins_FetchFacesMixin_js__WEBPACK_IMPORTED_MODULE_2__["default"]], - computed: _objectSpread(_objectSpread({}, (0,vuex__WEBPACK_IMPORTED_MODULE_4__.mapGetters)(['facesFiles'])), {}, { - /** - * @return {boolean} Whether the list of face is empty or not. - */ - noFaces: function noFaces() { - return Object.keys(this.faces).length === 0; - }, - orderedFaces: function orderedFaces() { - var _this = this; - - return Object.values(this.faces).sort(function (a, b) { - if (!_this.facesFiles[b.basename] || !_this.facesFiles[a.basename]) { - return 0; - } - - return _this.facesFiles[b.basename].length - _this.facesFiles[a.basename].length; - }); - } - }) -}); - -/***/ }), - -/***/ "./src/mixins/AbortControllerMixin.js": -/*!********************************************!*\ - !*** ./src/mixins/AbortControllerMixin.js ***! - \********************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/** - * @copyright Copyright (c) 2022 Louis Chemineau - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'AbortControllerMixin', - data: function data() { - return { - abortController: new AbortController() - }; - }, - beforeDestroy: function beforeDestroy() { - this.abortController.abort(); - }, - beforeRouteLeave: function beforeRouteLeave(from, to, next) { - this.abortController.abort(); - this.abortController = new AbortController(); - next(); - } -}); - -/***/ }), - -/***/ "./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!./src/components/FaceCover.vue?vue&type=style&index=0&id=acc68b4c&lang=scss&scoped=true&": -/*!*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/components/FaceCover.vue?vue&type=style&index=0&id=acc68b4c&lang=scss&scoped=true& ***! - \*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".face-cover[data-v-acc68b4c] {\n display: flex;\n flex-direction: column;\n padding: 10px;\n border-radius: var(--border-radius-large);\n}\n.face-cover__crop-container[data-v-acc68b4c] {\n overflow: hidden;\n width: 250px;\n height: 250px;\n border-radius: 250px;\n position: relative;\n background: var(--color-background-darker);\n --photos-face-width: 250px;\n}\n@media only screen and (max-width: 1020px) {\n.face-cover__crop-container[data-v-acc68b4c] {\n width: 95px;\n height: 95px;\n --photos-face-width: 95px;\n}\n}\n.face-cover[data-v-acc68b4c]:hover, .face-cover[data-v-acc68b4c]:focus {\n background: var(--color-background-hover);\n}\n.face-cover__details[data-v-acc68b4c] {\n display: flex;\n flex-direction: column;\n width: 250px;\n margin-top: 4px;\n text-align: center;\n}\n@media only screen and (max-width: 1020px) {\n.face-cover__details[data-v-acc68b4c] {\n width: 95px;\n}\n}\n.face-cover__details__first-line[data-v-acc68b4c] {\n display: flex;\n height: 2em;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.face-cover__details__second-line[data-v-acc68b4c] {\n margin-top: 6px;\n color: var(--color-text-maxcontrast);\n}\n.face-cover__details__name[data-v-acc68b4c] {\n flex-grow: 1;\n margin: 0;\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./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!./src/views/Faces.vue?vue&type=style&index=0&id=2a2a1e28&lang=scss&scoped=true&": -/*!**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/views/Faces.vue?vue&type=style&index=0&id=2a2a1e28&lang=scss&scoped=true& ***! - \**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".faces[data-v-2a2a1e28] {\n display: flex;\n flex-direction: column;\n height: calc(100vh - var(--header-height));\n padding-left: 64px;\n}\n@media only screen and (max-width: 1020px) {\n.faces[data-v-2a2a1e28] {\n padding: 0;\n}\n}\n.faces__header[data-v-2a2a1e28] {\n display: flex;\n min-height: 60px;\n align-items: center;\n}\n.faces__header button[data-v-2a2a1e28] {\n margin-right: 32px;\n}\n.faces__list[data-v-2a2a1e28] {\n padding-top: 24px;\n padding-bottom: 32px;\n flex-grow: 1;\n display: flex;\n flex-wrap: wrap;\n overflow: scroll;\n gap: 32px;\n align-content: flex-start;\n}\n.faces__empty[data-v-2a2a1e28] {\n display: flex;\n flex-direction: column;\n align-items: center;\n}\n.faces__empty__button[data-v-2a2a1e28] {\n margin-top: 32px;\n}\n.empty-content-with-illustration[data-v-2a2a1e28] .empty-content__icon {\n width: 200px;\n height: 200px;\n}\n.empty-content-with-illustration[data-v-2a2a1e28] .empty-content__icon svg {\n width: 200px;\n height: 200px;\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/FaceCover.vue?vue&type=style&index=0&id=acc68b4c&lang=scss&scoped=true&": -/*!***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/components/FaceCover.vue?vue&type=style&index=0&id=acc68b4c&lang=scss&scoped=true& ***! - \***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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_FaceCover_vue_vue_type_style_index_0_id_acc68b4c_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../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!./FaceCover.vue?vue&type=style&index=0&id=acc68b4c&lang=scss&scoped=true& */ "./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!./src/components/FaceCover.vue?vue&type=style&index=0&id=acc68b4c&lang=scss&scoped=true&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_FaceCover_vue_vue_type_style_index_0_id_acc68b4c_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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_FaceCover_vue_vue_type_style_index_0_id_acc68b4c_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_FaceCover_vue_vue_type_style_index_0_id_acc68b4c_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_FaceCover_vue_vue_type_style_index_0_id_acc68b4c_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/views/Faces.vue?vue&type=style&index=0&id=2a2a1e28&lang=scss&scoped=true&": -/*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/views/Faces.vue?vue&type=style&index=0&id=2a2a1e28&lang=scss&scoped=true& ***! - \**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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_Faces_vue_vue_type_style_index_0_id_2a2a1e28_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../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!./Faces.vue?vue&type=style&index=0&id=2a2a1e28&lang=scss&scoped=true& */ "./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!./src/views/Faces.vue?vue&type=style&index=0&id=2a2a1e28&lang=scss&scoped=true&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_Faces_vue_vue_type_style_index_0_id_2a2a1e28_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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_Faces_vue_vue_type_style_index_0_id_2a2a1e28_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_Faces_vue_vue_type_style_index_0_id_2a2a1e28_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_Faces_vue_vue_type_style_index_0_id_2a2a1e28_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./src/components/FaceCover.vue": -/*!**************************************!*\ - !*** ./src/components/FaceCover.vue ***! - \**************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _FaceCover_vue_vue_type_template_id_acc68b4c_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./FaceCover.vue?vue&type=template&id=acc68b4c&scoped=true& */ "./src/components/FaceCover.vue?vue&type=template&id=acc68b4c&scoped=true&"); -/* harmony import */ var _FaceCover_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./FaceCover.vue?vue&type=script&lang=js& */ "./src/components/FaceCover.vue?vue&type=script&lang=js&"); -/* harmony import */ var _FaceCover_vue_vue_type_style_index_0_id_acc68b4c_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./FaceCover.vue?vue&type=style&index=0&id=acc68b4c&lang=scss&scoped=true& */ "./src/components/FaceCover.vue?vue&type=style&index=0&id=acc68b4c&lang=scss&scoped=true&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( - _FaceCover_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _FaceCover_vue_vue_type_template_id_acc68b4c_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render, - _FaceCover_vue_vue_type_template_id_acc68b4c_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - "acc68b4c", - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/FaceCover.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/views/Faces.vue": -/*!*****************************!*\ - !*** ./src/views/Faces.vue ***! - \*****************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _Faces_vue_vue_type_template_id_2a2a1e28_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Faces.vue?vue&type=template&id=2a2a1e28&scoped=true& */ "./src/views/Faces.vue?vue&type=template&id=2a2a1e28&scoped=true&"); -/* harmony import */ var _Faces_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Faces.vue?vue&type=script&lang=js& */ "./src/views/Faces.vue?vue&type=script&lang=js&"); -/* harmony import */ var _Faces_vue_vue_type_style_index_0_id_2a2a1e28_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Faces.vue?vue&type=style&index=0&id=2a2a1e28&lang=scss&scoped=true& */ "./src/views/Faces.vue?vue&type=style&index=0&id=2a2a1e28&lang=scss&scoped=true&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( - _Faces_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _Faces_vue_vue_type_template_id_2a2a1e28_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render, - _Faces_vue_vue_type_template_id_2a2a1e28_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - "2a2a1e28", - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/views/Faces.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/FaceCover.vue?vue&type=script&lang=js&": -/*!***************************************************************!*\ - !*** ./src/components/FaceCover.vue?vue&type=script&lang=js& ***! - \***************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_FaceCover_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FaceCover.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FaceCover.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_FaceCover_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/views/Faces.vue?vue&type=script&lang=js&": -/*!******************************************************!*\ - !*** ./src/views/Faces.vue?vue&type=script&lang=js& ***! - \******************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Faces_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Faces.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/Faces.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Faces_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/components/FaceCover.vue?vue&type=style&index=0&id=acc68b4c&lang=scss&scoped=true&": -/*!************************************************************************************************!*\ - !*** ./src/components/FaceCover.vue?vue&type=style&index=0&id=acc68b4c&lang=scss&scoped=true& ***! - \************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_FaceCover_vue_vue_type_style_index_0_id_acc68b4c_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/style-loader/dist/cjs.js!../../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!./FaceCover.vue?vue&type=style&index=0&id=acc68b4c&lang=scss&scoped=true& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/FaceCover.vue?vue&type=style&index=0&id=acc68b4c&lang=scss&scoped=true&"); - - -/***/ }), - -/***/ "./src/views/Faces.vue?vue&type=style&index=0&id=2a2a1e28&lang=scss&scoped=true&": -/*!***************************************************************************************!*\ - !*** ./src/views/Faces.vue?vue&type=style&index=0&id=2a2a1e28&lang=scss&scoped=true& ***! - \***************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_Faces_vue_vue_type_style_index_0_id_2a2a1e28_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/style-loader/dist/cjs.js!../../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!./Faces.vue?vue&type=style&index=0&id=2a2a1e28&lang=scss&scoped=true& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/views/Faces.vue?vue&type=style&index=0&id=2a2a1e28&lang=scss&scoped=true&"); - - -/***/ }), - -/***/ "./src/components/FaceCover.vue?vue&type=template&id=acc68b4c&scoped=true&": -/*!*********************************************************************************!*\ - !*** ./src/components/FaceCover.vue?vue&type=template&id=acc68b4c&scoped=true& ***! - \*********************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_FaceCover_vue_vue_type_template_id_acc68b4c_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_FaceCover_vue_vue_type_template_id_acc68b4c_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_FaceCover_vue_vue_type_template_id_acc68b4c_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FaceCover.vue?vue&type=template&id=acc68b4c&scoped=true& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FaceCover.vue?vue&type=template&id=acc68b4c&scoped=true&"); - - -/***/ }), - -/***/ "./src/views/Faces.vue?vue&type=template&id=2a2a1e28&scoped=true&": -/*!************************************************************************!*\ - !*** ./src/views/Faces.vue?vue&type=template&id=2a2a1e28&scoped=true& ***! - \************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Faces_vue_vue_type_template_id_2a2a1e28_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Faces_vue_vue_type_template_id_2a2a1e28_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Faces_vue_vue_type_template_id_2a2a1e28_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Faces.vue?vue&type=template&id=2a2a1e28&scoped=true& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/Faces.vue?vue&type=template&id=2a2a1e28&scoped=true&"); - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FaceCover.vue?vue&type=template&id=acc68b4c&scoped=true&": -/*!************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FaceCover.vue?vue&type=template&id=acc68b4c&scoped=true& ***! - \************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c( - "router-link", - { staticClass: "face-cover", attrs: { to: "/faces/" + _vm.baseName } }, - [ - _c("div", { staticClass: "face-cover__crop-container" }, [ - _c("img", { - ref: "image", - staticClass: "face-cover__image", - style: _vm.coverDimensions, - attrs: { src: _vm.coverUrl }, - }), - ]), - _vm._v(" "), - _c("div", { staticClass: "face-cover__details" }, [ - !_vm.baseName.match(/^[0-9]+$/) - ? _c("div", { staticClass: "face-cover__details__first-line" }, [ - _c("h2", { staticClass: "face-cover__details__name" }, [ - _vm._v("\n\t\t\t\t" + _vm._s(_vm.baseName) + "\n\t\t\t"), - ]), - ]) - : _vm._e(), - _vm._v(" "), - _vm.facesFiles[_vm.baseName] - ? _c("div", { staticClass: "face-cover__details__second-line" }, [ - _vm._v( - "\n\t\t\t" + - _vm._s( - _vm.n( - "photos", - "%n photos", - "%n photos", - _vm.facesFiles[_vm.baseName].length - ) - ) + - "\n\t\t" - ), - ]) - : _vm._e(), - ]), - ] - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/Faces.vue?vue&type=template&id=2a2a1e28&scoped=true&": -/*!***************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/Faces.vue?vue&type=template&id=2a2a1e28&scoped=true& ***! - \***************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _vm.errorFetchingFaces - ? _c("NcEmptyContent", [ - _vm._v("\n\t" + _vm._s(_vm.t("photos", "An error occurred")) + "\n"), - ]) - : _c( - "div", - { staticClass: "faces" }, - [ - _vm.loadingFaces ? _c("NcLoadingIcon") : _vm._e(), - _vm._v(" "), - _vm.noFaces && !_vm.loadingFaces - ? _c( - "div", - { staticClass: "faces__empty" }, - [ - _c( - "NcEmptyContent", - { - staticClass: "empty-content-with-illustration", - scopedSlots: _vm._u( - [ - { - key: "icon", - fn: function () { - return [_c("AccountBoxMultipleOutline")] - }, - proxy: true, - }, - { - key: "desc", - fn: function () { - return [ - _vm._v( - "\n\t\t\t\t" + - _vm._s( - _vm.t( - "photos", - "This might take some time depending on the size of your photo library." - ) - ) + - "\n\t\t\t" - ), - ] - }, - proxy: true, - }, - ], - null, - false, - 3796275108 - ), - }, - [ - _vm._v(" "), - _vm._v( - "\n\t\t\t" + - _vm._s( - _vm.t( - "photos", - "Recognized people will show up here" - ) - ) + - "\n\t\t" - ), - ] - ), - ], - 1 - ) - : !_vm.noFaces - ? _c( - "div", - { staticClass: "faces__list" }, - _vm._l(_vm.orderedFaces, function (face) { - return _c("FaceCover", { - key: face.basename, - attrs: { "base-name": face.basename }, - }) - }), - 1 - ) - : _vm._e(), - ], - 1 - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }) - -}]); -//# sourceMappingURL=photos-src_mixins_AbortControllerMixin_js-src_views_Faces_vue.js.map?v=5606ac61448cbb034cd7 \ No newline at end of file diff --git a/js/photos-src_mixins_AbortControllerMixin_js-src_views_Faces_vue.js.map b/js/photos-src_mixins_AbortControllerMixin_js-src_views_Faces_vue.js.map deleted file mode 100644 index 86e587c05..000000000 --- a/js/photos-src_mixins_AbortControllerMixin_js-src_views_Faces_vue.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-src_mixins_AbortControllerMixin_js-src_views_Faces_vue.js?v=5606ac61448cbb034cd7","mappings":";;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;ACtIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;AC7FA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;ACpCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;;;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;ACvCA;;;;;;;;;;;;;;;ACAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AKAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;AChDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sources":["webpack:///photos/src/components/FaceCover.vue?vue&type=script&lang=js&","webpack:///photos/src/views/Faces.vue?vue&type=script&lang=js&","webpack:///photos/src/mixins/AbortControllerMixin.js","webpack:///photos/src/components/FaceCover.vue?vue&type=style&index=0&id=acc68b4c&lang=scss&scoped=true&","webpack:///photos/src/views/Faces.vue?vue&type=style&index=0&id=2a2a1e28&lang=scss&scoped=true&","webpack://photos/./src/components/FaceCover.vue?e980","webpack://photos/./src/views/Faces.vue?f679","webpack:///photos/src/components/FaceCover.vue","webpack:///photos/src/views/Faces.vue","webpack://photos/./src/components/FaceCover.vue?e065","webpack://photos/./src/views/Faces.vue?d1d7","webpack://photos/./src/components/FaceCover.vue?c703","webpack://photos/./src/views/Faces.vue?f0cf","webpack:///photos/src/components/FaceCover.vue?vue&type=template&id=acc68b4c&scoped=true&","webpack:///photos/src/views/Faces.vue?vue&type=template&id=2a2a1e28&scoped=true&","webpack://photos/./src/components/FaceCover.vue?14eb","webpack://photos/./src/views/Faces.vue?c831"],"sourcesContent":["function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport { mapGetters } from 'vuex';\nimport { generateUrl } from '@nextcloud/router';\nimport FetchFacesMixin from '../mixins/FetchFacesMixin.js';\nimport FaceCoverMixin from '../mixins/FaceCoverMixin.js';\nexport default {\n name: 'FaceCover',\n mixins: [FetchFacesMixin, FaceCoverMixin],\n props: {\n baseName: {\n type: String,\n required: true\n }\n },\n computed: _objectSpread(_objectSpread({}, mapGetters(['files', 'faces', 'facesFiles'])), {}, {\n /**\n * @return {Face}\n */\n face: function face() {\n return this.faces[this.baseName];\n },\n\n /**\n * @return {string}\n */\n coverUrl: function coverUrl() {\n if (!this.cover) {\n return '';\n }\n\n return generateUrl(\"/apps/photos/api/v1/preview/\".concat(this.cover.fileid, \"?x=\", 512, \"&y=\", 512));\n },\n cover: function cover() {\n return this.getFaceCover(this.face.basename);\n },\n coverDimensions: function coverDimensions() {\n if (!this.cover) return {};\n return this.getCoverStyle(this.face.basename);\n }\n }),\n beforeMount: function beforeMount() {\n var _this = this;\n\n return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {\n return regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return _this.fetchFiles();\n\n case 2:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }))();\n },\n methods: {\n fetchFiles: function fetchFiles() {\n var _this2 = this;\n\n return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() {\n return regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n _context2.next = 2;\n return _this2.fetchFaceContent(_this2.face.basename);\n\n case 2:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }))();\n }\n }\n};","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport AccountBoxMultipleOutline from 'vue-material-design-icons/AccountBoxMultipleOutline';\nimport { NcEmptyContent, NcLoadingIcon } from '@nextcloud/vue';\nimport FetchFacesMixin from '../mixins/FetchFacesMixin.js';\nimport FaceCover from '../components/FaceCover.vue';\nimport { mapGetters } from 'vuex';\nexport default {\n name: 'Faces',\n components: {\n FaceCover: FaceCover,\n NcEmptyContent: NcEmptyContent,\n NcLoadingIcon: NcLoadingIcon,\n AccountBoxMultipleOutline: AccountBoxMultipleOutline\n },\n mixins: [FetchFacesMixin],\n computed: _objectSpread(_objectSpread({}, mapGetters(['facesFiles'])), {}, {\n /**\n * @return {boolean} Whether the list of face is empty or not.\n */\n noFaces: function noFaces() {\n return Object.keys(this.faces).length === 0;\n },\n orderedFaces: function orderedFaces() {\n var _this = this;\n\n return Object.values(this.faces).sort(function (a, b) {\n if (!_this.facesFiles[b.basename] || !_this.facesFiles[a.basename]) {\n return 0;\n }\n\n return _this.facesFiles[b.basename].length - _this.facesFiles[a.basename].length;\n });\n }\n })\n};","/**\n * @copyright Copyright (c) 2022 Louis Chemineau \n *\n * @author Louis Chemineau \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 .\n *\n */\nexport default {\n name: 'AbortControllerMixin',\n data: function data() {\n return {\n abortController: new AbortController()\n };\n },\n beforeDestroy: function beforeDestroy() {\n this.abortController.abort();\n },\n beforeRouteLeave: function beforeRouteLeave(from, to, next) {\n this.abortController.abort();\n this.abortController = new AbortController();\n next();\n }\n};","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".face-cover[data-v-acc68b4c] {\\n display: flex;\\n flex-direction: column;\\n padding: 10px;\\n border-radius: var(--border-radius-large);\\n}\\n.face-cover__crop-container[data-v-acc68b4c] {\\n overflow: hidden;\\n width: 250px;\\n height: 250px;\\n border-radius: 250px;\\n position: relative;\\n background: var(--color-background-darker);\\n --photos-face-width: 250px;\\n}\\n@media only screen and (max-width: 1020px) {\\n.face-cover__crop-container[data-v-acc68b4c] {\\n width: 95px;\\n height: 95px;\\n --photos-face-width: 95px;\\n}\\n}\\n.face-cover[data-v-acc68b4c]:hover, .face-cover[data-v-acc68b4c]:focus {\\n background: var(--color-background-hover);\\n}\\n.face-cover__details[data-v-acc68b4c] {\\n display: flex;\\n flex-direction: column;\\n width: 250px;\\n margin-top: 4px;\\n text-align: center;\\n}\\n@media only screen and (max-width: 1020px) {\\n.face-cover__details[data-v-acc68b4c] {\\n width: 95px;\\n}\\n}\\n.face-cover__details__first-line[data-v-acc68b4c] {\\n display: flex;\\n height: 2em;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n}\\n.face-cover__details__second-line[data-v-acc68b4c] {\\n margin-top: 6px;\\n color: var(--color-text-maxcontrast);\\n}\\n.face-cover__details__name[data-v-acc68b4c] {\\n flex-grow: 1;\\n margin: 0;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".faces[data-v-2a2a1e28] {\\n display: flex;\\n flex-direction: column;\\n height: calc(100vh - var(--header-height));\\n padding-left: 64px;\\n}\\n@media only screen and (max-width: 1020px) {\\n.faces[data-v-2a2a1e28] {\\n padding: 0;\\n}\\n}\\n.faces__header[data-v-2a2a1e28] {\\n display: flex;\\n min-height: 60px;\\n align-items: center;\\n}\\n.faces__header button[data-v-2a2a1e28] {\\n margin-right: 32px;\\n}\\n.faces__list[data-v-2a2a1e28] {\\n padding-top: 24px;\\n padding-bottom: 32px;\\n flex-grow: 1;\\n display: flex;\\n flex-wrap: wrap;\\n overflow: scroll;\\n gap: 32px;\\n align-content: flex-start;\\n}\\n.faces__empty[data-v-2a2a1e28] {\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n}\\n.faces__empty__button[data-v-2a2a1e28] {\\n margin-top: 32px;\\n}\\n.empty-content-with-illustration[data-v-2a2a1e28] .empty-content__icon {\\n width: 200px;\\n height: 200px;\\n}\\n.empty-content-with-illustration[data-v-2a2a1e28] .empty-content__icon svg {\\n width: 200px;\\n height: 200px;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./FaceCover.vue?vue&type=style&index=0&id=acc68b4c&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./FaceCover.vue?vue&type=style&index=0&id=acc68b4c&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./Faces.vue?vue&type=style&index=0&id=2a2a1e28&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./Faces.vue?vue&type=style&index=0&id=2a2a1e28&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FaceCover.vue?vue&type=template&id=acc68b4c&scoped=true&\"\nimport script from \"./FaceCover.vue?vue&type=script&lang=js&\"\nexport * from \"./FaceCover.vue?vue&type=script&lang=js&\"\nimport style0 from \"./FaceCover.vue?vue&type=style&index=0&id=acc68b4c&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 \"acc68b4c\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/admin/Docker/apps2/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('acc68b4c')) {\n api.createRecord('acc68b4c', component.options)\n } else {\n api.reload('acc68b4c', component.options)\n }\n module.hot.accept(\"./FaceCover.vue?vue&type=template&id=acc68b4c&scoped=true&\", function () {\n api.rerender('acc68b4c', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/FaceCover.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./Faces.vue?vue&type=template&id=2a2a1e28&scoped=true&\"\nimport script from \"./Faces.vue?vue&type=script&lang=js&\"\nexport * from \"./Faces.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Faces.vue?vue&type=style&index=0&id=2a2a1e28&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 \"2a2a1e28\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/admin/Docker/apps2/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('2a2a1e28')) {\n api.createRecord('2a2a1e28', component.options)\n } else {\n api.reload('2a2a1e28', component.options)\n }\n module.hot.accept(\"./Faces.vue?vue&type=template&id=2a2a1e28&scoped=true&\", function () {\n api.rerender('2a2a1e28', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/views/Faces.vue\"\nexport default component.exports","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FaceCover.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!./FaceCover.vue?vue&type=script&lang=js&\"","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Faces.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!./Faces.vue?vue&type=script&lang=js&\"","export * from \"-!../../node_modules/style-loader/dist/cjs.js!../../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!./FaceCover.vue?vue&type=style&index=0&id=acc68b4c&lang=scss&scoped=true&\"","export * from \"-!../../node_modules/style-loader/dist/cjs.js!../../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!./Faces.vue?vue&type=style&index=0&id=2a2a1e28&lang=scss&scoped=true&\"","export * from \"-!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FaceCover.vue?vue&type=template&id=acc68b4c&scoped=true&\"","export * from \"-!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Faces.vue?vue&type=template&id=2a2a1e28&scoped=true&\"","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"router-link\",\n { staticClass: \"face-cover\", attrs: { to: \"/faces/\" + _vm.baseName } },\n [\n _c(\"div\", { staticClass: \"face-cover__crop-container\" }, [\n _c(\"img\", {\n ref: \"image\",\n staticClass: \"face-cover__image\",\n style: _vm.coverDimensions,\n attrs: { src: _vm.coverUrl },\n }),\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"face-cover__details\" }, [\n !_vm.baseName.match(/^[0-9]+$/)\n ? _c(\"div\", { staticClass: \"face-cover__details__first-line\" }, [\n _c(\"h2\", { staticClass: \"face-cover__details__name\" }, [\n _vm._v(\"\\n\\t\\t\\t\\t\" + _vm._s(_vm.baseName) + \"\\n\\t\\t\\t\"),\n ]),\n ])\n : _vm._e(),\n _vm._v(\" \"),\n _vm.facesFiles[_vm.baseName]\n ? _c(\"div\", { staticClass: \"face-cover__details__second-line\" }, [\n _vm._v(\n \"\\n\\t\\t\\t\" +\n _vm._s(\n _vm.n(\n \"photos\",\n \"%n photos\",\n \"%n photos\",\n _vm.facesFiles[_vm.baseName].length\n )\n ) +\n \"\\n\\t\\t\"\n ),\n ])\n : _vm._e(),\n ]),\n ]\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _vm.errorFetchingFaces\n ? _c(\"NcEmptyContent\", [\n _vm._v(\"\\n\\t\" + _vm._s(_vm.t(\"photos\", \"An error occurred\")) + \"\\n\"),\n ])\n : _c(\n \"div\",\n { staticClass: \"faces\" },\n [\n _vm.loadingFaces ? _c(\"NcLoadingIcon\") : _vm._e(),\n _vm._v(\" \"),\n _vm.noFaces && !_vm.loadingFaces\n ? _c(\n \"div\",\n { staticClass: \"faces__empty\" },\n [\n _c(\n \"NcEmptyContent\",\n {\n staticClass: \"empty-content-with-illustration\",\n scopedSlots: _vm._u(\n [\n {\n key: \"icon\",\n fn: function () {\n return [_c(\"AccountBoxMultipleOutline\")]\n },\n proxy: true,\n },\n {\n key: \"desc\",\n fn: function () {\n return [\n _vm._v(\n \"\\n\\t\\t\\t\\t\" +\n _vm._s(\n _vm.t(\n \"photos\",\n \"This might take some time depending on the size of your photo library.\"\n )\n ) +\n \"\\n\\t\\t\\t\"\n ),\n ]\n },\n proxy: true,\n },\n ],\n null,\n false,\n 3796275108\n ),\n },\n [\n _vm._v(\" \"),\n _vm._v(\n \"\\n\\t\\t\\t\" +\n _vm._s(\n _vm.t(\n \"photos\",\n \"Recognized people will show up here\"\n )\n ) +\n \"\\n\\t\\t\"\n ),\n ]\n ),\n ],\n 1\n )\n : !_vm.noFaces\n ? _c(\n \"div\",\n { staticClass: \"faces__list\" },\n _vm._l(_vm.orderedFaces, function (face) {\n return _c(\"FaceCover\", {\n key: face.basename,\n attrs: { \"base-name\": face.basename },\n })\n }),\n 1\n )\n : _vm._e(),\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-src_mixins_FaceCoverMixin_js-src_mixins_FetchFacesMixin_js-src_components_Loader_vue.js b/js/photos-src_mixins_FaceCoverMixin_js-src_mixins_FetchFacesMixin_js-src_components_Loader_vue.js deleted file mode 100644 index 144387844..000000000 --- a/js/photos-src_mixins_FaceCoverMixin_js-src_mixins_FetchFacesMixin_js-src_components_Loader_vue.js +++ /dev/null @@ -1,491 +0,0 @@ -"use strict"; -(self["webpackChunkphotos"] = self["webpackChunkphotos"] || []).push([["src_mixins_FaceCoverMixin_js-src_mixins_FetchFacesMixin_js-src_components_Loader_vue"],{ - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Loader.vue?vue&type=script&lang=js&": -/*!****************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Loader.vue?vue&type=script&lang=js& ***! - \****************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'Loader' -}); - -/***/ }), - -/***/ "./src/mixins/FaceCoverMixin.js": -/*!**************************************!*\ - !*** ./src/mixins/FaceCoverMixin.js ***! - \**************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! vuex */ "./node_modules/vuex/dist/vuex.esm.js"); -/* harmony import */ var he__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! he */ "./node_modules/he/he.js"); -/* harmony import */ var he__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(he__WEBPACK_IMPORTED_MODULE_0__); -/** - * @copyright Copyright (c) 2022 Marcel Klehr - * - * @author Marcel Klehr - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'FaceCoverMixin', - computed: { ...(0,vuex__WEBPACK_IMPORTED_MODULE_1__.mapGetters)(['faces', 'facesFiles', 'files']) - }, - methods: { - getFaceCover(faceName) { - return (this.facesFiles[faceName] || []).slice(0, 25).map(fileId => this.files[fileId]).map(file => ({ ...file, - faceDetections: JSON.parse(he__WEBPACK_IMPORTED_MODULE_0___default().decode(file.faceDetections)) - })) // sort larges face first - .sort((a, b) => b.faceDetections.find(d => d.title === faceName).width - a.faceDetections.find(d => d.title === faceName).width) // sort fewest face detections first - .sort((a, b) => a.faceDetections.length - b.faceDetections.length)[0]; - }, - - /** - * This will produce an inline style to apply to images - * to zoom toward the detected face - * - * @param faceName - * @return {{}|{transform: string, width: string, transformOrigin: string}} - */ - getCoverStyle(faceName) { - const cover = this.getFaceCover(faceName); - - if (!cover) { - return {}; - } - - const detections = cover.faceDetections; - const detection = detections.find(detection => detection.title === faceName); // Zoom into the picture so that the face fills the --photos-face-width box nicely - // if the face is larger than the image, we don't zoom out (reason for the Math.max) - - const zoom = Math.max(1, 1 / detection.width * 0.4); - const horizontalCenterOfFace = (detection.x + detection.width / 2) * 100; - const verticalCenterOfFace = (detection.y + detection.height / 2) * 100; - return { - // We assume that the image is inside a div with width: var(--photos-face-width) - width: '100%', - // we translate the image so that the center of the detected face is in the center of the --photos-face-width box - // and add the zoom - transform: `translate(calc( var(--photos-face-width)/2 - ${horizontalCenterOfFace}% ), calc( var(--photos-face-width)/2 - ${verticalCenterOfFace}% )) scale(${zoom})`, - // this is necessary for the zoom to zoom toward the center of the face - transformOrigin: `${horizontalCenterOfFace}% ${verticalCenterOfFace}%` - }; - } - - } -}); - -/***/ }), - -/***/ "./src/mixins/FetchFacesMixin.js": -/*!***************************************!*\ - !*** ./src/mixins/FetchFacesMixin.js ***! - \***************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! vuex */ "./node_modules/vuex/dist/vuex.esm.js"); -/* harmony import */ var _nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/dialogs */ "./node_modules/@nextcloud/dialogs/dist/index.es.js"); -/* harmony import */ var _nextcloud_auth__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/auth */ "./node_modules/@nextcloud/auth/dist/index.esm.js"); -/* harmony import */ var _services_DavClient_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../services/DavClient.js */ "./src/services/DavClient.js"); -/* harmony import */ var _services_logger_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../services/logger.js */ "./src/services/logger.js"); -/* harmony import */ var _services_DavRequest__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../services/DavRequest */ "./src/services/DavRequest.js"); -/* harmony import */ var _utils_fileUtils__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../utils/fileUtils */ "./src/utils/fileUtils.js"); -/* harmony import */ var _AbortControllerMixin__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./AbortControllerMixin */ "./src/mixins/AbortControllerMixin.js"); -/** - * @copyright Copyright (c) 2022 Louis Chemineau - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ - - - - - - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'FetchFacesMixin', - - data() { - return { - errorFetchingFaces: null, - loadingFaces: false, - errorFetchingFiles: null, - loadingFiles: false - }; - }, - - mixins: [_AbortControllerMixin__WEBPACK_IMPORTED_MODULE_6__["default"]], - - async beforeMount() { - this.fetchFaces(); - }, - - computed: { ...(0,vuex__WEBPACK_IMPORTED_MODULE_7__.mapGetters)(['faces']) - }, - methods: { ...(0,vuex__WEBPACK_IMPORTED_MODULE_7__.mapActions)(['appendFiles']), - - async fetchFaces() { - if (this.loadingFaces) { - return; - } - - if (Object.keys(this.faces).length) { - return; - } - - try { - this.loadingFaces = true; - this.errorFetchingFaces = null; - const faces = await _services_DavClient_js__WEBPACK_IMPORTED_MODULE_2__["default"].getDirectoryContents(`/recognize/${(0,_nextcloud_auth__WEBPACK_IMPORTED_MODULE_1__.getCurrentUser)()?.uid}/faces/`, { - signal: this.abortController.signal - }); - this.$store.dispatch('addFaces', { - faces - }); - _services_logger_js__WEBPACK_IMPORTED_MODULE_3__["default"].debug(`[FetchFacesMixin] Fetched ${faces.length} new faces: `, faces); - } catch (error) { - if (error.response && error.response.status) { - if (error.response.status === 404) { - this.errorFetchingFaces = 404; - } else { - this.errorFetchingFaces = error; - } - } - - _services_logger_js__WEBPACK_IMPORTED_MODULE_3__["default"].error(t('photos', 'Failed to fetch faces list.'), error); - (0,_nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_0__.showError)(t('photos', 'Failed to fetch faces list.')); - } finally { - this.loadingFaces = false; - } - }, - - async fetchFaceContent(faceName, force) { - if (this.loadingFiles) { - return; - } - - if (!force && this.facesFiles[faceName] && this.facesFiles[faceName].length) { - return; - } - - try { - this.errorFetchingFiles = null; - this.loadingFiles = true; - let { - data: fetchedFiles - } = await _services_DavClient_js__WEBPACK_IMPORTED_MODULE_2__["default"].getDirectoryContents(`/recognize/${(0,_nextcloud_auth__WEBPACK_IMPORTED_MODULE_1__.getCurrentUser)()?.uid}/faces/${faceName}`, { - data: _services_DavRequest__WEBPACK_IMPORTED_MODULE_4__["default"], - details: true, - signal: this.abortController.signal - }); - fetchedFiles = fetchedFiles.map(file => (0,_utils_fileUtils__WEBPACK_IMPORTED_MODULE_5__.genFileInfo)(file)).map(file => ({ ...file, - filename: file.realpath.replace(`/${(0,_nextcloud_auth__WEBPACK_IMPORTED_MODULE_1__.getCurrentUser)().uid}/files`, '') - })); - const fileIds = fetchedFiles.map(file => '' + file.fileid); - this.appendFiles(fetchedFiles); - - if (fetchedFiles.length > 0) { - await this.$store.commit('addFilesToFace', { - faceName, - fileIdsToAdd: fileIds - }); - } - - _services_logger_js__WEBPACK_IMPORTED_MODULE_3__["default"].debug(`[FetchFacesMixin] Fetched ${fileIds.length} new files: `, fileIds); - } catch (error) { - if (error.response && error.response.status) { - if (error.response.status === 404) { - this.errorFetchingFiles = 404; - } else { - this.errorFetchingFiles = error; - } - } // cancelled request, moving on... - - - _services_logger_js__WEBPACK_IMPORTED_MODULE_3__["default"].error('Error fetching face files', error); - } finally { - this.loadingFiles = false; - } - } - - } -}); - -/***/ }), - -/***/ "./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!./src/components/Loader.vue?vue&type=style&index=0&lang=scss&": -/*!****************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/components/Loader.vue?vue&type=style&index=0&lang=scss& ***! - \****************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".loader {\n display: grid;\n height: 60px;\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/Loader.vue?vue&type=style&index=0&lang=scss&": -/*!********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/components/Loader.vue?vue&type=style&index=0&lang=scss& ***! - \********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../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& */ "./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!./src/components/Loader.vue?vue&type=style&index=0&lang=scss&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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___WEBPACK_IMPORTED_MODULE_6__["default"] && _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___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./src/components/Loader.vue": -/*!***********************************!*\ - !*** ./src/components/Loader.vue ***! - \***********************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _Loader_vue_vue_type_template_id_04a0d67a___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Loader.vue?vue&type=template&id=04a0d67a& */ "./src/components/Loader.vue?vue&type=template&id=04a0d67a&"); -/* harmony import */ var _Loader_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Loader.vue?vue&type=script&lang=js& */ "./src/components/Loader.vue?vue&type=script&lang=js&"); -/* harmony import */ var _Loader_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Loader.vue?vue&type=style&index=0&lang=scss& */ "./src/components/Loader.vue?vue&type=style&index=0&lang=scss&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( - _Loader_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _Loader_vue_vue_type_template_id_04a0d67a___WEBPACK_IMPORTED_MODULE_0__.render, - _Loader_vue_vue_type_template_id_04a0d67a___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - null, - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/Loader.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/Loader.vue?vue&type=script&lang=js&": -/*!************************************************************!*\ - !*** ./src/components/Loader.vue?vue&type=script&lang=js& ***! - \************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Loader_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Loader.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Loader_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/components/Loader.vue?vue&type=style&index=0&lang=scss&": -/*!*********************************************************************!*\ - !*** ./src/components/Loader.vue?vue&type=style&index=0&lang=scss& ***! - \*********************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/style-loader/dist/cjs.js!../../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& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/Loader.vue?vue&type=style&index=0&lang=scss&"); - - -/***/ }), - -/***/ "./src/components/Loader.vue?vue&type=template&id=04a0d67a&": -/*!******************************************************************!*\ - !*** ./src/components/Loader.vue?vue&type=template&id=04a0d67a& ***! - \******************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Loader_vue_vue_type_template_id_04a0d67a___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Loader_vue_vue_type_template_id_04a0d67a___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Loader_vue_vue_type_template_id_04a0d67a___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=template&id=04a0d67a& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Loader.vue?vue&type=template&id=04a0d67a&"); - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Loader.vue?vue&type=template&id=04a0d67a&": -/*!*********************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Loader.vue?vue&type=template&id=04a0d67a& ***! - \*********************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -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 - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }) - -}]); -//# sourceMappingURL=photos-src_mixins_FaceCoverMixin_js-src_mixins_FetchFacesMixin_js-src_components_Loader_vue.js.map?v=aa0718fb997b48f22742 \ No newline at end of file diff --git a/js/photos-src_mixins_FaceCoverMixin_js-src_mixins_FetchFacesMixin_js-src_components_Loader_vue.js.map b/js/photos-src_mixins_FaceCoverMixin_js-src_mixins_FetchFacesMixin_js-src_components_Loader_vue.js.map deleted file mode 100644 index dfeee8afb..000000000 --- a/js/photos-src_mixins_FaceCoverMixin_js-src_mixins_FetchFacesMixin_js-src_components_Loader_vue.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-src_mixins_FaceCoverMixin_js-src_mixins_FetchFacesMixin_js-src_components_Loader_vue.js?v=aa0718fb997b48f22742","mappings":";;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;AChCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;ACrEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;ACxIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;ACvCA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sources":["webpack:///photos/src/components/Loader.vue?vue&type=script&lang=js&","webpack:///photos/src/mixins/FaceCoverMixin.js","webpack:///photos/src/mixins/FetchFacesMixin.js","webpack:///photos/src/components/Loader.vue?vue&type=style&index=0&lang=scss&","webpack://photos/./src/components/Loader.vue?eb1b","webpack:///photos/src/components/Loader.vue","webpack://photos/./src/components/Loader.vue?5453","webpack:///photos/src/components/Loader.vue?vue&type=template&id=04a0d67a&"],"sourcesContent":["//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nexport default {\n name: 'Loader'\n};","/**\n * @copyright Copyright (c) 2022 Marcel Klehr \n *\n * @author Marcel Klehr \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 .\n *\n */\nimport { mapGetters } from 'vuex';\nimport he from 'he';\nexport default {\n name: 'FaceCoverMixin',\n computed: { ...mapGetters(['faces', 'facesFiles', 'files'])\n },\n methods: {\n getFaceCover(faceName) {\n return (this.facesFiles[faceName] || []).slice(0, 25).map(fileId => this.files[fileId]).map(file => ({ ...file,\n faceDetections: JSON.parse(he.decode(file.faceDetections))\n })) // sort larges face first\n .sort((a, b) => b.faceDetections.find(d => d.title === faceName).width - a.faceDetections.find(d => d.title === faceName).width) // sort fewest face detections first\n .sort((a, b) => a.faceDetections.length - b.faceDetections.length)[0];\n },\n\n /**\n * This will produce an inline style to apply to images\n * to zoom toward the detected face\n *\n * @param faceName\n * @return {{}|{transform: string, width: string, transformOrigin: string}}\n */\n getCoverStyle(faceName) {\n const cover = this.getFaceCover(faceName);\n\n if (!cover) {\n return {};\n }\n\n const detections = cover.faceDetections;\n const detection = detections.find(detection => detection.title === faceName); // Zoom into the picture so that the face fills the --photos-face-width box nicely\n // if the face is larger than the image, we don't zoom out (reason for the Math.max)\n\n const zoom = Math.max(1, 1 / detection.width * 0.4);\n const horizontalCenterOfFace = (detection.x + detection.width / 2) * 100;\n const verticalCenterOfFace = (detection.y + detection.height / 2) * 100;\n return {\n // We assume that the image is inside a div with width: var(--photos-face-width)\n width: '100%',\n // we translate the image so that the center of the detected face is in the center of the --photos-face-width box\n // and add the zoom\n transform: `translate(calc( var(--photos-face-width)/2 - ${horizontalCenterOfFace}% ), calc( var(--photos-face-width)/2 - ${verticalCenterOfFace}% )) scale(${zoom})`,\n // this is necessary for the zoom to zoom toward the center of the face\n transformOrigin: `${horizontalCenterOfFace}% ${verticalCenterOfFace}%`\n };\n }\n\n }\n};","/**\n * @copyright Copyright (c) 2022 Louis Chemineau \n *\n * @author Louis Chemineau \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 .\n *\n */\nimport { mapActions, mapGetters } from 'vuex';\nimport { showError } from '@nextcloud/dialogs';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport client from '../services/DavClient.js';\nimport logger from '../services/logger.js';\nimport DavRequest from '../services/DavRequest';\nimport { genFileInfo } from '../utils/fileUtils';\nimport AbortControllerMixin from './AbortControllerMixin';\nexport default {\n name: 'FetchFacesMixin',\n\n data() {\n return {\n errorFetchingFaces: null,\n loadingFaces: false,\n errorFetchingFiles: null,\n loadingFiles: false\n };\n },\n\n mixins: [AbortControllerMixin],\n\n async beforeMount() {\n this.fetchFaces();\n },\n\n computed: { ...mapGetters(['faces'])\n },\n methods: { ...mapActions(['appendFiles']),\n\n async fetchFaces() {\n if (this.loadingFaces) {\n return;\n }\n\n if (Object.keys(this.faces).length) {\n return;\n }\n\n try {\n this.loadingFaces = true;\n this.errorFetchingFaces = null;\n const faces = await client.getDirectoryContents(`/recognize/${getCurrentUser()?.uid}/faces/`, {\n signal: this.abortController.signal\n });\n this.$store.dispatch('addFaces', {\n faces\n });\n logger.debug(`[FetchFacesMixin] Fetched ${faces.length} new faces: `, faces);\n } catch (error) {\n if (error.response && error.response.status) {\n if (error.response.status === 404) {\n this.errorFetchingFaces = 404;\n } else {\n this.errorFetchingFaces = error;\n }\n }\n\n logger.error(t('photos', 'Failed to fetch faces list.'), error);\n showError(t('photos', 'Failed to fetch faces list.'));\n } finally {\n this.loadingFaces = false;\n }\n },\n\n async fetchFaceContent(faceName, force) {\n if (this.loadingFiles) {\n return;\n }\n\n if (!force && this.facesFiles[faceName] && this.facesFiles[faceName].length) {\n return;\n }\n\n try {\n this.errorFetchingFiles = null;\n this.loadingFiles = true;\n let {\n data: fetchedFiles\n } = await client.getDirectoryContents(`/recognize/${getCurrentUser()?.uid}/faces/${faceName}`, {\n data: DavRequest,\n details: true,\n signal: this.abortController.signal\n });\n fetchedFiles = fetchedFiles.map(file => genFileInfo(file)).map(file => ({ ...file,\n filename: file.realpath.replace(`/${getCurrentUser().uid}/files`, '')\n }));\n const fileIds = fetchedFiles.map(file => '' + file.fileid);\n this.appendFiles(fetchedFiles);\n\n if (fetchedFiles.length > 0) {\n await this.$store.commit('addFilesToFace', {\n faceName,\n fileIdsToAdd: fileIds\n });\n }\n\n logger.debug(`[FetchFacesMixin] Fetched ${fileIds.length} new files: `, fileIds);\n } catch (error) {\n if (error.response && error.response.status) {\n if (error.response.status === 404) {\n this.errorFetchingFiles = 404;\n } else {\n this.errorFetchingFiles = error;\n }\n } // cancelled request, moving on...\n\n\n logger.error('Error fetching face files', error);\n } finally {\n this.loadingFiles = false;\n }\n }\n\n }\n};","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".loader {\\n display: grid;\\n height: 60px;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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 \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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 export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Loader.vue?vue&type=template&id=04a0d67a&\"\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\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/louis/workspace/nextcloud/apps/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('04a0d67a')) {\n api.createRecord('04a0d67a', component.options)\n } else {\n api.reload('04a0d67a', component.options)\n }\n module.hot.accept(\"./Loader.vue?vue&type=template&id=04a0d67a&\", function () {\n api.rerender('04a0d67a', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/Loader.vue\"\nexport default component.exports","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&\"","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { staticClass: \"loader\" },\n [\n _vm._t(\"icon\", function () {\n return [_c(\"span\", { staticClass: \"icon-loading\" })]\n }),\n ],\n 2\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-src_mixins_FaceCoverMixin_js-src_mixins_FetchFacesMixin_js.js b/js/photos-src_mixins_FaceCoverMixin_js-src_mixins_FetchFacesMixin_js.js deleted file mode 100644 index ce57f289f..000000000 --- a/js/photos-src_mixins_FaceCoverMixin_js-src_mixins_FetchFacesMixin_js.js +++ /dev/null @@ -1,385 +0,0 @@ -"use strict"; -(self["webpackChunkphotos"] = self["webpackChunkphotos"] || []).push([["src_mixins_FaceCoverMixin_js-src_mixins_FetchFacesMixin_js"],{ - -/***/ "./src/mixins/FaceCoverMixin.js": -/*!**************************************!*\ - !*** ./src/mixins/FaceCoverMixin.js ***! - \**************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! vuex */ "./node_modules/vuex/dist/vuex.esm.js"); -/* harmony import */ var he__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! he */ "./node_modules/he/he.js"); -/* harmony import */ var he__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(he__WEBPACK_IMPORTED_MODULE_0__); -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } - -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -/** - * @copyright Copyright (c) 2022 Marcel Klehr - * - * @author Marcel Klehr - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'FaceCoverMixin', - computed: _objectSpread({}, (0,vuex__WEBPACK_IMPORTED_MODULE_1__.mapGetters)(['faces', 'facesFiles', 'files'])), - methods: { - getFaceCover: function getFaceCover(faceName) { - var _this = this; - - // Give high scores for faces that intersect with the edge of the picture (with a margin of half the face size) - var scoreFacePosition = function scoreFacePosition(faceDetection) { - return Math.max(0, -1 * (faceDetection.x - faceDetection.width * 0.5)) + Math.max(0, -1 * (faceDetection.y - faceDetection.height * 0.5)) + Math.max(0, -1 * (1 - (faceDetection.x + faceDetection.width) - faceDetection.width * 0.5)) + Math.max(0, -1 * (1 - (faceDetection.y + faceDetection.height) - faceDetection.height * 0.5)); - }; - - return (this.facesFiles[faceName] || []).slice(0, 25).map(function (fileId) { - return _this.files[fileId]; - }).map(function (file) { - return _objectSpread(_objectSpread({}, file), {}, { - faceDetections: JSON.parse(he__WEBPACK_IMPORTED_MODULE_0___default().decode(file.faceDetections)) - }); - }) // sort larges face first - .sort(function (a, b) { - return b.faceDetections.find(function (d) { - return d.title === faceName; - }).width - a.faceDetections.find(function (d) { - return d.title === faceName; - }).width; - }) // sort fewest face detections first - .sort(function (a, b) { - return a.faceDetections.length - b.faceDetections.length; - }) // Sort faces that are at the edge last - .sort(function (a, b) { - return scoreFacePosition(a.faceDetections.find(function (d) { - return d.title === faceName; - })) - scoreFacePosition(b.faceDetections.find(function (d) { - return d.title === faceName; - })); - })[0]; - }, - - /** - * This will produce an inline style to apply to images - * to zoom toward the detected face - * - * @param faceName - * @return {{}|{transform: string, width: string, transformOrigin: string}} - */ - getCoverStyle: function getCoverStyle(faceName) { - var cover = this.getFaceCover(faceName); - - if (!cover) { - return {}; - } - - var detections = cover.faceDetections; - var detection = detections.find(function (detection) { - return detection.title === faceName; - }); // Zoom into the picture so that the face fills the --photos-face-width box nicely - // if the face is larger than the image, we don't zoom out (reason for the Math.max) - - var zoom = Math.max(1, 1 / detection.width * 0.4); - var horizontalCenterOfFace = (detection.x + detection.width / 2) * 100; - var verticalCenterOfFace = (detection.y + detection.height / 2) * 100; - return { - // We assume that the image is inside a div with width: var(--photos-face-width) - width: '100%', - // we translate the image so that the center of the detected face is in the center of the --photos-face-width box - // and add the zoom - transform: "translate(calc( var(--photos-face-width)/2 - ".concat(horizontalCenterOfFace, "% ), calc( var(--photos-face-width)/2 - ").concat(verticalCenterOfFace, "% )) scale(").concat(zoom, ")"), - // this is necessary for the zoom to zoom toward the center of the face - transformOrigin: "".concat(horizontalCenterOfFace, "% ").concat(verticalCenterOfFace, "%") - }; - } - } -}); - -/***/ }), - -/***/ "./src/mixins/FetchFacesMixin.js": -/*!***************************************!*\ - !*** ./src/mixins/FetchFacesMixin.js ***! - \***************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! vuex */ "./node_modules/vuex/dist/vuex.esm.js"); -/* harmony import */ var _nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/dialogs */ "./node_modules/@nextcloud/dialogs/dist/index.es.js"); -/* harmony import */ var _nextcloud_auth__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/auth */ "./node_modules/@nextcloud/auth/dist/index.esm.js"); -/* harmony import */ var _services_DavClient_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../services/DavClient.js */ "./src/services/DavClient.js"); -/* harmony import */ var _services_logger_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../services/logger.js */ "./src/services/logger.js"); -/* harmony import */ var _services_DavRequest__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../services/DavRequest */ "./src/services/DavRequest.js"); -/* harmony import */ var _utils_fileUtils__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../utils/fileUtils */ "./src/utils/fileUtils.js"); -/* harmony import */ var _AbortControllerMixin__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./AbortControllerMixin */ "./src/mixins/AbortControllerMixin.js"); -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } - -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } - -function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } - -/** - * @copyright Copyright (c) 2022 Louis Chemineau - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ - - - - - - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'FetchFacesMixin', - data: function data() { - return { - errorFetchingFaces: null, - loadingFaces: false, - errorFetchingFiles: null, - loadingFiles: false - }; - }, - mixins: [_AbortControllerMixin__WEBPACK_IMPORTED_MODULE_6__["default"]], - beforeMount: function beforeMount() { - var _this = this; - - return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() { - return regeneratorRuntime.wrap(function _callee$(_context) { - while (1) { - switch (_context.prev = _context.next) { - case 0: - _this.fetchFaces(); - - case 1: - case "end": - return _context.stop(); - } - } - }, _callee); - }))(); - }, - computed: _objectSpread({}, (0,vuex__WEBPACK_IMPORTED_MODULE_7__.mapGetters)(['faces'])), - methods: _objectSpread(_objectSpread({}, (0,vuex__WEBPACK_IMPORTED_MODULE_7__.mapActions)(['appendFiles'])), {}, { - fetchFaces: function fetchFaces() { - var _this2 = this; - - return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() { - var _getCurrentUser, faces; - - return regeneratorRuntime.wrap(function _callee2$(_context2) { - while (1) { - switch (_context2.prev = _context2.next) { - case 0: - if (!_this2.loadingFaces) { - _context2.next = 2; - break; - } - - return _context2.abrupt("return"); - - case 2: - if (!Object.keys(_this2.faces).length) { - _context2.next = 4; - break; - } - - return _context2.abrupt("return"); - - case 4: - _context2.prev = 4; - _this2.loadingFaces = true; - _this2.errorFetchingFaces = null; - _context2.next = 9; - return _services_DavClient_js__WEBPACK_IMPORTED_MODULE_2__["default"].getDirectoryContents("/recognize/".concat((_getCurrentUser = (0,_nextcloud_auth__WEBPACK_IMPORTED_MODULE_1__.getCurrentUser)()) === null || _getCurrentUser === void 0 ? void 0 : _getCurrentUser.uid, "/faces/"), { - signal: _this2.abortController.signal - }); - - case 9: - faces = _context2.sent; - - _this2.$store.dispatch('addFaces', { - faces: faces - }); - - _services_logger_js__WEBPACK_IMPORTED_MODULE_3__["default"].debug("[FetchFacesMixin] Fetched ".concat(faces.length, " new faces: "), faces); - _context2.next = 19; - break; - - case 14: - _context2.prev = 14; - _context2.t0 = _context2["catch"](4); - - if (_context2.t0.response && _context2.t0.response.status) { - if (_context2.t0.response.status === 404) { - _this2.errorFetchingFaces = 404; - } else { - _this2.errorFetchingFaces = _context2.t0; - } - } - - _services_logger_js__WEBPACK_IMPORTED_MODULE_3__["default"].error(t('photos', 'Failed to fetch faces list.'), _context2.t0); - (0,_nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_0__.showError)(t('photos', 'Failed to fetch faces list.')); - - case 19: - _context2.prev = 19; - _this2.loadingFaces = false; - return _context2.finish(19); - - case 22: - case "end": - return _context2.stop(); - } - } - }, _callee2, null, [[4, 14, 19, 22]]); - }))(); - }, - fetchFaceContent: function fetchFaceContent(faceName, force) { - var _this3 = this; - - return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee3() { - var _getCurrentUser2, _yield$client$getDire, fetchedFiles, fileIds; - - return regeneratorRuntime.wrap(function _callee3$(_context3) { - while (1) { - switch (_context3.prev = _context3.next) { - case 0: - if (!_this3.loadingFiles) { - _context3.next = 2; - break; - } - - return _context3.abrupt("return"); - - case 2: - if (!(!force && _this3.facesFiles[faceName] && _this3.facesFiles[faceName].length)) { - _context3.next = 4; - break; - } - - return _context3.abrupt("return"); - - case 4: - _context3.prev = 4; - _this3.errorFetchingFiles = null; - _this3.loadingFiles = true; - _context3.next = 9; - return _services_DavClient_js__WEBPACK_IMPORTED_MODULE_2__["default"].getDirectoryContents("/recognize/".concat((_getCurrentUser2 = (0,_nextcloud_auth__WEBPACK_IMPORTED_MODULE_1__.getCurrentUser)()) === null || _getCurrentUser2 === void 0 ? void 0 : _getCurrentUser2.uid, "/faces/").concat(faceName), { - data: _services_DavRequest__WEBPACK_IMPORTED_MODULE_4__["default"], - details: true, - signal: _this3.abortController.signal - }); - - case 9: - _yield$client$getDire = _context3.sent; - fetchedFiles = _yield$client$getDire.data; - fetchedFiles = fetchedFiles.map(function (file) { - return (0,_utils_fileUtils__WEBPACK_IMPORTED_MODULE_5__.genFileInfo)(file); - }).map(function (file) { - return _objectSpread(_objectSpread({}, file), {}, { - filename: file.realpath.replace("/".concat((0,_nextcloud_auth__WEBPACK_IMPORTED_MODULE_1__.getCurrentUser)().uid, "/files"), '') - }); - }); - fileIds = fetchedFiles.map(function (file) { - return '' + file.fileid; - }); - - _this3.appendFiles(fetchedFiles); - - if (!(fetchedFiles.length > 0)) { - _context3.next = 17; - break; - } - - _context3.next = 17; - return _this3.$store.commit('addFilesToFace', { - faceName: faceName, - fileIdsToAdd: fileIds - }); - - case 17: - _services_logger_js__WEBPACK_IMPORTED_MODULE_3__["default"].debug("[FetchFacesMixin] Fetched ".concat(fileIds.length, " new files: "), fileIds); - _context3.next = 24; - break; - - case 20: - _context3.prev = 20; - _context3.t0 = _context3["catch"](4); - - if (_context3.t0.response && _context3.t0.response.status) { - if (_context3.t0.response.status === 404) { - _this3.errorFetchingFiles = 404; - } else { - _this3.errorFetchingFiles = _context3.t0; - } - } // cancelled request, moving on... - - - _services_logger_js__WEBPACK_IMPORTED_MODULE_3__["default"].error('Error fetching face files', _context3.t0); - - case 24: - _context3.prev = 24; - _this3.loadingFiles = false; - return _context3.finish(24); - - case 27: - case "end": - return _context3.stop(); - } - } - }, _callee3, null, [[4, 20, 24, 27]]); - }))(); - } - }) -}); - -/***/ }) - -}]); -//# sourceMappingURL=photos-src_mixins_FaceCoverMixin_js-src_mixins_FetchFacesMixin_js.js.map?v=32ecf436be4947895a5d \ No newline at end of file diff --git a/js/photos-src_mixins_FaceCoverMixin_js-src_mixins_FetchFacesMixin_js.js.map b/js/photos-src_mixins_FaceCoverMixin_js-src_mixins_FetchFacesMixin_js.js.map deleted file mode 100644 index f87c19489..000000000 --- a/js/photos-src_mixins_FaceCoverMixin_js-src_mixins_FetchFacesMixin_js.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-src_mixins_FaceCoverMixin_js-src_mixins_FetchFacesMixin_js.js?v=32ecf436be4947895a5d","mappings":";;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;ACrGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sources":["webpack:///photos/src/mixins/FaceCoverMixin.js","webpack:///photos/src/mixins/FetchFacesMixin.js"],"sourcesContent":["function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n/**\n * @copyright Copyright (c) 2022 Marcel Klehr \n *\n * @author Marcel Klehr \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 .\n *\n */\nimport { mapGetters } from 'vuex';\nimport he from 'he';\nexport default {\n name: 'FaceCoverMixin',\n computed: _objectSpread({}, mapGetters(['faces', 'facesFiles', 'files'])),\n methods: {\n getFaceCover: function getFaceCover(faceName) {\n var _this = this;\n\n // Give high scores for faces that intersect with the edge of the picture (with a margin of half the face size)\n var scoreFacePosition = function scoreFacePosition(faceDetection) {\n return Math.max(0, -1 * (faceDetection.x - faceDetection.width * 0.5)) + Math.max(0, -1 * (faceDetection.y - faceDetection.height * 0.5)) + Math.max(0, -1 * (1 - (faceDetection.x + faceDetection.width) - faceDetection.width * 0.5)) + Math.max(0, -1 * (1 - (faceDetection.y + faceDetection.height) - faceDetection.height * 0.5));\n };\n\n return (this.facesFiles[faceName] || []).slice(0, 25).map(function (fileId) {\n return _this.files[fileId];\n }).map(function (file) {\n return _objectSpread(_objectSpread({}, file), {}, {\n faceDetections: JSON.parse(he.decode(file.faceDetections))\n });\n }) // sort larges face first\n .sort(function (a, b) {\n return b.faceDetections.find(function (d) {\n return d.title === faceName;\n }).width - a.faceDetections.find(function (d) {\n return d.title === faceName;\n }).width;\n }) // sort fewest face detections first\n .sort(function (a, b) {\n return a.faceDetections.length - b.faceDetections.length;\n }) // Sort faces that are at the edge last\n .sort(function (a, b) {\n return scoreFacePosition(a.faceDetections.find(function (d) {\n return d.title === faceName;\n })) - scoreFacePosition(b.faceDetections.find(function (d) {\n return d.title === faceName;\n }));\n })[0];\n },\n\n /**\n * This will produce an inline style to apply to images\n * to zoom toward the detected face\n *\n * @param faceName\n * @return {{}|{transform: string, width: string, transformOrigin: string}}\n */\n getCoverStyle: function getCoverStyle(faceName) {\n var cover = this.getFaceCover(faceName);\n\n if (!cover) {\n return {};\n }\n\n var detections = cover.faceDetections;\n var detection = detections.find(function (detection) {\n return detection.title === faceName;\n }); // Zoom into the picture so that the face fills the --photos-face-width box nicely\n // if the face is larger than the image, we don't zoom out (reason for the Math.max)\n\n var zoom = Math.max(1, 1 / detection.width * 0.4);\n var horizontalCenterOfFace = (detection.x + detection.width / 2) * 100;\n var verticalCenterOfFace = (detection.y + detection.height / 2) * 100;\n return {\n // We assume that the image is inside a div with width: var(--photos-face-width)\n width: '100%',\n // we translate the image so that the center of the detected face is in the center of the --photos-face-width box\n // and add the zoom\n transform: \"translate(calc( var(--photos-face-width)/2 - \".concat(horizontalCenterOfFace, \"% ), calc( var(--photos-face-width)/2 - \").concat(verticalCenterOfFace, \"% )) scale(\").concat(zoom, \")\"),\n // this is necessary for the zoom to zoom toward the center of the face\n transformOrigin: \"\".concat(horizontalCenterOfFace, \"% \").concat(verticalCenterOfFace, \"%\")\n };\n }\n }\n};","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\n/**\n * @copyright Copyright (c) 2022 Louis Chemineau \n *\n * @author Louis Chemineau \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 .\n *\n */\nimport { mapActions, mapGetters } from 'vuex';\nimport { showError } from '@nextcloud/dialogs';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport client from '../services/DavClient.js';\nimport logger from '../services/logger.js';\nimport DavRequest from '../services/DavRequest';\nimport { genFileInfo } from '../utils/fileUtils';\nimport AbortControllerMixin from './AbortControllerMixin';\nexport default {\n name: 'FetchFacesMixin',\n data: function data() {\n return {\n errorFetchingFaces: null,\n loadingFaces: false,\n errorFetchingFiles: null,\n loadingFiles: false\n };\n },\n mixins: [AbortControllerMixin],\n beforeMount: function beforeMount() {\n var _this = this;\n\n return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {\n return regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _this.fetchFaces();\n\n case 1:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }))();\n },\n computed: _objectSpread({}, mapGetters(['faces'])),\n methods: _objectSpread(_objectSpread({}, mapActions(['appendFiles'])), {}, {\n fetchFaces: function fetchFaces() {\n var _this2 = this;\n\n return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() {\n var _getCurrentUser, faces;\n\n return regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n if (!_this2.loadingFaces) {\n _context2.next = 2;\n break;\n }\n\n return _context2.abrupt(\"return\");\n\n case 2:\n if (!Object.keys(_this2.faces).length) {\n _context2.next = 4;\n break;\n }\n\n return _context2.abrupt(\"return\");\n\n case 4:\n _context2.prev = 4;\n _this2.loadingFaces = true;\n _this2.errorFetchingFaces = null;\n _context2.next = 9;\n return client.getDirectoryContents(\"/recognize/\".concat((_getCurrentUser = getCurrentUser()) === null || _getCurrentUser === void 0 ? void 0 : _getCurrentUser.uid, \"/faces/\"), {\n signal: _this2.abortController.signal\n });\n\n case 9:\n faces = _context2.sent;\n\n _this2.$store.dispatch('addFaces', {\n faces: faces\n });\n\n logger.debug(\"[FetchFacesMixin] Fetched \".concat(faces.length, \" new faces: \"), faces);\n _context2.next = 19;\n break;\n\n case 14:\n _context2.prev = 14;\n _context2.t0 = _context2[\"catch\"](4);\n\n if (_context2.t0.response && _context2.t0.response.status) {\n if (_context2.t0.response.status === 404) {\n _this2.errorFetchingFaces = 404;\n } else {\n _this2.errorFetchingFaces = _context2.t0;\n }\n }\n\n logger.error(t('photos', 'Failed to fetch faces list.'), _context2.t0);\n showError(t('photos', 'Failed to fetch faces list.'));\n\n case 19:\n _context2.prev = 19;\n _this2.loadingFaces = false;\n return _context2.finish(19);\n\n case 22:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2, null, [[4, 14, 19, 22]]);\n }))();\n },\n fetchFaceContent: function fetchFaceContent(faceName, force) {\n var _this3 = this;\n\n return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee3() {\n var _getCurrentUser2, _yield$client$getDire, fetchedFiles, fileIds;\n\n return regeneratorRuntime.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n if (!_this3.loadingFiles) {\n _context3.next = 2;\n break;\n }\n\n return _context3.abrupt(\"return\");\n\n case 2:\n if (!(!force && _this3.facesFiles[faceName] && _this3.facesFiles[faceName].length)) {\n _context3.next = 4;\n break;\n }\n\n return _context3.abrupt(\"return\");\n\n case 4:\n _context3.prev = 4;\n _this3.errorFetchingFiles = null;\n _this3.loadingFiles = true;\n _context3.next = 9;\n return client.getDirectoryContents(\"/recognize/\".concat((_getCurrentUser2 = getCurrentUser()) === null || _getCurrentUser2 === void 0 ? void 0 : _getCurrentUser2.uid, \"/faces/\").concat(faceName), {\n data: DavRequest,\n details: true,\n signal: _this3.abortController.signal\n });\n\n case 9:\n _yield$client$getDire = _context3.sent;\n fetchedFiles = _yield$client$getDire.data;\n fetchedFiles = fetchedFiles.map(function (file) {\n return genFileInfo(file);\n }).map(function (file) {\n return _objectSpread(_objectSpread({}, file), {}, {\n filename: file.realpath.replace(\"/\".concat(getCurrentUser().uid, \"/files\"), '')\n });\n });\n fileIds = fetchedFiles.map(function (file) {\n return '' + file.fileid;\n });\n\n _this3.appendFiles(fetchedFiles);\n\n if (!(fetchedFiles.length > 0)) {\n _context3.next = 17;\n break;\n }\n\n _context3.next = 17;\n return _this3.$store.commit('addFilesToFace', {\n faceName: faceName,\n fileIdsToAdd: fileIds\n });\n\n case 17:\n logger.debug(\"[FetchFacesMixin] Fetched \".concat(fileIds.length, \" new files: \"), fileIds);\n _context3.next = 24;\n break;\n\n case 20:\n _context3.prev = 20;\n _context3.t0 = _context3[\"catch\"](4);\n\n if (_context3.t0.response && _context3.t0.response.status) {\n if (_context3.t0.response.status === 404) {\n _this3.errorFetchingFiles = 404;\n } else {\n _this3.errorFetchingFiles = _context3.t0;\n }\n } // cancelled request, moving on...\n\n\n logger.error('Error fetching face files', _context3.t0);\n\n case 24:\n _context3.prev = 24;\n _this3.loadingFiles = false;\n return _context3.finish(24);\n\n case 27:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3, null, [[4, 20, 24, 27]]);\n }))();\n }\n })\n};"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-src_mixins_FetchAlbumsMixin_js-node_modules_vue-material-design-icons_Plus_vue-src_components-4c933a.js b/js/photos-src_mixins_FetchAlbumsMixin_js-node_modules_vue-material-design-icons_Plus_vue-src_components-4c933a.js deleted file mode 100644 index 287f3fe43..000000000 --- a/js/photos-src_mixins_FetchAlbumsMixin_js-node_modules_vue-material-design-icons_Plus_vue-src_components-4c933a.js +++ /dev/null @@ -1,3 +0,0 @@ -/*! For license information please see photos-src_mixins_FetchAlbumsMixin_js-node_modules_vue-material-design-icons_Plus_vue-src_components-4c933a.js.LICENSE.txt */ -"use strict";(self.webpackChunkphotos=self.webpackChunkphotos||[]).push([["src_mixins_FetchAlbumsMixin_js-node_modules_vue-material-design-icons_Plus_vue-src_components-4c933a"],{12945:(n,e,o)=>{o.d(e,{Z:()=>h});var a=o(20629),r=o(80351),l=o.n(r),i=o(82880),s=o(45994),c=o(81067),u=o(59537),m=o(94236);function p(t){return p="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},p(t)}function b(t,n){var e=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);n&&(o=o.filter((function(n){return Object.getOwnPropertyDescriptor(t,n).enumerable}))),e.push.apply(e,o)}return e}function d(t){for(var n=1;n\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t',details:!0,signal:n.abortController.signal});case 7:a=e.sent,r=a.data.filter((function(t){var n;return t.filename!=="/photos/".concat(null===(n=(0,s.ts)())||void 0===n?void 0:n.uid,"/albums")})).map((function(t){return""===t.props.collaborators?t.props.collaborators=[]:"object"===p(t.props.collaborators.collaborator)&&(Array.isArray(t.props.collaborators.collaborator)?t.props.collaborators=t.props.collaborators.collaborator:t.props.collaborators=[t.props.collaborators.collaborator]),t})).map((function(t){return(0,m.AX)(t)})).map((function(t){var e,o,a=JSON.parse(null!==(e=null===(o=t.dateRange)||void 0===o?void 0:o.replace(/"/g,'"'))&&void 0!==e?e:"{}");null===a.start&&(a.start=l()().unix(),a.end=l()().unix());var r={startDate:l().unix(a.start).format("MMMM YYYY"),endDate:l().unix(a.end).format("MMMM YYYY")};return d(d({},t),{},r.startDate===r.endDate?{date:r.startDate}:{date:n.t("photos","{startDate} to {endDate}",r)})})),n.$store.dispatch("addAlbums",{albums:r}),u.Z.debug("[FetchAlbumsMixin] Fetched ".concat(r.length," new files: "),r),e.next=26;break;case 13:if(e.prev=13,e.t0=e.catch(2),404!==(null===(b=e.t0.response)||void 0===b?void 0:b.status)){e.next=19;break}n.errorFetchingAlbums=404,e.next=24;break;case 19:if("ERR_CANCELED"!==e.t0.code){e.next=23;break}return e.abrupt("return");case 23:n.errorFetchingAlbums=e.t0;case 24:u.Z.error(t("photos","Failed to fetch albums list."),e.t0),(0,i.x2)(t("photos","Failed to fetch albums list."));case 26:return e.prev=26,n.loadingAlbums=!1,e.finish(26);case 29:case"end":return e.stop()}}),e,null,[[2,13,26,29]])})))()}}}},17963:(t,n,e)=>{e.d(n,{Z:()=>i});var o=e(87537),a=e.n(o),r=e(23645),l=e.n(r)()(a());l.push([t.id,".album-form[data-v-33f82244]{display:flex;flex-direction:column;height:350px;padding:16px}.album-form .form-title[data-v-33f82244]{font-weight:bold}.album-form .form-subtitle[data-v-33f82244]{color:var(--color-text-lighter)}.album-form .form-inputs[data-v-33f82244]{flex-grow:1;justify-items:flex-end}.album-form .form-inputs input[data-v-33f82244]{width:100%}.album-form .form-inputs label[data-v-33f82244]{display:flex;margin-top:16px}.album-form .form-inputs label[data-v-33f82244] svg{margin-right:12px}.album-form .form-buttons[data-v-33f82244]{display:flex;justify-content:space-between}.album-form .form-buttons .left-buttons[data-v-33f82244],.album-form .form-buttons .right-buttons[data-v-33f82244]{display:flex}.album-form .form-buttons .right-buttons[data-v-33f82244]{justify-content:flex-end}.album-form .form-buttons button[data-v-33f82244]{margin-right:16px}.left-buttons[data-v-33f82244]{flex-grow:1}","",{version:3,sources:["webpack://./src/components/AlbumForm.vue"],names:[],mappings:"AAwOA,6BACC,YAAA,CACA,qBAAA,CACA,YAAA,CACA,YAAA,CAEA,yCACC,gBAAA,CAGD,4CACC,+BAAA,CAGD,0CACC,WAAA,CACA,sBAAA,CAEA,gDACC,UAAA,CAGD,gDACC,YAAA,CACA,eAAA,CAEA,qDACC,iBAAA,CAKH,2CACC,YAAA,CACA,6BAAA,CAEA,mHACC,YAAA,CAGD,0DACC,wBAAA,CAGD,kDACC,iBAAA,CAKH,+BACC,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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.album-form {\n\tdisplay: flex;\n\tflex-direction: column;\n\theight: 350px;\n\tpadding: 16px;\n\n\t.form-title {\n\t\tfont-weight: bold;\n\t}\n\n\t.form-subtitle {\n\t\tcolor: var(--color-text-lighter);\n\t}\n\n\t.form-inputs {\n\t\tflex-grow: 1;\n\t\tjustify-items: flex-end;\n\n\t\tinput {\n\t\t\twidth: 100%;\n\t\t}\n\n\t\tlabel {\n\t\t\tdisplay: flex;\n\t\t\tmargin-top: 16px;\n\n\t\t\t::v-deep svg {\n\t\t\t\tmargin-right: 12px;\n\t\t\t}\n\t\t}\n\t}\n\n\t.form-buttons {\n\t\tdisplay: flex;\n\t\tjustify-content: space-between;\n\n\t\t.left-buttons, .right-buttons {\n\t\t\tdisplay: flex;\n\t\t}\n\n\t\t.right-buttons {\n\t\t\tjustify-content: flex-end;\n\t\t}\n\n\t\tbutton {\n\t\t\tmargin-right: 16px;\n\t\t}\n\t}\n}\n\n.left-buttons {\n\tflex-grow: 1;\n}\n'],sourceRoot:""}]);const i=l},92575:(t,n,e)=>{e.d(n,{Z:()=>i});var o=e(87537),a=e.n(o),r=e(23645),l=e.n(r)()(a());l.push([t.id,".manage-collaborators[data-v-995bfdfc]{display:flex;flex-direction:column;padding:20px}.manage-collaborators__title[data-v-995bfdfc]{font-weight:bold}.manage-collaborators__subtitle[data-v-995bfdfc]{color:var(--color-text-lighter)}.manage-collaborators__public-link-button[data-v-995bfdfc]{margin:4px 0}.manage-collaborators__form[data-v-995bfdfc]{margin-top:4px 0;display:flex;flex-direction:column;height:500px}.manage-collaborators__form__input[data-v-995bfdfc]{flex-grow:1;justify-items:flex-end;position:relative}.manage-collaborators__form__input .magnify-icon[data-v-995bfdfc]{position:absolute;top:10px;left:8px;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}.manage-collaborators__form__input input[data-v-995bfdfc]{width:100%;padding-left:34px}.manage-collaborators__form__input .loader[data-v-995bfdfc]{position:absolute;top:-4px;right:4px;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}.manage-collaborators__form__input .loader[data-v-995bfdfc] .icon-loading::after{height:16px;width:16px}.manage-collaborators__form__selection[data-v-995bfdfc]{min-height:25px;padding:8px}.manage-collaborators__form__selection li[data-v-995bfdfc]{margin-right:4px;display:inline-block}.manage-collaborators__form__selection li .close-icon[data-v-995bfdfc]{cursor:pointer}.manage-collaborators__form__list__result[data-v-995bfdfc]{padding:8px;border-radius:100px;box-sizing:border-box}.manage-collaborators__form__list__result[data-v-995bfdfc],.manage-collaborators__form__list__result *[data-v-995bfdfc]{cursor:pointer}.manage-collaborators__form__list__result[data-v-995bfdfc]:hover,.manage-collaborators__form__list__result--selected[data-v-995bfdfc]{background:var(--color-background-dark)}.manage-collaborators .slot-buttons[data-v-995bfdfc]{display:flex;justify-content:flex-end}","",{version:3,sources:["webpack://./src/components/CollaboratorsSelectionForm.vue"],names:[],mappings:"AAiRA,uCACC,YAAA,CACA,qBAAA,CACA,YAAA,CAEA,8CACC,gBAAA,CAGD,iDACC,+BAAA,CAGD,2DACC,YAAA,CAGD,6CACC,gBAAA,CACA,YAAA,CACA,qBAAA,CACA,YAAA,CAEA,oDACC,WAAA,CACA,sBAAA,CACA,iBAAA,CAEA,kEACC,iBAAA,CACA,QAAA,CACA,QAAA,CACA,yBAAA,CAAA,sBAAA,CAAA,iBAAA,CAGD,0DACC,UAAA,CACA,iBAAA,CAGD,4DACC,iBAAA,CACA,QAAA,CACA,SAAA,CACA,yBAAA,CAAA,sBAAA,CAAA,iBAAA,CAEA,kFACC,WAAA,CACA,UAAA,CAKH,wDACC,eAAA,CACA,WAAA,CAEA,2DACC,gBAAA,CACA,oBAAA,CAEA,uEACC,cAAA,CAMF,2DACC,WAAA,CACA,mBAAA,CACA,qBAAA,CAEA,wHACC,cAAA,CAGD,sIACC,uCAAA,CAMJ,qDACC,YAAA,CACA,wBAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.manage-collaborators {\n\tdisplay: flex;\n\tflex-direction: column;\n\tpadding: 20px;\n\n\t&__title {\n\t\tfont-weight: bold;\n\t}\n\n\t&__subtitle {\n\t\tcolor: var(--color-text-lighter);\n\t}\n\n\t&__public-link-button {\n\t\tmargin: 4px 0;\n\t}\n\n\t&__form {\n\t\tmargin-top: 4px 0;\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\theight: 500px;\n\n\t\t&__input {\n\t\t\tflex-grow: 1;\n\t\t\tjustify-items: flex-end;\n\t\t\tposition: relative;\n\n\t\t\t.magnify-icon {\n\t\t\t\tposition: absolute;\n\t\t\t\ttop: 10px;\n\t\t\t\tleft: 8px;\n\t\t\t\twidth: fit-content;\n\t\t\t}\n\n\t\t\tinput {\n\t\t\t\twidth: 100%;\n\t\t\t\tpadding-left: 34px;\n\t\t\t}\n\n\t\t\t.loader {\n\t\t\t\tposition: absolute;\n\t\t\t\ttop: -4px;\n\t\t\t\tright: 4px;\n\t\t\t\twidth: fit-content;\n\n\t\t\t\t::v-deep .icon-loading::after {\n\t\t\t\t\theight: 16px;\n\t\t\t\t\twidth: 16px;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t&__selection {\n\t\t\tmin-height: 25px;\n\t\t\tpadding: 8px;\n\n\t\t\tli {\n\t\t\t\tmargin-right: 4px;\n\t\t\t\tdisplay: inline-block;\n\n\t\t\t\t.close-icon {\n\t\t\t\t\tcursor: pointer;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t&__list {\n\t\t\t&__result {\n\t\t\t\tpadding: 8px;\n\t\t\t\tborder-radius: 100px;\n\t\t\t\tbox-sizing: border-box;\n\n\t\t\t\t&, & * {\n\t\t\t\t\tcursor: pointer;\n\t\t\t\t}\n\n\t\t\t\t&:hover, &--selected {\n\t\t\t\t\tbackground: var(--color-background-dark);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t.slot-buttons {\n\t\tdisplay: flex;\n\t\tjustify-content: flex-end;\n\t}\n}\n'],sourceRoot:""}]);const i=l},40502:(t,n,e)=>{e.d(n,{Z:()=>a});const o={name:"PlusIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const a=(0,e(51900).Z)(o,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("span",t._b({staticClass:"material-design-icon plus-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(n){return t.$emit("click",n)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports},75400:(t,n,e)=>{e.d(n,{Z:()=>a});const o={name:"SendIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const a=(0,e(51900).Z)(o,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("span",t._b({staticClass:"material-design-icon send-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(n){return t.$emit("click",n)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M2,21L23,12L2,3V10L17,12L2,14V21Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports},14684:(t,n,e)=>{e.d(n,{Z:()=>j});var o=e(20629),a=e(93050);const r={name:"AccountMultiplePlusIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var l=e(51900);const i=(0,l.Z)(r,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("span",t._b({staticClass:"material-design-icon account-multiple-plus-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(n){return t.$emit("click",n)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M19 17V19H7V17S7 13 13 13 19 17 19 17M16 8A3 3 0 1 0 13 11A3 3 0 0 0 16 8M19.2 13.06A5.6 5.6 0 0 1 21 17V19H24V17S24 13.55 19.2 13.06M18 5A2.91 2.91 0 0 0 17.11 5.14A5 5 0 0 1 17.11 10.86A2.91 2.91 0 0 0 18 11A3 3 0 0 0 18 5M8 10H5V7H3V10H0V12H3V15H5V12H8Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports;var s=e(75400),c=e(33476),u=e(80351),m=e.n(u),p=e(13096);function b(t,n,e,o,a,r,l){try{var i=t[r](l),s=i.value}catch(t){return void e(t)}i.done?n(s):Promise.resolve(s).then(o,a)}function d(t){return function(){var n=this,e=arguments;return new Promise((function(o,a){var r=t.apply(n,e);function l(t){b(r,o,a,l,i,"next",t)}function i(t){b(r,o,a,l,i,"throw",t)}l(void 0)}))}}function f(t,n){var e=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);n&&(o=o.filter((function(n){return Object.getOwnPropertyDescriptor(t,n).enumerable}))),e.push.apply(e,o)}return e}function A(t){for(var n=1;n0&&void 0!==arguments[0]?arguments[0]:[];""===this.albumName||this.loading||(this.editMode?this.handleUpdateAlbum():this.handleCreateAlbum(t))},handleCreateAlbum:function(){var t=arguments,n=this;return d(regeneratorRuntime.mark((function e(){var o,a;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return o=t.length>0&&void 0!==t[0]?t[0]:[],e.prev=1,n.loading=!0,e.next=5,n.createAlbum({album:{basename:n.albumName,nbItems:0,location:n.albumLocation,lastPhoto:-1,date:m()().format("MMMM YYYY"),collaborators:o}});case 5:if(a=e.sent,""===n.albumLocation&&0===o.length){e.next=10;break}return e.next=9,n.updateAlbum({albumName:n.albumName,properties:{location:n.albumLocation,collaborators:o}});case 9:a=e.sent;case 10:n.$emit("done",{album:a});case 11:return e.prev=11,n.loading=!1,e.finish(11);case 14:case"end":return e.stop()}}),e,null,[[1,,11,14]])})))()},handleUpdateAlbum:function(){var t=this;return d(regeneratorRuntime.mark((function n(){var e;return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(n.prev=0,t.loading=!0,e=A({},t.album),t.album.basename===t.albumName){n.next=7;break}return n.next=6,t.renameAlbum({currentAlbumName:t.album.basename,newAlbumName:t.albumName});case 6:e=n.sent;case 7:if(t.album.location===t.albumLocation){n.next=11;break}return n.next=10,t.updateAlbum({albumName:t.albumName,properties:{location:t.albumLocation}});case 10:e.location=n.sent;case 11:t.$emit("done",{album:e});case 12:return n.prev=12,t.loading=!1,n.finish(12);case 15:case"end":return n.stop()}}),n,null,[[0,,12,15]])})))()},back:function(){this.$emit("back")}})};var C=e(93379),v=e.n(C),_=e(7795),y=e.n(_),x=e(90569),k=e.n(x),w=e(3565),O=e.n(w),B=e(19216),S=e.n(B),N=e(44589),L=e.n(N),P=e(17963),M={};M.styleTagTransform=L(),M.setAttributes=O(),M.insert=k().bind(null,"head"),M.domAPI=y(),M.insertStyleElement=S();v()(P.Z,M);P.Z&&P.Z.locals&&P.Z.locals;const j=(0,l.Z)(h,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return t.showCollaboratorView?e("CollaboratorsSelectionForm",{attrs:{"album-name":t.albumName,"allow-public-link":!1},scopedSlots:t._u([{key:"default",fn:function(n){var o=n.collaborators;return[e("span",{staticClass:"left-buttons"},[e("NcButton",{attrs:{"aria-label":t.t("photos","Back to the new album form."),type:"tertiary"},on:{click:function(n){t.showCollaboratorView=!1}}},[t._v("\n\t\t\t\t"+t._s(t.t("photos","Back"))+"\n\t\t\t")])],1),t._v(" "),e("span",{staticClass:"right-buttons"},[e("NcButton",{attrs:{"aria-label":t.editMode?t.t("photos","Save."):t.t("photos","Create the album."),type:"primary",disabled:""===t.albumName.trim()||t.loading},on:{click:function(n){return t.submit(o)}},scopedSlots:t._u([{key:"icon",fn:function(){return[t.loading?e("NcLoadingIcon"):e("Send")]},proxy:!0}],null,!0)},[t._v("\n\t\t\t\t"+t._s(t.editMode?t.t("photos","Save"):t.t("photos","Create album"))+"\n\t\t\t")])],1)]}}])}):e("form",{staticClass:"album-form",on:{submit:function(n){return n.preventDefault(),t.submit.apply(null,arguments)}}},[e("div",{staticClass:"form-inputs"},[e("NcTextField",{ref:"nameInput",attrs:{value:t.albumName,type:"text",name:"name",required:!0,autofocus:"true",placeholder:t.t("photos","Name of the album")},on:{"update:value":function(n){t.albumName=n}}}),t._v(" "),e("label",[e("MapMarker"),e("NcTextField",{attrs:{value:t.albumLocation,name:"location",type:"text",placeholder:t.t("photos","Location of the album")},on:{"update:value":function(n){t.albumLocation=n}}})],1)],1),t._v(" "),e("div",{staticClass:"form-buttons"},[e("span",{staticClass:"left-buttons"},[t.displayBackButton?e("NcButton",{attrs:{"aria-label":t.t("photos","Go back to the previous view."),type:"tertiary"},on:{click:t.back}},[t._v("\n\t\t\t\t"+t._s(t.t("photos","Back"))+"\n\t\t\t")]):t._e()],1),t._v(" "),e("span",{staticClass:"right-buttons"},[t.editMode?t._e():e("NcButton",{attrs:{"aria-label":t.t("photos","Go to the add collaborators view."),type:"secondary",disabled:""===t.albumName.trim()||t.loading},on:{click:function(n){t.showCollaboratorView=!0}},scopedSlots:t._u([{key:"icon",fn:function(){return[e("AccountMultiplePlus")]},proxy:!0}],null,!1,1531126728)},[t._v("\n\t\t\t\t"+t._s(t.t("photos","Add collaborators"))+"\n\t\t\t")]),t._v(" "),e("NcButton",{attrs:{"aria-label":t.editMode?t.t("photos","Save."):t.t("photos","Create the album."),type:"primary",disabled:""===t.albumName||t.loading},on:{click:function(n){return t.submit()}},scopedSlots:t._u([{key:"icon",fn:function(){return[t.loading?e("NcLoadingIcon"):e("Send")]},proxy:!0}],null,!1,3914512768)},[t._v("\n\t\t\t\t"+t._s(t.editMode?t.t("photos","Save"):t.t("photos","Create album"))+"\n\t\t\t")])],1)])])}),[],!1,null,"33f82244",null).exports},13096:(n,e,o)=>{o.d(e,{Z:()=>R});const a={name:"MagnifyIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var r=o(51900);const l=(0,r.Z)(a,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("span",t._b({staticClass:"material-design-icon magnify-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(n){return t.$emit("click",n)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M9.5,3A6.5,6.5 0 0,1 16,9.5C16,11.11 15.41,12.59 14.44,13.73L14.71,14H15.5L20.5,19L19,20.5L14,15.5V14.71L13.73,14.44C12.59,15.41 11.11,16 9.5,16A6.5,6.5 0 0,1 3,9.5A6.5,6.5 0 0,1 9.5,3M9.5,5C7,5 5,7 5,9.5C5,12 7,14 9.5,14C12,14 14,12 14,9.5C14,7 12,5 9.5,5Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports;const i={name:"ContentCopyIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const s=(0,r.Z)(i,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("span",t._b({staticClass:"material-design-icon content-copy-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(n){return t.$emit("click",n)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports;var c=o(14625),u=o(31894),m=o(26937),p=o(82880),b=o(45994),d=o(79753),f=o(33476),A=o(20561),g=o(59537);function h(t,n,e,o,a,r,l){try{var i=t[r](l),s=i.value}catch(t){return void e(t)}i.done?n(s):Promise.resolve(s).then(o,a)}function C(t){return function(){var n=this,e=arguments;return new Promise((function(o,a){var r=t.apply(n,e);function l(t){h(r,o,a,l,i,"next",t)}function i(t){h(r,o,a,l,i,"throw",t)}l(void 0)}))}}function v(t,n){var e=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);n&&(o=o.filter((function(n){return Object.getOwnPropertyDescriptor(t,n).enumerable}))),e.push.apply(e,o)}return e}function _(t){for(var n=1;n - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ diff --git a/js/photos-src_mixins_FetchAlbumsMixin_js-node_modules_vue-material-design-icons_Plus_vue-src_components-4c933a.js.map b/js/photos-src_mixins_FetchAlbumsMixin_js-node_modules_vue-material-design-icons_Plus_vue-src_components-4c933a.js.map deleted file mode 100644 index a67e1466c..000000000 --- a/js/photos-src_mixins_FetchAlbumsMixin_js-node_modules_vue-material-design-icons_Plus_vue-src_components-4c933a.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-src_mixins_FetchAlbumsMixin_js-node_modules_vue-material-design-icons_Plus_vue-src_components-4c933a.js?v=573555613b96f2192c91","mappings":";ugDAiCA,SACCA,KAAM,mBAENC,KAHc,WAIb,MAAO,CACNC,oBAAqB,KACrBC,eAAe,EAEhB,EAEDC,OAAQ,UACPC,GAGKC,YAdQ,WAcM,0IACnB,EAAKC,cADc,4CAEnB,EAEDC,SAAU,EAAF,IACJC,EAAAA,EAAAA,IAAW,CACb,YAIFC,QAAS,CACFH,YADE,WACY,0JACf,EAAKJ,cADU,iEAMlB,EAAKA,eAAgB,EACrB,EAAKD,oBAAsB,KAPT,SASKS,EAAAA,EAAAA,qBAAA,6BAAuCC,EAAAA,EAAAA,aAAvC,aAAuC,EAAkBC,IAAzD,WAAuE,CAC7FZ,KAAM,8hBAcNa,SAAS,EACTC,OAAQ,EAAKC,gBAAgBD,SAzBZ,OASZE,EATY,OA4BZC,EAASD,EAAShB,KACtBkB,QAAO,SAAAC,GAAK,aAAIA,EAAMC,WAAN,6BAA8BT,EAAAA,EAAAA,aAA9B,aAA8B,EAAkBC,IAAhD,UAAJ,IAEZS,KAAI,SAAAF,GAWJ,MAVkC,KAA9BA,EAAMG,MAAMC,cACfJ,EAAMG,MAAMC,cAAgB,GACgC,WAAlD,EAAOJ,EAAMG,MAAMC,cAAcC,gBACvCC,MAAMC,QAAQP,EAAMG,MAAMC,cAAcC,cAC3CL,EAAMG,MAAMC,cAAgBJ,EAAMG,MAAMC,cAAcC,aAEtDL,EAAMG,MAAMC,cAAgB,CAACJ,EAAMG,MAAMC,cAAcC,eAIlDL,CACP,IACAE,KAAI,SAAAF,GAAK,OAAIQ,EAAAA,EAAAA,IAAYR,EAAhB,IACTE,KAAI,SAAAF,GAAS,QACPS,EAAYC,KAAKC,MAAL,oBAAWX,EAAMS,iBAAjB,aAAW,EAAiBG,QAAQ,UAAW,YAA/C,QAAuD,MAEjD,OAApBH,EAAUI,QACbJ,EAAUI,MAAQC,MAASC,OAC3BN,EAAUO,IAAMF,MAASC,QAG1B,IAAME,EAAoB,CACzBC,UAAWJ,IAAAA,KAAYL,EAAUI,OAAOM,OAAO,aAC/CC,QAASN,IAAAA,KAAYL,EAAUO,KAAKG,OAAO,cAG5C,OACQ,EAAP,KAAYnB,GAAZ,GADGiB,EAAkBC,YAAcD,EAAkBG,QACrD,CAAmBC,KAAMJ,EAAkBC,WAE3C,CAAmBG,KAAM,EAAKC,EAAE,SAAU,2BAA4BL,IAEvE,IAEF,EAAKM,OAAOC,SAAS,YAAa,CAAE1B,OAAAA,IACpC2B,EAAAA,EAAAA,MAAA,qCAA2C3B,EAAO4B,OAAlD,gBAAwE5B,GAlEtD,qDAoEa,OAA3B,eAAMD,gBAAN,eAAgB8B,QApEF,iBAqEjB,EAAK7C,oBAAsB,IArEV,2BAsEQ,iBAAf,KAAM8C,KAtEC,mDAyEjB,EAAK9C,oBAAL,KAzEiB,QA2ElB2C,EAAAA,EAAAA,MAAaH,EAAE,SAAU,gCAAzB,OACAO,EAAAA,EAAAA,IAAUP,EAAE,SAAU,iCA5EJ,yBA8ElB,EAAKvC,eAAgB,EA9EH,8EAgFnB,yECvIC+C,QAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,u5BAAw5B,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,4CAA4C,MAAQ,GAAG,SAAW,uQAAuQ,eAAiB,CAAC,kvDAAk0D,WAAa,MAEtoG,+ECJIH,QAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,kyDAAmyD,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,6DAA6D,MAAQ,GAAG,SAAW,yhBAAyhB,eAAiB,CAAC,yiFAAynF,WAAa,MAE3mK,4CCaA,MCpBwG,EDoBxG,CACErD,KAAM,WACNsD,MAAO,CAAC,SACR/B,MAAO,CACLgC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,cACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,iCAAiCC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,8CAA8C,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GAC3jB,IDUpB,EACA,KACA,KACA,MAI8B,0CEEhC,MCpBwG,EDoBxG,CACE7E,KAAM,WACNsD,MAAO,CAAC,SACR/B,MAAO,CACLgC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,cACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,iCAAiCC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,sCAAsC,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GACnjB,IDUpB,EACA,KACA,KACA,MAI8B,0CElBhC,0BCoBA,MCpBuH,EDoBvH,CACE7E,KAAM,0BACNsD,MAAO,CAAC,SACR/B,MAAO,CACLgC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,qBEff,SAXgB,OACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,kDAAkDC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,qQAAqQ,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GACnyB,IDUpB,EACA,KACA,KACA,MAI8B,ojCE0FhC,MC5G0K,ED4G1K,CACA,iBAEA,YACA,cACA,sBACA,SACA,oBACA,8BACA,0BACA,gCAGA,OACA,OACA,YACA,cAEA,mBACA,aACA,aAIA,KAxBA,WAyBA,OACA,wBACA,aACA,iBACA,WAEA,EAEA,UACA,SADA,WAEA,wBACA,GAGA,QAvCA,WAuCA,WACA,gBACA,mCACA,wCAGA,2BACA,8DACA,GACA,EAEA,gBACA,sDADA,IAGA,OAHA,WAGA,gEACA,oCAIA,cACA,yBAEA,0BAEA,EAEA,kBAfA,WAeA,kNAEA,aAFA,SAGA,eACA,OACA,qBACA,UACA,yBACA,aACA,+BACA,mBAVA,UAGA,EAHA,OAcA,mCAdA,iCAeA,cACA,CACA,sBACA,YACA,yBACA,mBApBA,OAeA,EAfA,eAyBA,0BAzBA,yBA2BA,aA3BA,4EA6BA,EAEA,kBA9CA,WA8CA,4JAEA,aAEA,EAJA,KAIA,SAEA,+BANA,gCAOA,4EAPA,OAOA,EAPA,iBAUA,mCAVA,kCAWA,6EAXA,QAWA,WAXA,eAcA,0BAdA,yBAgBA,aAhBA,4EAkBA,EAEA,KAlEA,WAmEA,kBACA,0IEvNIC,EAAU,CAAC,EAEfA,EAAQC,kBAAoB,IAC5BD,EAAQE,cAAgB,IAElBF,EAAQG,OAAS,SAAc,KAAM,QAE3CH,EAAQI,OAAS,IACjBJ,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKJ,KAAW,YAAiB,WCPlD,SAXgB,OACd,GRTW,WAAa,IAAIhB,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAASF,EAAIsB,qBAA69DlB,EAAG,6BAA6B,CAACI,MAAM,CAAC,aAAaR,EAAIuB,UAAU,qBAAoB,GAAOC,YAAYxB,EAAIyB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASC,GAChtE,IAAIlE,EAAgBkE,EAAIlE,cACxB,MAAO,CAAC0C,EAAG,OAAO,CAACG,YAAY,gBAAgB,CAACH,EAAG,WAAW,CAACI,MAAM,CAAC,aAAaR,EAAIpB,EAAE,SAAU,+BAA+B,KAAO,YAAY6B,GAAG,CAAC,MAAQ,SAASC,GAAQV,EAAIsB,sBAAuB,CAAK,IAAI,CAACtB,EAAIa,GAAG,aAAab,EAAIc,GAAGd,EAAIpB,EAAE,SAAU,SAAS,eAAe,GAAGoB,EAAIa,GAAG,KAAKT,EAAG,OAAO,CAACG,YAAY,iBAAiB,CAACH,EAAG,WAAW,CAACI,MAAM,CAAC,aAAaR,EAAI6B,SAAW7B,EAAIpB,EAAE,SAAU,SAAWoB,EAAIpB,EAAE,SAAU,qBAAqB,KAAO,UAAU,SAAoC,KAAzBoB,EAAIuB,UAAUO,QAAiB9B,EAAI+B,SAAStB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIgC,OAAOtE,EAAc,GAAG8D,YAAYxB,EAAIyB,GAAG,CAAC,CAACC,IAAI,OAAOC,GAAG,WAAW,MAAO,CAAE3B,EAAW,QAAEI,EAAG,iBAAiBA,EAAG,QAAQ,EAAE6B,OAAM,IAAO,MAAK,IAAO,CAACjC,EAAIa,GAAG,aAAab,EAAIc,GAAGd,EAAI6B,SAAW7B,EAAIpB,EAAE,SAAU,QAAUoB,EAAIpB,EAAE,SAAU,iBAAiB,eAAe,GAAG,OAFtsBwB,EAAG,OAAO,CAACG,YAAY,aAAaE,GAAG,CAAC,OAAS,SAASC,GAAgC,OAAxBA,EAAOwB,iBAAwBlC,EAAIgC,OAAOG,MAAM,KAAMC,UAAU,IAAI,CAAChC,EAAG,MAAM,CAACG,YAAY,eAAe,CAACH,EAAG,cAAc,CAACwB,IAAI,YAAYpB,MAAM,CAAC,MAAQR,EAAIuB,UAAU,KAAO,OAAO,KAAO,OAAO,UAAW,EAAK,UAAY,OAAO,YAAcvB,EAAIpB,EAAE,SAAU,sBAAsB6B,GAAG,CAAC,eAAe,SAASC,GAAQV,EAAIuB,UAAUb,CAAM,KAAKV,EAAIa,GAAG,KAAKT,EAAG,QAAQ,CAACA,EAAG,aAAaA,EAAG,cAAc,CAACI,MAAM,CAAC,MAAQR,EAAIqC,cAAc,KAAO,WAAW,KAAO,OAAO,YAAcrC,EAAIpB,EAAE,SAAU,0BAA0B6B,GAAG,CAAC,eAAe,SAASC,GAAQV,EAAIqC,cAAc3B,CAAM,MAAM,IAAI,GAAGV,EAAIa,GAAG,KAAKT,EAAG,MAAM,CAACG,YAAY,gBAAgB,CAACH,EAAG,OAAO,CAACG,YAAY,gBAAgB,CAAEP,EAAqB,kBAAEI,EAAG,WAAW,CAACI,MAAM,CAAC,aAAaR,EAAIpB,EAAE,SAAU,iCAAiC,KAAO,YAAY6B,GAAG,CAAC,MAAQT,EAAIsC,OAAO,CAACtC,EAAIa,GAAG,aAAab,EAAIc,GAAGd,EAAIpB,EAAE,SAAU,SAAS,cAAcoB,EAAIe,MAAM,GAAGf,EAAIa,GAAG,KAAKT,EAAG,OAAO,CAACG,YAAY,iBAAiB,CAAGP,EAAI6B,SAAkb7B,EAAIe,KAA5aX,EAAG,WAAW,CAACI,MAAM,CAAC,aAAaR,EAAIpB,EAAE,SAAU,qCAAqC,KAAO,YAAY,SAAoC,KAAzBoB,EAAIuB,UAAUO,QAAiB9B,EAAI+B,SAAStB,GAAG,CAAC,MAAQ,SAASC,GAAQV,EAAIsB,sBAAuB,CAAI,GAAGE,YAAYxB,EAAIyB,GAAG,CAAC,CAACC,IAAI,OAAOC,GAAG,WAAW,MAAO,CAACvB,EAAG,uBAAuB,EAAE6B,OAAM,IAAO,MAAK,EAAM,aAAa,CAACjC,EAAIa,GAAG,aAAab,EAAIc,GAAGd,EAAIpB,EAAE,SAAU,sBAAsB,cAAuBoB,EAAIa,GAAG,KAAKT,EAAG,WAAW,CAACI,MAAM,CAAC,aAAaR,EAAI6B,SAAW7B,EAAIpB,EAAE,SAAU,SAAWoB,EAAIpB,EAAE,SAAU,qBAAqB,KAAO,UAAU,SAA6B,KAAlBoB,EAAIuB,WAAoBvB,EAAI+B,SAAStB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIgC,QAAQ,GAAGR,YAAYxB,EAAIyB,GAAG,CAAC,CAACC,IAAI,OAAOC,GAAG,WAAW,MAAO,CAAE3B,EAAW,QAAEI,EAAG,iBAAiBA,EAAG,QAAQ,EAAE6B,OAAM,IAAO,MAAK,EAAM,aAAa,CAACjC,EAAIa,GAAG,aAAab,EAAIc,GAAGd,EAAI6B,SAAW7B,EAAIpB,EAAE,SAAU,QAAUoB,EAAIpB,EAAE,SAAU,iBAAiB,eAAe,MAEpvC,GAClzB,IQSpB,EACA,KACA,WACA,MAI8B,0CCChC,MCpB2G,EDoB3G,CACE1C,KAAM,cACNsD,MAAO,CAAC,SACR/B,MAAO,CACLgC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,qBEff,SAXgB,OACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,oCAAoCC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,sQAAsQ,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GACtxB,IDUpB,EACA,KACA,KACA,MAI8B,QEEhC,MCpB+G,EDoB/G,CACE7E,KAAM,kBACNsD,MAAO,CAAC,SACR/B,MAAO,CACLgC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,OACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,yCAAyCC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,+HAA+H,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GACppB,IDUpB,EACA,KACA,KACA,MAI8B,kmCEwGhC,MACA,CACA,OACA,QACA,QACA,SACA,UAIA,MCpI2L,EDoI3L,CACA,kCAEA,YACA,cACA,UACA,gBACA,gBACA,qBACA,8BACA,oBACA,gCACA,6BAGA,OACA,WACA,YACA,aAGA,eACA,WACA,8BAGA,YACA,YACA,YAGA,iBACA,aACA,aAIA,KArCA,WAsCA,OACA,cACA,0BACA,4BACA,wBACA,wBACA,kDACA,oBAEA,EAEA,UAIA,QAJA,WAIA,WACA,iCACA,oDACA,2EACA,qEACA,2CACA,EAKA,sBAfA,WAeA,WACA,2FACA,GAGA,QArEA,WAsEA,2BACA,4HACA,mCACA,6BACA,mBACA,8FAEA,EAEA,SAIA,oBAJA,WAIA,gKAEA,0BAFA,SAGA,uDACA,QACA,oBACA,4BACA,YACA,OACA,YATA,OAGA,EAHA,OAcA,uCACA,gCACA,0BACA,gBACA,+FAlBA,gDAqBA,kCACA,mEACA,2DAvBA,yBAyBA,0BAzBA,6EA2BA,EAEA,yBAjCA,WAiCA,mKACA,oFADA,4CAEA,EAEA,eArCA,WAqCA,0JACA,4CADA,OAEA,sBACA,uBACA,qBACA,QALA,4CAMA,EAEA,aA7CA,SA6CA,GACA,2CAIA,qCACA,EAEA,eArDA,SAqDA,GACA,+CACA,yCACA,yIEhQIC,EAAU,CAAC,EAEfA,EAAQC,kBAAoB,IAC5BD,EAAQE,cAAgB,IAElBF,EAAQG,OAAS,SAAc,KAAM,QAE3CH,EAAQI,OAAS,IACjBJ,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKJ,KAAW,YAAiB,WCPlD,SAXgB,OACd,GCTW,WAAa,IAAIhB,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACG,YAAY,wBAAwB,CAACH,EAAG,KAAK,CAACG,YAAY,+BAA+B,CAACP,EAAIa,GAAG,SAASb,EAAIc,GAAGd,EAAIpB,EAAE,SAAU,sBAAsB,UAAUoB,EAAIa,GAAG,KAAKT,EAAG,MAAM,CAACG,YAAY,kCAAkC,CAACP,EAAIa,GAAG,SAASb,EAAIc,GAAGd,EAAIpB,EAAE,SAAU,+CAA+C,UAAUoB,EAAIa,GAAG,KAAMb,EAAmB,gBAAE,CAAEA,EAAc,WAAEI,EAAG,WAAW,CAACG,YAAY,2CAA2CC,MAAM,CAAC,KAAO,0BAA0BC,GAAG,CAAC,MAAQT,EAAIuC,gBAAgBf,YAAYxB,EAAIyB,GAAG,CAAC,CAACC,IAAI,OAAOC,GAAG,WAAW,MAAO,CAAE3B,EAAoB,iBAAEI,EAAG,SAASA,EAAG,eAAe,EAAE6B,OAAM,IAAO,MAAK,EAAM,YAAY,CAAEjC,EAAoB,iBAAE,CAACA,EAAIa,GAAG,aAAab,EAAIc,GAAGd,EAAIpB,EAAE,SAAU,wBAAwB,aAAa,CAACoB,EAAIa,GAAG,aAAab,EAAIc,GAAGd,EAAIpB,EAAE,SAAU,qBAAqB,cAAc,GAAGwB,EAAG,WAAW,CAACG,YAAY,2CAA2CC,MAAM,CAAC,KAAO,0BAA0BC,GAAG,CAAC,MAAQT,EAAIwC,2BAA2B,CAACxC,EAAIa,GAAG,WAAWb,EAAIc,GAAGd,EAAIpB,EAAE,SAAU,8BAA8B,aAAaoB,EAAIe,KAAKf,EAAIa,GAAG,KAAKT,EAAG,OAAO,CAACG,YAAY,6BAA6BE,GAAG,CAAC,OAAS,SAASC,GAAQA,EAAOwB,gBAAiB,IAAI,CAAC9B,EAAG,QAAQ,CAACG,YAAY,qCAAqC,CAACH,EAAG,UAAU,CAACI,MAAM,CAAC,KAAO,MAAMR,EAAIa,GAAG,KAAKT,EAAG,QAAQ,CAACqC,WAAW,CAAC,CAACvG,KAAK,QAAQwG,QAAQ,UAAUC,MAAO3C,EAAc,WAAE4C,WAAW,eAAepC,MAAM,CAAC,KAAO,SAAS,KAAO,SAAS,aAAaR,EAAIpB,EAAE,SAAU,4BAA4B,oBAAoB,OAAO,gBAAiB,yCAA2CoB,EAAI6C,SAAW,qCAAuC7C,EAAI6C,SAAU,YAAc7C,EAAIpB,EAAE,SAAU,2BAA2BkE,SAAS,CAAC,MAAS9C,EAAc,YAAGS,GAAG,CAAC,MAAQ,CAAC,SAASC,GAAWA,EAAOqC,OAAOC,YAAqBhD,EAAIiD,WAAWvC,EAAOqC,OAAOJ,MAAK,EAAE3C,EAAIkD,wBAAwBlD,EAAIa,GAAG,KAAMb,EAAwB,qBAAEI,EAAG,iBAAiBJ,EAAIe,MAAM,GAAGf,EAAIa,GAAG,KAAKT,EAAG,KAAK,CAACG,YAAY,yCAAyCP,EAAImD,GAAInD,EAA4B,0BAAE,SAASoD,GAAiB,OAAOhD,EAAG,KAAK,CAACsB,IAAI0B,GAAiB,CAAChD,EAAG,eAAe,CAACI,MAAM,CAAC,KAA8D,UAAvDR,EAAIqD,uBAAuBD,GAAiBE,OAAqBtD,EAAIqD,uBAAuBD,GAAiB7D,QAAKgE,EAAU,eAAevD,EAAIqD,uBAAuBD,GAAiBI,QAAQ,CAACpD,EAAG,WAAW,CAACqD,KAAK,SAAS,CAACrD,EAAG,QAAQ,CAACI,MAAM,CAAC,KAAO,GAAG,KAAO,SAAS,aAAaR,EAAIpB,EAAE,SAAU,yDAA0D,CAAC8E,kBAAmB1D,EAAIqD,uBAAuBD,GAAiBI,SAAS/C,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAI2D,eAAeP,EAAgB,MAAM,IAAI,IAAI,EAAE,IAAG,GAAGpD,EAAIa,GAAG,KAAKT,EAAG,mBAAmB,CAACG,YAAY,mCAAmCC,MAAM,CAAC,KAAOR,EAAI4D,SAASpC,YAAYxB,EAAIyB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASC,GAC95F,IAAIiC,EAAejC,EAAIiC,aACvB,OAAOzD,EAAG,KAAK,CAACI,MAAM,CAAC,GAAM,oCAAsCR,EAAI6C,WAAY7C,EAAImD,GAAG,GAAe,SAASxF,GAAc,OAAOyC,EAAG,KAAK,CAACsB,IAAI/D,EAAa+D,IAAIoC,MAAM,CAAEC,OAAUpG,EAAmB,OAAI,OAAS,CAACyC,EAAG,iBAAiB,CAACG,YAAY,2CAA2CyD,MAAM,CAAC,qDAAsDrG,EAAa+D,OAAO1B,EAAIiE,0BAA0BzD,MAAM,CAAC,GAAKR,EAAIqD,uBAAuB1F,EAAa+D,KAAKnC,GAAG,MAAQS,EAAIqD,uBAAuB1F,EAAa+D,KAAKnC,GAAG,OAASS,EAAIiD,WAAW,eAAejD,EAAIqD,uBAAuB1F,EAAa+D,KAAK8B,MAAM,cAAc7F,EAAa+D,OAAO1B,EAAIiE,yBAAyB,aAAajE,EAAIpB,EAAE,SAAU,oDAAqD,CAAC8E,kBAAmB1D,EAAIqD,uBAAuB1F,EAAa+D,KAAK8B,SAAS/C,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIkE,aAAavG,EAAa+D,IAAI,MAAM,EAAE,IAAG,EAAE,QAAQ,GAAG1B,EAAIa,GAAG,KAAKT,EAAG,MAAM,CAACG,YAAY,gBAAgB,CAACP,EAAImE,GAAG,UAAU,KAAK,CAAC,cAAgBnE,EAAIoE,yBAAyB,IAAI,EAAE,GACjgC,IDSpB,EACA,KACA,WACA,MAI8B","sources":["webpack:///photos/src/mixins/FetchAlbumsMixin.js","webpack:///photos/src/components/AlbumForm.vue?vue&type=style&index=0&id=33f82244&lang=scss&scoped=true&","webpack:///photos/src/components/CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=995bfdfc&lang=scss&scoped=true&","webpack:///photos/node_modules/vue-material-design-icons/Plus.vue","webpack:///photos/node_modules/vue-material-design-icons/Plus.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/Plus.vue?80b4","webpack:///photos/node_modules/vue-material-design-icons/Plus.vue?vue&type=template&id=968bec46&","webpack:///photos/node_modules/vue-material-design-icons/Send.vue","webpack:///photos/node_modules/vue-material-design-icons/Send.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/Send.vue?0295","webpack:///photos/node_modules/vue-material-design-icons/Send.vue?vue&type=template&id=46f29e66&","webpack:///photos/src/components/AlbumForm.vue?vue&type=template&id=33f82244&scoped=true&","webpack:///photos/node_modules/vue-material-design-icons/AccountMultiplePlus.vue","webpack:///photos/node_modules/vue-material-design-icons/AccountMultiplePlus.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/AccountMultiplePlus.vue?e9b5","webpack:///photos/node_modules/vue-material-design-icons/AccountMultiplePlus.vue?vue&type=template&id=7e4925e6&","webpack:///photos/src/components/AlbumForm.vue","webpack:///photos/src/components/AlbumForm.vue?vue&type=script&lang=js&","webpack://photos/./src/components/AlbumForm.vue?1eac","webpack://photos/./src/components/AlbumForm.vue?b1d3","webpack:///photos/node_modules/vue-material-design-icons/Magnify.vue","webpack:///photos/node_modules/vue-material-design-icons/Magnify.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/Magnify.vue?0775","webpack:///photos/node_modules/vue-material-design-icons/Magnify.vue?vue&type=template&id=d480a606&","webpack:///photos/node_modules/vue-material-design-icons/ContentCopy.vue","webpack:///photos/node_modules/vue-material-design-icons/ContentCopy.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/ContentCopy.vue?c47c","webpack:///photos/node_modules/vue-material-design-icons/ContentCopy.vue?vue&type=template&id=00bbfaf7&","webpack:///photos/src/components/CollaboratorsSelectionForm.vue","webpack:///photos/src/components/CollaboratorsSelectionForm.vue?vue&type=script&lang=js&","webpack://photos/./src/components/CollaboratorsSelectionForm.vue?f5d2","webpack://photos/./src/components/CollaboratorsSelectionForm.vue?507a","webpack:///photos/src/components/CollaboratorsSelectionForm.vue?vue&type=template&id=995bfdfc&scoped=true&"],"sourcesContent":["/**\n * @copyright Copyright (c) 2022 Louis Chemineau \n *\n * @author Louis Chemineau \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 .\n *\n */\n\nimport { mapGetters } from 'vuex'\n\nimport moment from '@nextcloud/moment'\nimport { showError } from '@nextcloud/dialogs'\nimport { getCurrentUser } from '@nextcloud/auth'\n\nimport client from '../services/DavClient.js'\nimport logger from '../services/logger.js'\nimport { genFileInfo } from '../utils/fileUtils.js'\nimport AbortControllerMixin from './AbortControllerMixin.js'\n\nexport default {\n\tname: 'FetchAlbumsMixin',\n\n\tdata() {\n\t\treturn {\n\t\t\terrorFetchingAlbums: null,\n\t\t\tloadingAlbums: false,\n\t\t}\n\t},\n\n\tmixins: [\n\t\tAbortControllerMixin,\n\t],\n\n\tasync beforeMount() {\n\t\tthis.fetchAlbums()\n\t},\n\n\tcomputed: {\n\t\t...mapGetters([\n\t\t\t'albums',\n\t\t]),\n\t},\n\n\tmethods: {\n\t\tasync fetchAlbums() {\n\t\t\tif (this.loadingAlbums) {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\ttry {\n\t\t\t\tthis.loadingAlbums = true\n\t\t\t\tthis.errorFetchingAlbums = null\n\n\t\t\t\tconst response = await client.getDirectoryContents(`/photos/${getCurrentUser()?.uid}/albums`, {\n\t\t\t\t\tdata: `\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t`,\n\t\t\t\t\tdetails: true,\n\t\t\t\t\tsignal: this.abortController.signal,\n\t\t\t\t})\n\n\t\t\t\tconst albums = response.data\n\t\t\t\t\t.filter(album => album.filename !== `/photos/${getCurrentUser()?.uid}/albums`)\n\t\t\t\t\t// Ensure that we have a proper collaborators array.\n\t\t\t\t\t.map(album => {\n\t\t\t\t\t\tif (album.props.collaborators === '') {\n\t\t\t\t\t\t\talbum.props.collaborators = []\n\t\t\t\t\t\t} else if (typeof album.props.collaborators.collaborator === 'object') {\n\t\t\t\t\t\t\tif (Array.isArray(album.props.collaborators.collaborator)) {\n\t\t\t\t\t\t\t\talbum.props.collaborators = album.props.collaborators.collaborator\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\talbum.props.collaborators = [album.props.collaborators.collaborator]\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\treturn album\n\t\t\t\t\t})\n\t\t\t\t\t.map(album => genFileInfo(album))\n\t\t\t\t\t.map(album => {\n\t\t\t\t\t\tconst dateRange = JSON.parse(album.dateRange?.replace(/"/g, '\"') ?? '{}')\n\n\t\t\t\t\t\tif (dateRange.start === null) {\n\t\t\t\t\t\t\tdateRange.start = moment().unix()\n\t\t\t\t\t\t\tdateRange.end = moment().unix()\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tconst dateRangeFormated = {\n\t\t\t\t\t\t\tstartDate: moment.unix(dateRange.start).format('MMMM YYYY'),\n\t\t\t\t\t\t\tendDate: moment.unix(dateRange.end).format('MMMM YYYY'),\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (dateRangeFormated.startDate === dateRangeFormated.endDate) {\n\t\t\t\t\t\t\treturn { ...album, date: dateRangeFormated.startDate }\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn { ...album, date: this.t('photos', '{startDate} to {endDate}', dateRangeFormated) }\n\t\t\t\t\t\t}\n\t\t\t\t\t})\n\n\t\t\t\tthis.$store.dispatch('addAlbums', { albums })\n\t\t\t\tlogger.debug(`[FetchAlbumsMixin] Fetched ${albums.length} new files: `, albums)\n\t\t\t} catch (error) {\n\t\t\t\tif (error.response?.status === 404) {\n\t\t\t\t\tthis.errorFetchingAlbums = 404\n\t\t\t\t} else if (error.code === 'ERR_CANCELED') {\n\t\t\t\t\treturn\n\t\t\t\t} else {\n\t\t\t\t\tthis.errorFetchingAlbums = error\n\t\t\t\t}\n\t\t\t\tlogger.error(t('photos', 'Failed to fetch albums list.'), error)\n\t\t\t\tshowError(t('photos', 'Failed to fetch albums list.'))\n\t\t\t} finally {\n\t\t\t\tthis.loadingAlbums = false\n\t\t\t}\n\t\t},\n\t},\n}\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".album-form[data-v-33f82244]{display:flex;flex-direction:column;height:350px;padding:16px}.album-form .form-title[data-v-33f82244]{font-weight:bold}.album-form .form-subtitle[data-v-33f82244]{color:var(--color-text-lighter)}.album-form .form-inputs[data-v-33f82244]{flex-grow:1;justify-items:flex-end}.album-form .form-inputs input[data-v-33f82244]{width:100%}.album-form .form-inputs label[data-v-33f82244]{display:flex;margin-top:16px}.album-form .form-inputs label[data-v-33f82244] svg{margin-right:12px}.album-form .form-buttons[data-v-33f82244]{display:flex;justify-content:space-between}.album-form .form-buttons .left-buttons[data-v-33f82244],.album-form .form-buttons .right-buttons[data-v-33f82244]{display:flex}.album-form .form-buttons .right-buttons[data-v-33f82244]{justify-content:flex-end}.album-form .form-buttons button[data-v-33f82244]{margin-right:16px}.left-buttons[data-v-33f82244]{flex-grow:1}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/AlbumForm.vue\"],\"names\":[],\"mappings\":\"AAwOA,6BACC,YAAA,CACA,qBAAA,CACA,YAAA,CACA,YAAA,CAEA,yCACC,gBAAA,CAGD,4CACC,+BAAA,CAGD,0CACC,WAAA,CACA,sBAAA,CAEA,gDACC,UAAA,CAGD,gDACC,YAAA,CACA,eAAA,CAEA,qDACC,iBAAA,CAKH,2CACC,YAAA,CACA,6BAAA,CAEA,mHACC,YAAA,CAGD,0DACC,wBAAA,CAGD,kDACC,iBAAA,CAKH,+BACC,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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.album-form {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\theight: 350px;\\n\\tpadding: 16px;\\n\\n\\t.form-title {\\n\\t\\tfont-weight: bold;\\n\\t}\\n\\n\\t.form-subtitle {\\n\\t\\tcolor: var(--color-text-lighter);\\n\\t}\\n\\n\\t.form-inputs {\\n\\t\\tflex-grow: 1;\\n\\t\\tjustify-items: flex-end;\\n\\n\\t\\tinput {\\n\\t\\t\\twidth: 100%;\\n\\t\\t}\\n\\n\\t\\tlabel {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tmargin-top: 16px;\\n\\n\\t\\t\\t::v-deep svg {\\n\\t\\t\\t\\tmargin-right: 12px;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t.form-buttons {\\n\\t\\tdisplay: flex;\\n\\t\\tjustify-content: space-between;\\n\\n\\t\\t.left-buttons, .right-buttons {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t}\\n\\n\\t\\t.right-buttons {\\n\\t\\t\\tjustify-content: flex-end;\\n\\t\\t}\\n\\n\\t\\tbutton {\\n\\t\\t\\tmargin-right: 16px;\\n\\t\\t}\\n\\t}\\n}\\n\\n.left-buttons {\\n\\tflex-grow: 1;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".manage-collaborators[data-v-995bfdfc]{display:flex;flex-direction:column;padding:20px}.manage-collaborators__title[data-v-995bfdfc]{font-weight:bold}.manage-collaborators__subtitle[data-v-995bfdfc]{color:var(--color-text-lighter)}.manage-collaborators__public-link-button[data-v-995bfdfc]{margin:4px 0}.manage-collaborators__form[data-v-995bfdfc]{margin-top:4px 0;display:flex;flex-direction:column;height:500px}.manage-collaborators__form__input[data-v-995bfdfc]{flex-grow:1;justify-items:flex-end;position:relative}.manage-collaborators__form__input .magnify-icon[data-v-995bfdfc]{position:absolute;top:10px;left:8px;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}.manage-collaborators__form__input input[data-v-995bfdfc]{width:100%;padding-left:34px}.manage-collaborators__form__input .loader[data-v-995bfdfc]{position:absolute;top:-4px;right:4px;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}.manage-collaborators__form__input .loader[data-v-995bfdfc] .icon-loading::after{height:16px;width:16px}.manage-collaborators__form__selection[data-v-995bfdfc]{min-height:25px;padding:8px}.manage-collaborators__form__selection li[data-v-995bfdfc]{margin-right:4px;display:inline-block}.manage-collaborators__form__selection li .close-icon[data-v-995bfdfc]{cursor:pointer}.manage-collaborators__form__list__result[data-v-995bfdfc]{padding:8px;border-radius:100px;box-sizing:border-box}.manage-collaborators__form__list__result[data-v-995bfdfc],.manage-collaborators__form__list__result *[data-v-995bfdfc]{cursor:pointer}.manage-collaborators__form__list__result[data-v-995bfdfc]:hover,.manage-collaborators__form__list__result--selected[data-v-995bfdfc]{background:var(--color-background-dark)}.manage-collaborators .slot-buttons[data-v-995bfdfc]{display:flex;justify-content:flex-end}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/CollaboratorsSelectionForm.vue\"],\"names\":[],\"mappings\":\"AAiRA,uCACC,YAAA,CACA,qBAAA,CACA,YAAA,CAEA,8CACC,gBAAA,CAGD,iDACC,+BAAA,CAGD,2DACC,YAAA,CAGD,6CACC,gBAAA,CACA,YAAA,CACA,qBAAA,CACA,YAAA,CAEA,oDACC,WAAA,CACA,sBAAA,CACA,iBAAA,CAEA,kEACC,iBAAA,CACA,QAAA,CACA,QAAA,CACA,yBAAA,CAAA,sBAAA,CAAA,iBAAA,CAGD,0DACC,UAAA,CACA,iBAAA,CAGD,4DACC,iBAAA,CACA,QAAA,CACA,SAAA,CACA,yBAAA,CAAA,sBAAA,CAAA,iBAAA,CAEA,kFACC,WAAA,CACA,UAAA,CAKH,wDACC,eAAA,CACA,WAAA,CAEA,2DACC,gBAAA,CACA,oBAAA,CAEA,uEACC,cAAA,CAMF,2DACC,WAAA,CACA,mBAAA,CACA,qBAAA,CAEA,wHACC,cAAA,CAGD,sIACC,uCAAA,CAMJ,qDACC,YAAA,CACA,wBAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.manage-collaborators {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\tpadding: 20px;\\n\\n\\t&__title {\\n\\t\\tfont-weight: bold;\\n\\t}\\n\\n\\t&__subtitle {\\n\\t\\tcolor: var(--color-text-lighter);\\n\\t}\\n\\n\\t&__public-link-button {\\n\\t\\tmargin: 4px 0;\\n\\t}\\n\\n\\t&__form {\\n\\t\\tmargin-top: 4px 0;\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\theight: 500px;\\n\\n\\t\\t&__input {\\n\\t\\t\\tflex-grow: 1;\\n\\t\\t\\tjustify-items: flex-end;\\n\\t\\t\\tposition: relative;\\n\\n\\t\\t\\t.magnify-icon {\\n\\t\\t\\t\\tposition: absolute;\\n\\t\\t\\t\\ttop: 10px;\\n\\t\\t\\t\\tleft: 8px;\\n\\t\\t\\t\\twidth: fit-content;\\n\\t\\t\\t}\\n\\n\\t\\t\\tinput {\\n\\t\\t\\t\\twidth: 100%;\\n\\t\\t\\t\\tpadding-left: 34px;\\n\\t\\t\\t}\\n\\n\\t\\t\\t.loader {\\n\\t\\t\\t\\tposition: absolute;\\n\\t\\t\\t\\ttop: -4px;\\n\\t\\t\\t\\tright: 4px;\\n\\t\\t\\t\\twidth: fit-content;\\n\\n\\t\\t\\t\\t::v-deep .icon-loading::after {\\n\\t\\t\\t\\t\\theight: 16px;\\n\\t\\t\\t\\t\\twidth: 16px;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t&__selection {\\n\\t\\t\\tmin-height: 25px;\\n\\t\\t\\tpadding: 8px;\\n\\n\\t\\t\\tli {\\n\\t\\t\\t\\tmargin-right: 4px;\\n\\t\\t\\t\\tdisplay: inline-block;\\n\\n\\t\\t\\t\\t.close-icon {\\n\\t\\t\\t\\t\\tcursor: pointer;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t&__list {\\n\\t\\t\\t&__result {\\n\\t\\t\\t\\tpadding: 8px;\\n\\t\\t\\t\\tborder-radius: 100px;\\n\\t\\t\\t\\tbox-sizing: border-box;\\n\\n\\t\\t\\t\\t&, & * {\\n\\t\\t\\t\\t\\tcursor: pointer;\\n\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\t&:hover, &--selected {\\n\\t\\t\\t\\t\\tbackground: var(--color-background-dark);\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t.slot-buttons {\\n\\t\\tdisplay: flex;\\n\\t\\tjustify-content: flex-end;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Plus.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Plus.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Plus.vue?vue&type=template&id=968bec46&\"\nimport script from \"./Plus.vue?vue&type=script&lang=js&\"\nexport * from \"./Plus.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon plus-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Send.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Send.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Send.vue?vue&type=template&id=46f29e66&\"\nimport script from \"./Send.vue?vue&type=script&lang=js&\"\nexport * from \"./Send.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon send-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M2,21L23,12L2,3V10L17,12L2,14V21Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.showCollaboratorView)?_c('form',{staticClass:\"album-form\",on:{\"submit\":function($event){$event.preventDefault();return _vm.submit.apply(null, arguments)}}},[_c('div',{staticClass:\"form-inputs\"},[_c('NcTextField',{ref:\"nameInput\",attrs:{\"value\":_vm.albumName,\"type\":\"text\",\"name\":\"name\",\"required\":true,\"autofocus\":\"true\",\"placeholder\":_vm.t('photos', 'Name of the album')},on:{\"update:value\":function($event){_vm.albumName=$event}}}),_vm._v(\" \"),_c('label',[_c('MapMarker'),_c('NcTextField',{attrs:{\"value\":_vm.albumLocation,\"name\":\"location\",\"type\":\"text\",\"placeholder\":_vm.t('photos', 'Location of the album')},on:{\"update:value\":function($event){_vm.albumLocation=$event}}})],1)],1),_vm._v(\" \"),_c('div',{staticClass:\"form-buttons\"},[_c('span',{staticClass:\"left-buttons\"},[(_vm.displayBackButton)?_c('NcButton',{attrs:{\"aria-label\":_vm.t('photos', 'Go back to the previous view.'),\"type\":\"tertiary\"},on:{\"click\":_vm.back}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('photos', 'Back'))+\"\\n\\t\\t\\t\")]):_vm._e()],1),_vm._v(\" \"),_c('span',{staticClass:\"right-buttons\"},[(!_vm.editMode)?_c('NcButton',{attrs:{\"aria-label\":_vm.t('photos', 'Go to the add collaborators view.'),\"type\":\"secondary\",\"disabled\":_vm.albumName.trim() === '' || _vm.loading},on:{\"click\":function($event){_vm.showCollaboratorView = true}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('AccountMultiplePlus')]},proxy:true}],null,false,1531126728)},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('photos', 'Add collaborators'))+\"\\n\\t\\t\\t\")]):_vm._e(),_vm._v(\" \"),_c('NcButton',{attrs:{\"aria-label\":_vm.editMode ? _vm.t('photos', 'Save.') : _vm.t('photos', 'Create the album.'),\"type\":\"primary\",\"disabled\":_vm.albumName === '' || _vm.loading},on:{\"click\":function($event){return _vm.submit()}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.loading)?_c('NcLoadingIcon'):_c('Send')]},proxy:true}],null,false,3914512768)},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.editMode ? _vm.t('photos', 'Save') : _vm.t('photos', 'Create album'))+\"\\n\\t\\t\\t\")])],1)])]):_c('CollaboratorsSelectionForm',{attrs:{\"album-name\":_vm.albumName,\"allow-public-link\":false},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar collaborators = ref.collaborators;\nreturn [_c('span',{staticClass:\"left-buttons\"},[_c('NcButton',{attrs:{\"aria-label\":_vm.t('photos', 'Back to the new album form.'),\"type\":\"tertiary\"},on:{\"click\":function($event){_vm.showCollaboratorView = false}}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('photos', 'Back'))+\"\\n\\t\\t\\t\")])],1),_vm._v(\" \"),_c('span',{staticClass:\"right-buttons\"},[_c('NcButton',{attrs:{\"aria-label\":_vm.editMode ? _vm.t('photos', 'Save.') : _vm.t('photos', 'Create the album.'),\"type\":\"primary\",\"disabled\":_vm.albumName.trim() === '' || _vm.loading},on:{\"click\":function($event){return _vm.submit(collaborators)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.loading)?_c('NcLoadingIcon'):_c('Send')]},proxy:true}],null,true)},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.editMode ? _vm.t('photos', 'Save') : _vm.t('photos', 'Create album'))+\"\\n\\t\\t\\t\")])],1)]}}])})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./AccountMultiplePlus.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./AccountMultiplePlus.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AccountMultiplePlus.vue?vue&type=template&id=7e4925e6&\"\nimport script from \"./AccountMultiplePlus.vue?vue&type=script&lang=js&\"\nexport * from \"./AccountMultiplePlus.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon account-multiple-plus-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M19 17V19H7V17S7 13 13 13 19 17 19 17M16 8A3 3 0 1 0 13 11A3 3 0 0 0 16 8M19.2 13.06A5.6 5.6 0 0 1 21 17V19H24V17S24 13.55 19.2 13.06M18 5A2.91 2.91 0 0 0 17.11 5.14A5 5 0 0 1 17.11 10.86A2.91 2.91 0 0 0 18 11A3 3 0 0 0 18 5M8 10H5V7H3V10H0V12H3V15H5V12H8Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AlbumForm.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!./AlbumForm.vue?vue&type=script&lang=js&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./AlbumForm.vue?vue&type=style&index=0&id=33f82244&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./AlbumForm.vue?vue&type=style&index=0&id=33f82244&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./AlbumForm.vue?vue&type=template&id=33f82244&scoped=true&\"\nimport script from \"./AlbumForm.vue?vue&type=script&lang=js&\"\nexport * from \"./AlbumForm.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AlbumForm.vue?vue&type=style&index=0&id=33f82244&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 \"33f82244\",\n null\n \n)\n\nexport default component.exports","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Magnify.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Magnify.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Magnify.vue?vue&type=template&id=d480a606&\"\nimport script from \"./Magnify.vue?vue&type=script&lang=js&\"\nexport * from \"./Magnify.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon magnify-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M9.5,3A6.5,6.5 0 0,1 16,9.5C16,11.11 15.41,12.59 14.44,13.73L14.71,14H15.5L20.5,19L19,20.5L14,15.5V14.71L13.73,14.44C12.59,15.41 11.11,16 9.5,16A6.5,6.5 0 0,1 3,9.5A6.5,6.5 0 0,1 9.5,3M9.5,5C7,5 5,7 5,9.5C5,12 7,14 9.5,14C12,14 14,12 14,9.5C14,7 12,5 9.5,5Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ContentCopy.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ContentCopy.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ContentCopy.vue?vue&type=template&id=00bbfaf7&\"\nimport script from \"./ContentCopy.vue?vue&type=script&lang=js&\"\nexport * from \"./ContentCopy.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon content-copy-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CollaboratorsSelectionForm.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!./CollaboratorsSelectionForm.vue?vue&type=script&lang=js&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=995bfdfc&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=995bfdfc&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./CollaboratorsSelectionForm.vue?vue&type=template&id=995bfdfc&scoped=true&\"\nimport script from \"./CollaboratorsSelectionForm.vue?vue&type=script&lang=js&\"\nexport * from \"./CollaboratorsSelectionForm.vue?vue&type=script&lang=js&\"\nimport style0 from \"./CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=995bfdfc&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 \"995bfdfc\",\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:\"manage-collaborators\"},[_c('h2',{staticClass:\"manage-collaborators__title\"},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('photos', 'Add collaborators'))+\"\\n\\t\")]),_vm._v(\" \"),_c('div',{staticClass:\"manage-collaborators__subtitle\"},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('photos', 'Add users or group who can edit your album'))+\"\\n\\t\")]),_vm._v(\" \"),(_vm.allowPublicLink)?[(_vm.publicLink)?_c('NcButton',{staticClass:\"manage-collaborators__public-link-button\",attrs:{\"type\":\"tertiary-no-background\"},on:{\"click\":_vm.copyPublicLink},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.publicLinkCopied)?_c('Check'):_c('ContentCopy')]},proxy:true}],null,false,845538853)},[(_vm.publicLinkCopied)?[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('photos', 'Public link copied!'))+\"\\n\\t\\t\\t\")]:[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('photos', 'Copy public link'))+\"\\n\\t\\t\\t\")]],2):_c('NcButton',{staticClass:\"manage-collaborators__public-link-button\",attrs:{\"type\":\"tertiary-no-background\"},on:{\"click\":_vm.createPublicLinkForAlbum}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('photos', 'Share this album via link'))+\"\\n\\t\\t\")])]:_vm._e(),_vm._v(\" \"),_c('form',{staticClass:\"manage-collaborators__form\",on:{\"submit\":function($event){$event.preventDefault();}}},[_c('label',{staticClass:\"manage-collaborators__form__input\"},[_c('Magnify',{attrs:{\"size\":20}}),_vm._v(\" \"),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.searchText),expression:\"searchText\"}],attrs:{\"type\":\"search\",\"name\":\"search\",\"aria-label\":_vm.t('photos', 'Search for collaborators'),\"aria-autocomplete\":\"list\",\"aria-controls\":(\"manage-collaborators__form__selection-\" + _vm.randomId + \" manage-collaborators__form__list-\" + _vm.randomId),\"placeholder\":_vm.t('photos', 'Search users or groups')},domProps:{\"value\":(_vm.searchText)},on:{\"input\":[function($event){if($event.target.composing){ return; }_vm.searchText=$event.target.value},_vm.searchCollaborators]}}),_vm._v(\" \"),(_vm.loadingCollaborators)?_c('NcLoadingIcon'):_vm._e()],1),_vm._v(\" \"),_c('ul',{staticClass:\"manage-collaborators__form__selection\"},_vm._l((_vm.selectedCollaboratorsKey),function(collaboratorKey){return _c('li',{key:collaboratorKey},[_c('NcUserBubble',{attrs:{\"user\":_vm.availableCollaborators[collaboratorKey].source === 'users' ? _vm.availableCollaborators[collaboratorKey].id : undefined,\"display-name\":_vm.availableCollaborators[collaboratorKey].label}},[_c('template',{slot:\"title\"},[_c('Close',{attrs:{\"size\":20,\"role\":\"button\",\"aria-label\":_vm.t('photos', 'Remove {collaboratorLabel} from the collaborators list', {collaboratorLabel: _vm.availableCollaborators[collaboratorKey].label})},on:{\"click\":function($event){return _vm.unselectEntity(collaboratorKey)}}})],1)],2)],1)}),0),_vm._v(\" \"),_c('VirtualScrolling',{staticClass:\"manage-collaborators__form__list\",attrs:{\"rows\":_vm.vsItems},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar renderedRows = ref.renderedRows;\nreturn _c('ul',{attrs:{\"id\":(\"manage-collaborators__form__list-\" + _vm.randomId)}},_vm._l((renderedRows),function(collaborator){return _c('li',{key:collaborator.key,style:({height: ((collaborator.height) + \"px\")})},[_c('NcListItemIcon',{staticClass:\"manage-collaborators__form__list__result\",class:{'manage-collaborators__form__list__result--selected': collaborator.key in _vm.selectedCollaboratorsKey},attrs:{\"id\":_vm.availableCollaborators[collaborator.key].id,\"title\":_vm.availableCollaborators[collaborator.key].id,\"search\":_vm.searchText,\"display-name\":_vm.availableCollaborators[collaborator.key].label,\"is-selected\":collaborator.key in _vm.selectedCollaboratorsKey,\"aria-label\":_vm.t('photos', 'Add {collaboratorLabel} to the collaborators list', {collaboratorLabel: _vm.availableCollaborators[collaborator.key].label})},on:{\"click\":function($event){return _vm.selectEntity(collaborator.key)}}})],1)}),0)}}])})],1),_vm._v(\" \"),_c('div',{staticClass:\"slot-buttons\"},[_vm._t(\"default\",null,{\"collaborators\":_vm.selectedCollaborators})],2)],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }"],"names":["name","data","errorFetchingAlbums","loadingAlbums","mixins","AbortControllerMixin","beforeMount","fetchAlbums","computed","mapGetters","methods","client","getCurrentUser","uid","details","signal","abortController","response","albums","filter","album","filename","map","props","collaborators","collaborator","Array","isArray","genFileInfo","dateRange","JSON","parse","replace","start","moment","unix","end","dateRangeFormated","startDate","format","endDate","date","t","$store","dispatch","logger","length","status","code","showError","___CSS_LOADER_EXPORT___","push","module","id","emits","title","type","String","fillColor","default","size","Number","_vm","this","_h","$createElement","_c","_self","_b","staticClass","attrs","on","$event","$emit","$attrs","_v","_s","_e","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","showCollaboratorView","albumName","scopedSlots","_u","key","fn","ref","editMode","trim","loading","submit","proxy","preventDefault","apply","arguments","albumLocation","back","copyPublicLink","createPublicLinkForAlbum","directives","rawName","value","expression","randomId","domProps","target","composing","searchText","searchCollaborators","_l","collaboratorKey","availableCollaborators","source","undefined","label","slot","collaboratorLabel","unselectEntity","vsItems","renderedRows","style","height","class","selectedCollaboratorsKey","selectEntity","_t","selectedCollaborators"],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-src_mixins_FetchAlbumsMixin_js-node_modules_vue-material-design-icons_Plus_vue-src_components-f20774.js b/js/photos-src_mixins_FetchAlbumsMixin_js-node_modules_vue-material-design-icons_Plus_vue-src_components-f20774.js deleted file mode 100644 index b7ce1877b..000000000 --- a/js/photos-src_mixins_FetchAlbumsMixin_js-node_modules_vue-material-design-icons_Plus_vue-src_components-f20774.js +++ /dev/null @@ -1,3 +0,0 @@ -/*! For license information please see photos-src_mixins_FetchAlbumsMixin_js-node_modules_vue-material-design-icons_Plus_vue-src_components-f20774.js.LICENSE.txt */ -"use strict";(self.webpackChunkphotos=self.webpackChunkphotos||[]).push([["src_mixins_FetchAlbumsMixin_js-node_modules_vue-material-design-icons_Plus_vue-src_components-f20774"],{12945:(n,e,o)=>{o.d(e,{Z:()=>h});var a=o(20629),r=o(80351),l=o.n(r),i=o(82880),s=o(45994),c=o(81067),u=o(59537),p=o(94236);function b(t){return b="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},b(t)}function m(t,n){var e=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);n&&(o=o.filter((function(n){return Object.getOwnPropertyDescriptor(t,n).enumerable}))),e.push.apply(e,o)}return e}function d(t){for(var n=1;n\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t',details:!0,signal:n.abortController.signal});case 7:a=e.sent,r=a.data.filter((function(t){var n;return t.filename!=="/photos/".concat(null===(n=(0,s.ts)())||void 0===n?void 0:n.uid,"/albums")})).map((function(t){return""===t.props.collaborators?t.props.collaborators=[]:"object"===b(t.props.collaborators.collaborator)&&(Array.isArray(t.props.collaborators.collaborator)?t.props.collaborators=t.props.collaborators.collaborator:t.props.collaborators=[t.props.collaborators.collaborator]),t})).map((function(t){return(0,p.AX)(t)})).map((function(t){var e,o,a=JSON.parse(null!==(e=null===(o=t.dateRange)||void 0===o?void 0:o.replace(/"/g,'"'))&&void 0!==e?e:"{}");null===a.start&&(a.start=l()().unix(),a.end=l()().unix());var r={startDate:l().unix(a.start).format("MMMM YYYY"),endDate:l().unix(a.end).format("MMMM YYYY")};return d(d({},t),{},r.startDate===r.endDate?{date:r.startDate}:{date:n.t("photos","{startDate} to {endDate}",r)})})),n.$store.dispatch("addAlbums",{albums:r}),u.Z.debug("[FetchAlbumsMixin] Fetched ".concat(r.length," new files: "),r),e.next=26;break;case 13:if(e.prev=13,e.t0=e.catch(2),404!==(null===(m=e.t0.response)||void 0===m?void 0:m.status)){e.next=19;break}n.errorFetchingAlbums=404,e.next=24;break;case 19:if("ERR_CANCELED"!==e.t0.code){e.next=23;break}return e.abrupt("return");case 23:n.errorFetchingAlbums=e.t0;case 24:u.Z.error(t("photos","Failed to fetch albums list."),e.t0),(0,i.showError)(t("photos","Failed to fetch albums list."));case 26:return e.prev=26,n.loadingAlbums=!1,e.finish(26);case 29:case"end":return e.stop()}}),e,null,[[2,13,26,29]])})))()}}}},90224:(t,n,e)=>{e.d(n,{Z:()=>i});var o=e(87537),a=e.n(o),r=e(23645),l=e.n(r)()(a());l.push([t.id,".album-form[data-v-4b45ca79]{display:flex;flex-direction:column;height:350px;padding:16px}.album-form .form-title[data-v-4b45ca79]{font-weight:bold}.album-form .form-subtitle[data-v-4b45ca79]{color:var(--color-text-lighter)}.album-form .form-inputs[data-v-4b45ca79]{flex-grow:1;justify-items:flex-end}.album-form .form-inputs input[data-v-4b45ca79]{width:100%}.album-form .form-inputs label[data-v-4b45ca79]{display:flex;margin-top:16px}.album-form .form-inputs label[data-v-4b45ca79] svg{margin-right:12px}.album-form .form-buttons[data-v-4b45ca79]{display:flex;justify-content:space-between}.album-form .form-buttons .left-buttons[data-v-4b45ca79],.album-form .form-buttons .right-buttons[data-v-4b45ca79]{display:flex}.album-form .form-buttons .right-buttons[data-v-4b45ca79]{justify-content:flex-end}.album-form .form-buttons button[data-v-4b45ca79]{margin-right:16px}.left-buttons[data-v-4b45ca79]{flex-grow:1}","",{version:3,sources:["webpack://./src/components/Albums/AlbumForm.vue"],names:[],mappings:"AAkPA,6BACC,YAAA,CACA,qBAAA,CACA,YAAA,CACA,YAAA,CAEA,yCACC,gBAAA,CAGD,4CACC,+BAAA,CAGD,0CACC,WAAA,CACA,sBAAA,CAEA,gDACC,UAAA,CAGD,gDACC,YAAA,CACA,eAAA,CAEA,qDACC,iBAAA,CAKH,2CACC,YAAA,CACA,6BAAA,CAEA,mHACC,YAAA,CAGD,0DACC,wBAAA,CAGD,kDACC,iBAAA,CAKH,+BACC,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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.album-form {\n\tdisplay: flex;\n\tflex-direction: column;\n\theight: 350px;\n\tpadding: 16px;\n\n\t.form-title {\n\t\tfont-weight: bold;\n\t}\n\n\t.form-subtitle {\n\t\tcolor: var(--color-text-lighter);\n\t}\n\n\t.form-inputs {\n\t\tflex-grow: 1;\n\t\tjustify-items: flex-end;\n\n\t\tinput {\n\t\t\twidth: 100%;\n\t\t}\n\n\t\tlabel {\n\t\t\tdisplay: flex;\n\t\t\tmargin-top: 16px;\n\n\t\t\t::v-deep svg {\n\t\t\t\tmargin-right: 12px;\n\t\t\t}\n\t\t}\n\t}\n\n\t.form-buttons {\n\t\tdisplay: flex;\n\t\tjustify-content: space-between;\n\n\t\t.left-buttons, .right-buttons {\n\t\t\tdisplay: flex;\n\t\t}\n\n\t\t.right-buttons {\n\t\t\tjustify-content: flex-end;\n\t\t}\n\n\t\tbutton {\n\t\t\tmargin-right: 16px;\n\t\t}\n\t}\n}\n\n.left-buttons {\n\tflex-grow: 1;\n}\n'],sourceRoot:""}]);const i=l},17226:(t,n,e)=>{e.d(n,{Z:()=>i});var o=e(87537),a=e.n(o),r=e(23645),l=e.n(r)()(a());l.push([t.id,".manage-collaborators[data-v-34521066]{display:flex;flex-direction:column;padding:20px;height:500px}.manage-collaborators__title[data-v-34521066]{font-weight:bold}.manage-collaborators__subtitle[data-v-34521066]{color:var(--color-text-lighter)}.manage-collaborators__public-link-button[data-v-34521066]{margin:4px 0}.manage-collaborators__form[data-v-34521066]{margin-top:4px 0;display:flex;flex-direction:column}.manage-collaborators__form__input[data-v-34521066]{position:relative;display:block}.manage-collaborators__form__input input[data-v-34521066]{width:100%;padding-left:34px}.manage-collaborators__form__input .loading-icon[data-v-34521066]{position:absolute;top:8px;right:8px}.manage-collaborators__form__list[data-v-34521066]{padding:8px}.manage-collaborators__form__list__result[data-v-34521066]{padding:8px;border-radius:100px;box-sizing:border-box}.manage-collaborators__form__list__result[data-v-34521066],.manage-collaborators__form__list__result *[data-v-34521066]{cursor:pointer !important}.manage-collaborators__form__list__result[data-v-34521066]:hover{background:var(--color-background-dark)}.manage-collaborators__selection[data-v-34521066]{display:flex;flex-direction:column;margin-top:8px;flex-grow:1}.manage-collaborators__selection__item[data-v-34521066]{border-radius:var(--border-radius-pill);padding:0 8px}.manage-collaborators__selection__item[data-v-34521066]:hover{background:var(--color-background-dark)}.manage-collaborators .actions[data-v-34521066]{display:flex;margin-top:8px}.manage-collaborators .actions__public-link[data-v-34521066]{display:flex;align-items:center}.manage-collaborators .actions__slot[data-v-34521066]{flex-grow:1;display:flex;justify-content:flex-end;align-items:center}","",{version:3,sources:["webpack://./src/components/Albums/CollaboratorsSelectionForm.vue"],names:[],mappings:"AA+SA,uCACC,YAAA,CACA,qBAAA,CACA,YAAA,CACA,YAAA,CAEA,8CACC,gBAAA,CAGD,iDACC,+BAAA,CAGD,2DACC,YAAA,CAGD,6CACC,gBAAA,CACA,YAAA,CACA,qBAAA,CAEA,oDACC,iBAAA,CACA,aAAA,CAEA,0DACC,UAAA,CACA,iBAAA,CAGD,kEACC,iBAAA,CACA,OAAA,CACA,SAAA,CAIF,mDACC,WAAA,CAEA,2DACC,WAAA,CACA,mBAAA,CACA,qBAAA,CAEA,wHACC,yBAAA,CAGD,iEACC,uCAAA,CAMJ,kDACC,YAAA,CACA,qBAAA,CACA,cAAA,CACA,WAAA,CAEA,wDACC,uCAAA,CACA,aAAA,CAEA,8DACC,uCAAA,CAKH,gDACC,YAAA,CACA,cAAA,CAEA,6DACC,YAAA,CACA,kBAAA,CAGD,sDACC,WAAA,CACA,YAAA,CACA,wBAAA,CACA,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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.manage-collaborators {\n\tdisplay: flex;\n\tflex-direction: column;\n\tpadding: 20px;\n\theight: 500px;\n\n\t&__title {\n\t\tfont-weight: bold;\n\t}\n\n\t&__subtitle {\n\t\tcolor: var(--color-text-lighter);\n\t}\n\n\t&__public-link-button {\n\t\tmargin: 4px 0;\n\t}\n\n\t&__form {\n\t\tmargin-top: 4px 0;\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\n\t\t&__input {\n\t\t\tposition: relative;\n\t\t\tdisplay: block;\n\n\t\t\tinput {\n\t\t\t\twidth: 100%;\n\t\t\t\tpadding-left: 34px;\n\t\t\t}\n\n\t\t\t.loading-icon {\n\t\t\t\tposition: absolute;\n\t\t\t\ttop: calc(36px / 2 - 20px / 2);\n\t\t\t\tright: 8px;\n\t\t\t}\n\t\t}\n\n\t\t&__list {\n\t\t\tpadding: 8px;\n\n\t\t\t&__result {\n\t\t\t\tpadding: 8px;\n\t\t\t\tborder-radius: 100px;\n\t\t\t\tbox-sizing: border-box;\n\n\t\t\t\t&, & * {\n\t\t\t\t\tcursor: pointer !important;\n\t\t\t\t}\n\n\t\t\t\t&:hover {\n\t\t\t\t\tbackground: var(--color-background-dark);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t&__selection {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tmargin-top: 8px;\n\t\tflex-grow: 1;\n\n\t\t&__item {\n\t\t\tborder-radius: var(--border-radius-pill);\n\t\t\tpadding: 0 8px;\n\n\t\t\t&:hover {\n\t\t\t\tbackground: var(--color-background-dark);\n\t\t\t}\n\t\t}\n\t}\n\n\t.actions {\n\t\tdisplay: flex;\n\t\tmargin-top: 8px;\n\n\t\t&__public-link {\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\t\t}\n\n\t\t&__slot {\n\t\t\tflex-grow: 1;\n\t\t\tdisplay: flex;\n\t\t\tjustify-content: flex-end;\n\t\t\talign-items: center;\n\t\t}\n\t}\n}\n'],sourceRoot:""}]);const i=l},40502:(t,n,e)=>{e.d(n,{Z:()=>a});const o={name:"PlusIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const a=(0,e(51900).Z)(o,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("span",t._b({staticClass:"material-design-icon plus-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(n){return t.$emit("click",n)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports},75400:(t,n,e)=>{e.d(n,{Z:()=>a});const o={name:"SendIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const a=(0,e(51900).Z)(o,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("span",t._b({staticClass:"material-design-icon send-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(n){return t.$emit("click",n)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M2,21L23,12L2,3V10L17,12L2,14V21Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports},81196:(t,n,e)=>{e.d(n,{Z:()=>E});var o=e(20629),a=e(93050);const r={name:"AccountMultiplePlusIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var l=e(51900);const i=(0,l.Z)(r,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("span",t._b({staticClass:"material-design-icon account-multiple-plus-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(n){return t.$emit("click",n)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M19 17V19H7V17S7 13 13 13 19 17 19 17M16 8A3 3 0 1 0 13 11A3 3 0 0 0 16 8M19.2 13.06A5.6 5.6 0 0 1 21 17V19H24V17S24 13.55 19.2 13.06M18 5A2.91 2.91 0 0 0 17.11 5.14A5 5 0 0 1 17.11 10.86A2.91 2.91 0 0 0 18 11A3 3 0 0 0 18 5M8 10H5V7H3V10H0V12H3V15H5V12H8Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports;var s=e(75400),c=e(33476),u=e(80351),p=e.n(u),b=e(25503);function m(t,n,e,o,a,r,l){try{var i=t[r](l),s=i.value}catch(t){return void e(t)}i.done?n(s):Promise.resolve(s).then(o,a)}function d(t){return function(){var n=this,e=arguments;return new Promise((function(o,a){var r=t.apply(n,e);function l(t){m(r,o,a,l,i,"next",t)}function i(t){m(r,o,a,l,i,"throw",t)}l(void 0)}))}}function f(t,n){var e=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);n&&(o=o.filter((function(n){return Object.getOwnPropertyDescriptor(t,n).enumerable}))),e.push.apply(e,o)}return e}function A(t){for(var n=1;n0&&void 0!==arguments[0]?arguments[0]:[];""===this.albumName||this.loading||(this.editMode?this.handleUpdateAlbum():this.handleCreateAlbum(t))},handleCreateAlbum:function(){var t=arguments,n=this;return d(regeneratorRuntime.mark((function e(){var o,a;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return o=t.length>0&&void 0!==t[0]?t[0]:[],e.prev=1,n.loading=!0,e.next=5,n.createAlbum({album:{basename:n.albumName,nbItems:0,location:n.albumLocation,lastPhoto:-1,date:p()().format("MMMM YYYY"),collaborators:o}});case 5:if(a=e.sent,""===n.albumLocation&&0===o.length){e.next=10;break}return e.next=9,n.updateAlbum({albumName:n.albumName,properties:{location:n.albumLocation,collaborators:o}});case 9:a=e.sent;case 10:n.$emit("done",{album:a});case 11:return e.prev=11,n.loading=!1,e.finish(11);case 14:case"end":return e.stop()}}),e,null,[[1,,11,14]])})))()},handleUpdateAlbum:function(){var t=this;return d(regeneratorRuntime.mark((function n(){var e;return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(n.prev=0,t.loading=!0,e=A({},t.album),t.album.basename===t.albumName){n.next=7;break}return n.next=6,t.renameAlbum({currentAlbumName:t.album.basename,newAlbumName:t.albumName});case 6:e=n.sent;case 7:if(t.album.location===t.albumLocation){n.next=11;break}return n.next=10,t.updateAlbum({albumName:t.albumName,properties:{location:t.albumLocation}});case 10:e.location=n.sent;case 11:t.$emit("done",{album:e});case 12:return n.prev=12,t.loading=!1,n.finish(12);case 15:case"end":return n.stop()}}),n,null,[[0,,12,15]])})))()},back:function(){this.$emit("back")}})};var C=e(93379),v=e.n(C),_=e(7795),y=e.n(_),x=e(90569),k=e.n(x),w=e(3565),O=e.n(w),S=e(19216),N=e.n(S),P=e(44589),L=e.n(P),B=e(90224),D={};D.styleTagTransform=L(),D.setAttributes=O(),D.insert=k().bind(null,"head"),D.domAPI=y(),D.insertStyleElement=N();v()(B.Z,D);B.Z&&B.Z.locals&&B.Z.locals;const E=(0,l.Z)(h,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return t.showCollaboratorView?e("CollaboratorsSelectionForm",{attrs:{"album-name":t.albumName,"allow-public-link":!1},scopedSlots:t._u([{key:"default",fn:function(n){var o=n.collaborators;return[e("span",{staticClass:"left-buttons"},[e("NcButton",{attrs:{"aria-label":t.t("photos","Back to the new album form."),type:"tertiary"},on:{click:function(n){t.showCollaboratorView=!1}}},[t._v("\n\t\t\t\t"+t._s(t.t("photos","Back"))+"\n\t\t\t")])],1),t._v(" "),e("span",{staticClass:"right-buttons"},[e("NcButton",{attrs:{"aria-label":t.editMode?t.t("photos","Save."):t.t("photos","Create the album."),type:"primary",disabled:""===t.albumName.trim()||t.loading},on:{click:function(n){return t.submit(o)}},scopedSlots:t._u([{key:"icon",fn:function(){return[t.loading?e("NcLoadingIcon"):e("Send")]},proxy:!0}],null,!0)},[t._v("\n\t\t\t\t"+t._s(t.editMode?t.t("photos","Save"):t.t("photos","Create album"))+"\n\t\t\t")])],1)]}}])}):e("form",{staticClass:"album-form",on:{submit:function(n){return n.preventDefault(),t.submit.apply(null,arguments)}}},[e("div",{staticClass:"form-inputs"},[e("NcTextField",{ref:"nameInput",attrs:{value:t.albumName,type:"text",name:"name",required:!0,autofocus:"true",placeholder:t.t("photos","Name of the album")},on:{"update:value":function(n){t.albumName=n}}}),t._v(" "),e("label",[e("MapMarker"),e("NcTextField",{attrs:{value:t.albumLocation,name:"location",type:"text",placeholder:t.t("photos","Location of the album")},on:{"update:value":function(n){t.albumLocation=n}}})],1)],1),t._v(" "),e("div",{staticClass:"form-buttons"},[e("span",{staticClass:"left-buttons"},[t.displayBackButton?e("NcButton",{attrs:{"aria-label":t.t("photos","Go back to the previous view."),type:"tertiary"},on:{click:t.back}},[t._v("\n\t\t\t\t"+t._s(t.t("photos","Back"))+"\n\t\t\t")]):t._e()],1),t._v(" "),e("span",{staticClass:"right-buttons"},[t.sharingEnabled&&!t.editMode?e("NcButton",{attrs:{"aria-label":t.t("photos","Go to the add collaborators view."),type:"secondary",disabled:""===t.albumName.trim()||t.loading},on:{click:function(n){t.showCollaboratorView=!0}},scopedSlots:t._u([{key:"icon",fn:function(){return[e("AccountMultiplePlus")]},proxy:!0}],null,!1,1531126728)},[t._v("\n\t\t\t\t"+t._s(t.t("photos","Add collaborators"))+"\n\t\t\t")]):t._e(),t._v(" "),e("NcButton",{attrs:{"aria-label":t.editMode?t.t("photos","Save."):t.t("photos","Create the album."),type:"primary",disabled:""===t.albumName||t.loading},on:{click:function(n){return t.submit()}},scopedSlots:t._u([{key:"icon",fn:function(){return[t.loading?e("NcLoadingIcon"):e("Send")]},proxy:!0}],null,!1,3914512768)},[t._v("\n\t\t\t\t"+t._s(t.editMode?t.t("photos","Save"):t.t("photos","Create album"))+"\n\t\t\t")])],1)])])}),[],!1,null,"4b45ca79",null).exports},25503:(n,e,o)=>{o.d(e,{Z:()=>M});const a={name:"MagnifyIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var r=o(51900);const l=(0,r.Z)(a,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("span",t._b({staticClass:"material-design-icon magnify-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(n){return t.$emit("click",n)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M9.5,3A6.5,6.5 0 0,1 16,9.5C16,11.11 15.41,12.59 14.44,13.73L14.71,14H15.5L20.5,19L19,20.5L14,15.5V14.71L13.73,14.44C12.59,15.41 11.11,16 9.5,16A6.5,6.5 0 0,1 3,9.5A6.5,6.5 0 0,1 9.5,3M9.5,5C7,5 5,7 5,9.5C5,12 7,14 9.5,14C12,14 14,12 14,9.5C14,7 12,5 9.5,5Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports;var i=o(31894),s=o(26937),c=o(82880),u=o(45994),p=o(79753),b=o(33476),m=o(59537);function d(t,n,e,o,a,r,l){try{var i=t[r](l),s=i.value}catch(t){return void e(t)}i.done?n(s):Promise.resolve(s).then(o,a)}function f(t){return function(){var n=this,e=arguments;return new Promise((function(o,a){var r=t.apply(n,e);function l(t){d(r,o,a,l,i,"next",t)}function i(t){d(r,o,a,l,i,"throw",t)}l(void 0)}))}}function A(t,n){var e=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);n&&(o=o.filter((function(n){return Object.getOwnPropertyDescriptor(t,n).enumerable}))),e.push.apply(e,o)}return e}function g(t){for(var n=1;n - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ diff --git a/js/photos-src_mixins_FetchAlbumsMixin_js-node_modules_vue-material-design-icons_Plus_vue-src_components-f20774.js.map b/js/photos-src_mixins_FetchAlbumsMixin_js-node_modules_vue-material-design-icons_Plus_vue-src_components-f20774.js.map deleted file mode 100644 index 03c0b9b41..000000000 --- a/js/photos-src_mixins_FetchAlbumsMixin_js-node_modules_vue-material-design-icons_Plus_vue-src_components-f20774.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-src_mixins_FetchAlbumsMixin_js-node_modules_vue-material-design-icons_Plus_vue-src_components-f20774.js?v=af5453c2b2464303d149","mappings":";ugDAiCA,SACCA,KAAM,mBAENC,KAHc,WAIb,MAAO,CACNC,oBAAqB,KACrBC,eAAe,EAEhB,EAEDC,OAAQ,UACPC,GAGKC,YAdQ,WAcM,0IACnB,EAAKC,cADc,4CAEnB,EAEDC,SAAU,EAAF,IACJC,EAAAA,EAAAA,IAAW,CACb,YAIFC,QAAS,CACFH,YADE,WACY,0JACf,EAAKJ,cADU,iEAMlB,EAAKA,eAAgB,EACrB,EAAKD,oBAAsB,KAPT,SASKS,EAAAA,EAAAA,qBAAA,6BAAuCC,EAAAA,EAAAA,aAAvC,aAAuC,EAAkBC,IAAzD,WAAuE,CAC7FZ,KAAM,8hBAcNa,SAAS,EACTC,OAAQ,EAAKC,gBAAgBD,SAzBZ,OASZE,EATY,OA4BZC,EAASD,EAAShB,KACtBkB,QAAO,SAAAC,GAAK,aAAIA,EAAMC,WAAN,6BAA8BT,EAAAA,EAAAA,aAA9B,aAA8B,EAAkBC,IAAhD,UAAJ,IAEZS,KAAI,SAAAF,GAWJ,MAVkC,KAA9BA,EAAMG,MAAMC,cACfJ,EAAMG,MAAMC,cAAgB,GACgC,WAAlD,EAAOJ,EAAMG,MAAMC,cAAcC,gBACvCC,MAAMC,QAAQP,EAAMG,MAAMC,cAAcC,cAC3CL,EAAMG,MAAMC,cAAgBJ,EAAMG,MAAMC,cAAcC,aAEtDL,EAAMG,MAAMC,cAAgB,CAACJ,EAAMG,MAAMC,cAAcC,eAIlDL,CACP,IACAE,KAAI,SAAAF,GAAK,OAAIQ,EAAAA,EAAAA,IAAYR,EAAhB,IACTE,KAAI,SAAAF,GAAS,QACPS,EAAYC,KAAKC,MAAL,oBAAWX,EAAMS,iBAAjB,aAAW,EAAiBG,QAAQ,UAAW,YAA/C,QAAuD,MAEjD,OAApBH,EAAUI,QACbJ,EAAUI,MAAQC,MAASC,OAC3BN,EAAUO,IAAMF,MAASC,QAG1B,IAAME,EAAoB,CACzBC,UAAWJ,IAAAA,KAAYL,EAAUI,OAAOM,OAAO,aAC/CC,QAASN,IAAAA,KAAYL,EAAUO,KAAKG,OAAO,cAG5C,OACQ,EAAP,KAAYnB,GAAZ,GADGiB,EAAkBC,YAAcD,EAAkBG,QACrD,CAAmBC,KAAMJ,EAAkBC,WAE3C,CAAmBG,KAAM,EAAKC,EAAE,SAAU,2BAA4BL,IAEvE,IAEF,EAAKM,OAAOC,SAAS,YAAa,CAAE1B,OAAAA,IACpC2B,EAAAA,EAAAA,MAAA,qCAA2C3B,EAAO4B,OAAlD,gBAAwE5B,GAlEtD,qDAoEa,OAA3B,eAAMD,gBAAN,eAAgB8B,QApEF,iBAqEjB,EAAK7C,oBAAsB,IArEV,2BAsEQ,iBAAf,KAAM8C,KAtEC,mDAyEjB,EAAK9C,oBAAL,KAzEiB,QA2ElB2C,EAAAA,EAAAA,MAAaH,EAAE,SAAU,gCAAzB,OACAO,EAAAA,EAAAA,WAAUP,EAAE,SAAU,iCA5EJ,yBA8ElB,EAAKvC,eAAgB,EA9EH,8EAgFnB,yECvIC+C,QAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,u5BAAw5B,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,mDAAmD,MAAQ,GAAG,SAAW,uQAAuQ,eAAiB,CAAC,swDAAs1D,WAAa,MAEjqG,+ECJIH,QAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,osDAAqsD,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,oEAAoE,MAAQ,GAAG,SAAW,6fAA6f,eAAiB,CAAC,qnFAAqsF,WAAa,MAEpkK,4CCaA,MCpBwG,EDoBxG,CACErD,KAAM,WACNsD,MAAO,CAAC,SACR/B,MAAO,CACLgC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,cACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,iCAAiCC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,8CAA8C,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GAC3jB,IDUpB,EACA,KACA,KACA,MAI8B,0CEEhC,MCpBwG,EDoBxG,CACE7E,KAAM,WACNsD,MAAO,CAAC,SACR/B,MAAO,CACLgC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,cACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,iCAAiCC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,sCAAsC,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GACnjB,IDUpB,EACA,KACA,KACA,MAI8B,0CElBhC,0BCoBA,MCpBuH,EDoBvH,CACE7E,KAAM,0BACNsD,MAAO,CAAC,SACR/B,MAAO,CACLgC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,qBEff,SAXgB,OACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,kDAAkDC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,qQAAqQ,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GACnyB,IDUpB,EACA,KACA,KACA,MAI8B,ojCE0FhC,MC5GgL,ED4GhL,CACA,iBAEA,YACA,cACA,sBACA,SACA,oBACA,8BACA,0BACA,gCAGA,OACA,OACA,YACA,cAEA,mBACA,aACA,aAIA,KAxBA,WAyBA,OACA,wBACA,aACA,iBACA,WAEA,EAEA,UAIA,SAJA,WAKA,wBACA,EAKA,eAXA,WAYA,wBACA,GAGA,QAjDA,WAiDA,WACA,gBACA,mCACA,wCAGA,2BACA,8DACA,GACA,EAEA,gBACA,sDADA,IAGA,OAHA,WAGA,gEACA,oCAIA,cACA,yBAEA,0BAEA,EAEA,kBAfA,WAeA,kNAEA,aAFA,SAGA,eACA,OACA,qBACA,UACA,yBACA,aACA,+BACA,mBAVA,UAGA,EAHA,OAcA,mCAdA,iCAeA,cACA,CACA,sBACA,YACA,yBACA,mBApBA,OAeA,EAfA,eAyBA,0BAzBA,yBA2BA,aA3BA,4EA6BA,EAEA,kBA9CA,WA8CA,4JAEA,aAEA,EAJA,KAIA,SAEA,+BANA,gCAOA,4EAPA,OAOA,EAPA,iBAUA,mCAVA,kCAWA,6EAXA,QAWA,WAXA,eAcA,0BAdA,yBAgBA,aAhBA,4EAkBA,EAEA,KAlEA,WAmEA,kBACA,0IEjOIC,EAAU,CAAC,EAEfA,EAAQC,kBAAoB,IAC5BD,EAAQE,cAAgB,IAElBF,EAAQG,OAAS,SAAc,KAAM,QAE3CH,EAAQI,OAAS,IACjBJ,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKJ,KAAW,YAAiB,WCPlD,SAXgB,OACd,GRTW,WAAa,IAAIhB,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAASF,EAAIsB,qBAAm/DlB,EAAG,6BAA6B,CAACI,MAAM,CAAC,aAAaR,EAAIuB,UAAU,qBAAoB,GAAOC,YAAYxB,EAAIyB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASC,GACtuE,IAAIlE,EAAgBkE,EAAIlE,cACxB,MAAO,CAAC0C,EAAG,OAAO,CAACG,YAAY,gBAAgB,CAACH,EAAG,WAAW,CAACI,MAAM,CAAC,aAAaR,EAAIpB,EAAE,SAAU,+BAA+B,KAAO,YAAY6B,GAAG,CAAC,MAAQ,SAASC,GAAQV,EAAIsB,sBAAuB,CAAK,IAAI,CAACtB,EAAIa,GAAG,aAAab,EAAIc,GAAGd,EAAIpB,EAAE,SAAU,SAAS,eAAe,GAAGoB,EAAIa,GAAG,KAAKT,EAAG,OAAO,CAACG,YAAY,iBAAiB,CAACH,EAAG,WAAW,CAACI,MAAM,CAAC,aAAaR,EAAI6B,SAAW7B,EAAIpB,EAAE,SAAU,SAAWoB,EAAIpB,EAAE,SAAU,qBAAqB,KAAO,UAAU,SAAoC,KAAzBoB,EAAIuB,UAAUO,QAAiB9B,EAAI+B,SAAStB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIgC,OAAOtE,EAAc,GAAG8D,YAAYxB,EAAIyB,GAAG,CAAC,CAACC,IAAI,OAAOC,GAAG,WAAW,MAAO,CAAE3B,EAAW,QAAEI,EAAG,iBAAiBA,EAAG,QAAQ,EAAE6B,OAAM,IAAO,MAAK,IAAO,CAACjC,EAAIa,GAAG,aAAab,EAAIc,GAAGd,EAAI6B,SAAW7B,EAAIpB,EAAE,SAAU,QAAUoB,EAAIpB,EAAE,SAAU,iBAAiB,eAAe,GAAG,OAFtsBwB,EAAG,OAAO,CAACG,YAAY,aAAaE,GAAG,CAAC,OAAS,SAASC,GAAgC,OAAxBA,EAAOwB,iBAAwBlC,EAAIgC,OAAOG,MAAM,KAAMC,UAAU,IAAI,CAAChC,EAAG,MAAM,CAACG,YAAY,eAAe,CAACH,EAAG,cAAc,CAACwB,IAAI,YAAYpB,MAAM,CAAC,MAAQR,EAAIuB,UAAU,KAAO,OAAO,KAAO,OAAO,UAAW,EAAK,UAAY,OAAO,YAAcvB,EAAIpB,EAAE,SAAU,sBAAsB6B,GAAG,CAAC,eAAe,SAASC,GAAQV,EAAIuB,UAAUb,CAAM,KAAKV,EAAIa,GAAG,KAAKT,EAAG,QAAQ,CAACA,EAAG,aAAaA,EAAG,cAAc,CAACI,MAAM,CAAC,MAAQR,EAAIqC,cAAc,KAAO,WAAW,KAAO,OAAO,YAAcrC,EAAIpB,EAAE,SAAU,0BAA0B6B,GAAG,CAAC,eAAe,SAASC,GAAQV,EAAIqC,cAAc3B,CAAM,MAAM,IAAI,GAAGV,EAAIa,GAAG,KAAKT,EAAG,MAAM,CAACG,YAAY,gBAAgB,CAACH,EAAG,OAAO,CAACG,YAAY,gBAAgB,CAAEP,EAAqB,kBAAEI,EAAG,WAAW,CAACI,MAAM,CAAC,aAAaR,EAAIpB,EAAE,SAAU,iCAAiC,KAAO,YAAY6B,GAAG,CAAC,MAAQT,EAAIsC,OAAO,CAACtC,EAAIa,GAAG,aAAab,EAAIc,GAAGd,EAAIpB,EAAE,SAAU,SAAS,cAAcoB,EAAIe,MAAM,GAAGf,EAAIa,GAAG,KAAKT,EAAG,OAAO,CAACG,YAAY,iBAAiB,CAAEP,EAAIuC,iBAAmBvC,EAAI6B,SAAUzB,EAAG,WAAW,CAACI,MAAM,CAAC,aAAaR,EAAIpB,EAAE,SAAU,qCAAqC,KAAO,YAAY,SAAoC,KAAzBoB,EAAIuB,UAAUO,QAAiB9B,EAAI+B,SAAStB,GAAG,CAAC,MAAQ,SAASC,GAAQV,EAAIsB,sBAAuB,CAAI,GAAGE,YAAYxB,EAAIyB,GAAG,CAAC,CAACC,IAAI,OAAOC,GAAG,WAAW,MAAO,CAACvB,EAAG,uBAAuB,EAAE6B,OAAM,IAAO,MAAK,EAAM,aAAa,CAACjC,EAAIa,GAAG,aAAab,EAAIc,GAAGd,EAAIpB,EAAE,SAAU,sBAAsB,cAAcoB,EAAIe,KAAKf,EAAIa,GAAG,KAAKT,EAAG,WAAW,CAACI,MAAM,CAAC,aAAaR,EAAI6B,SAAW7B,EAAIpB,EAAE,SAAU,SAAWoB,EAAIpB,EAAE,SAAU,qBAAqB,KAAO,UAAU,SAA6B,KAAlBoB,EAAIuB,WAAoBvB,EAAI+B,SAAStB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIgC,QAAQ,GAAGR,YAAYxB,EAAIyB,GAAG,CAAC,CAACC,IAAI,OAAOC,GAAG,WAAW,MAAO,CAAE3B,EAAW,QAAEI,EAAG,iBAAiBA,EAAG,QAAQ,EAAE6B,OAAM,IAAO,MAAK,EAAM,aAAa,CAACjC,EAAIa,GAAG,aAAab,EAAIc,GAAGd,EAAI6B,SAAW7B,EAAIpB,EAAE,SAAU,QAAUoB,EAAIpB,EAAE,SAAU,iBAAiB,eAAe,MAE1wC,GAClzB,IQSpB,EACA,KACA,WACA,MAI8B,0CCChC,MCpB2G,EDoB3G,CACE1C,KAAM,cACNsD,MAAO,CAAC,SACR/B,MAAO,CACLgC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,qBEff,SAXgB,OACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,oCAAoCC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,sQAAsQ,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GACtxB,IDUpB,EACA,KACA,KACA,MAI8B,4kCE+GhC,MACA,CACA,OACA,SAKA,MCzIiM,EDyIjM,CACA,kCAEA,YACA,UACA,gBACA,8BACA,oBACA,gCACA,0BACA,uBAGA,OACA,WACA,YACA,aAGA,eACA,WACA,8BAGA,YACA,YACA,YAGA,iBACA,aACA,aAIA,KAnCA,WAoCA,OACA,cACA,0BACA,6BACA,wBACA,wBACA,kDACA,oBACA,QACA,kFAGA,EAEA,UAIA,cAJA,WAIA,WACA,iCACA,oDACA,yEACA,sEACA,2CACA,EAKA,sBAfA,WAeA,WACA,4FACA,GAGA,QAtEA,WAuEA,2BACA,2HACA,mCACA,6BACA,mBACA,4FAEA,EAEA,SAIA,oBAJA,WAIA,8JAEA,oDAFA,wDAMA,0BANA,SAOA,uDACA,QACA,oBACA,4BACA,YACA,OACA,YAbA,OAOA,EAPA,OAkBA,uCACA,iBACA,SACA,iBACA,YACA,2BACA,MACA,aACA,4BAIA,6BACA,IACA,gCACA,0BACA,uBACA,6FAnCA,kDAsCA,kCACA,mEACA,kEAxCA,yBA0CA,0BA1CA,8EA4CA,EAGA,yBAnDA,WAmDA,mKACA,oFADA,4CAEA,EAEA,iBAvDA,WAuDA,mKACA,uFADA,4CAEA,EAEA,eA3DA,WA2DA,0JACA,4CADA,OAEA,sBACA,uBACA,qBACA,QALA,4CAMA,EAEA,aAnEA,SAmEA,GACA,6CAIA,wCACA,uCACA,EAEA,eA5EA,SA4EA,GACA,gDACA,0CACA,yIE7RIC,EAAU,CAAC,EAEfA,EAAQC,kBAAoB,IAC5BD,EAAQE,cAAgB,IAElBF,EAAQG,OAAS,SAAc,KAAM,QAE3CH,EAAQI,OAAS,IACjBJ,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKJ,KAAW,YAAiB,WCPlD,SAXgB,OACd,GCTW,WAAa,IAAIhB,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACG,YAAY,wBAAwB,CAACH,EAAG,KAAK,CAACG,YAAY,+BAA+B,CAACP,EAAIa,GAAG,SAASb,EAAIc,GAAGd,EAAIpB,EAAE,SAAU,sBAAsB,UAAUoB,EAAIa,GAAG,KAAKT,EAAG,MAAM,CAACG,YAAY,kCAAkC,CAACP,EAAIa,GAAG,SAASb,EAAIc,GAAGd,EAAIpB,EAAE,SAAU,iDAAiD,UAAUoB,EAAIa,GAAG,KAAKT,EAAG,OAAO,CAACG,YAAY,6BAA6BE,GAAG,CAAC,OAAS,SAASC,GAAQA,EAAOwB,gBAAiB,IAAI,CAAC9B,EAAG,YAAY,CAACwB,IAAI,UAAUpB,MAAM,CAAC,aAAY,EAAK,SAAW,IAAI,CAACJ,EAAG,QAAQ,CAACG,YAAY,oCAAoCC,MAAM,CAAC,KAAO,WAAWgC,KAAK,WAAW,CAACpC,EAAG,cAAc,CAACI,MAAM,CAAC,MAAQR,EAAIyC,WAAW,aAAe,MAAM,KAAO,SAAS,KAAO,SAAS,aAAazC,EAAIpB,EAAE,SAAU,4BAA4B,oBAAoB,OAAO,gBAAiB,yCAA2CoB,EAAI0C,SAAW,qCAAuC1C,EAAI0C,SAAU,YAAc1C,EAAIpB,EAAE,SAAU,4BAA4B6B,GAAG,CAAC,eAAe,SAASC,GAAQV,EAAIyC,WAAW/B,CAAM,EAAE,MAAQV,EAAI2C,sBAAsB,CAACvC,EAAG,UAAU,CAACI,MAAM,CAAC,KAAO,OAAO,GAAGR,EAAIa,GAAG,KAAMb,EAAwB,qBAAEI,EAAG,iBAAiBJ,EAAIe,MAAM,GAAGf,EAAIa,GAAG,KAAKT,EAAG,KAAK,CAACG,YAAY,mCAAmCC,MAAM,CAAC,GAAM,oCAAsCR,EAAI0C,WAAY1C,EAAI4C,GAAI5C,EAAiB,eAAE,SAAS6C,GAAQ,OAAOzC,EAAG,KAAK,CAACsB,IAAImB,EAAOnB,KAAK,CAACtB,EAAG,IAAI,CAACA,EAAG,iBAAiB,CAACG,YAAY,2CAA2CC,MAAM,CAAC,GAAKR,EAAI8C,uBAAuBD,EAAOnB,KAAKnC,GAAG,MAAQS,EAAI8C,uBAAuBD,EAAOnB,KAAKnC,GAAG,OAASS,EAAIyC,WAAW,eAAezC,EAAI8C,uBAAuBD,EAAOnB,KAAKqB,MAAM,aAAa/C,EAAIpB,EAAE,SAAU,oDAAqD,CAACoE,kBAAmBhD,EAAI8C,uBAAuBD,EAAOnB,KAAKqB,SAAStC,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIiD,aAAaJ,EAAOnB,IAAI,MAAM,IAAI,IAAG,MAAM,GAAG1B,EAAIa,GAAG,KAAKT,EAAG,KAAK,CAACG,YAAY,mCAAmCP,EAAI4C,GAAI5C,EAA6B,2BAAE,SAASkD,GAAiB,OAAO9C,EAAG,KAAK,CAACsB,IAAIwB,EAAgB3C,YAAY,yCAAyC,CAACH,EAAG,iBAAiB,CAACI,MAAM,CAAC,GAAKR,EAAI8C,uBAAuBI,GAAiB3D,GAAG,MAAQS,EAAI8C,uBAAuBI,GAAiB3D,GAAG,eAAeS,EAAI8C,uBAAuBI,GAAiBH,MAAM,aAAa/C,EAAIpB,EAAE,SAAU,yDAA0D,CAACoE,kBAAmBhD,EAAI8C,uBAAuBI,GAAiBH,UAAU,CAAC3C,EAAG,WAAW,CAACI,MAAM,CAAC,KAAO,WAAW,aAAaR,EAAIpB,EAAE,SAAU,yDAA0D,CAACoE,kBAAmBhD,EAAI8C,uBAAuBI,GAAiBH,SAAStC,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAImD,eAAeD,EAAgB,IAAI,CAAC9C,EAAG,QAAQ,CAACI,MAAM,CAAC,KAAO,OAAO,KAAO,IAAIgC,KAAK,UAAU,IAAI,IAAI,EAAE,IAAG,GAAGxC,EAAIa,GAAG,KAAKT,EAAG,MAAM,CAACG,YAAY,WAAW,CAAEP,EAAmB,gBAAEI,EAAG,MAAM,CAACG,YAAY,wBAAwB,CAAEP,EAAc,WAAE,CAACI,EAAG,WAAW,CAACG,YAAY,2CAA2CC,MAAM,CAAC,KAAO,0BAA0BC,GAAG,CAAC,MAAQT,EAAIoD,gBAAgB5B,YAAYxB,EAAIyB,GAAG,CAAC,CAACC,IAAI,OAAOC,GAAG,WAAW,MAAO,CAAE3B,EAAoB,iBAAEI,EAAG,SAASA,EAAG,eAAe,EAAE6B,OAAM,IAAO,MAAK,EAAM,YAAY,CAAEjC,EAAoB,iBAAE,CAACA,EAAIa,GAAG,iBAAiBb,EAAIc,GAAGd,EAAIpB,EAAE,SAAU,wBAAwB,iBAAiB,CAACoB,EAAIa,GAAG,iBAAiBb,EAAIc,GAAGd,EAAIpB,EAAE,SAAU,qBAAqB,kBAAkB,GAAGoB,EAAIa,GAAG,KAAKT,EAAG,WAAW,CAACK,GAAG,CAAC,MAAQT,EAAIqD,mBAAmB,CAACjD,EAAG,QAAQ,CAACI,MAAM,CAAC,KAAO,QAAQgC,KAAK,UAAU,IAAIpC,EAAG,WAAW,CAACG,YAAY,2CAA2CC,MAAM,CAAC,KAAO,0BAA0BC,GAAG,CAAC,MAAQT,EAAIsD,2BAA2B,CAAClD,EAAG,QAAQ,CAACI,MAAM,CAAC,KAAO,QAAQgC,KAAK,SAASxC,EAAIa,GAAG,aAAab,EAAIc,GAAGd,EAAIpB,EAAE,SAAU,0BAA0B,aAAa,IAAI,GAAGoB,EAAIe,KAAKf,EAAIa,GAAG,KAAKT,EAAG,MAAM,CAACG,YAAY,iBAAiB,CAACP,EAAIuD,GAAG,UAAU,KAAK,CAAC,cAAgBvD,EAAIwD,yBAAyB,MAAM,GACvgI,IDWpB,EACA,KACA,WACA,MAI8B","sources":["webpack:///photos/src/mixins/FetchAlbumsMixin.js","webpack:///photos/src/components/Albums/AlbumForm.vue?vue&type=style&index=0&id=4b45ca79&lang=scss&scoped=true&","webpack:///photos/src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=34521066&lang=scss&scoped=true&","webpack:///photos/node_modules/vue-material-design-icons/Plus.vue","webpack:///photos/node_modules/vue-material-design-icons/Plus.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/Plus.vue?80b4","webpack:///photos/node_modules/vue-material-design-icons/Plus.vue?vue&type=template&id=968bec46&","webpack:///photos/node_modules/vue-material-design-icons/Send.vue","webpack:///photos/node_modules/vue-material-design-icons/Send.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/Send.vue?0295","webpack:///photos/node_modules/vue-material-design-icons/Send.vue?vue&type=template&id=46f29e66&","webpack:///photos/src/components/Albums/AlbumForm.vue?vue&type=template&id=4b45ca79&scoped=true&","webpack:///photos/node_modules/vue-material-design-icons/AccountMultiplePlus.vue","webpack:///photos/node_modules/vue-material-design-icons/AccountMultiplePlus.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/AccountMultiplePlus.vue?e9b5","webpack:///photos/node_modules/vue-material-design-icons/AccountMultiplePlus.vue?vue&type=template&id=7e4925e6&","webpack:///photos/src/components/Albums/AlbumForm.vue","webpack:///photos/src/components/Albums/AlbumForm.vue?vue&type=script&lang=js&","webpack://photos/./src/components/Albums/AlbumForm.vue?ca78","webpack://photos/./src/components/Albums/AlbumForm.vue?8dc6","webpack:///photos/node_modules/vue-material-design-icons/Magnify.vue","webpack:///photos/node_modules/vue-material-design-icons/Magnify.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/Magnify.vue?0775","webpack:///photos/node_modules/vue-material-design-icons/Magnify.vue?vue&type=template&id=d480a606&","webpack:///photos/src/components/Albums/CollaboratorsSelectionForm.vue","webpack:///photos/src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=script&lang=js&","webpack://photos/./src/components/Albums/CollaboratorsSelectionForm.vue?b889","webpack://photos/./src/components/Albums/CollaboratorsSelectionForm.vue?e975","webpack:///photos/src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=template&id=34521066&scoped=true&"],"sourcesContent":["/**\n * @copyright Copyright (c) 2022 Louis Chemineau \n *\n * @author Louis Chemineau \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 .\n *\n */\n\nimport { mapGetters } from 'vuex'\n\nimport moment from '@nextcloud/moment'\nimport { showError } from '@nextcloud/dialogs'\nimport { getCurrentUser } from '@nextcloud/auth'\n\nimport client from '../services/DavClient.js'\nimport logger from '../services/logger.js'\nimport { genFileInfo } from '../utils/fileUtils.js'\nimport AbortControllerMixin from './AbortControllerMixin.js'\n\nexport default {\n\tname: 'FetchAlbumsMixin',\n\n\tdata() {\n\t\treturn {\n\t\t\terrorFetchingAlbums: null,\n\t\t\tloadingAlbums: false,\n\t\t}\n\t},\n\n\tmixins: [\n\t\tAbortControllerMixin,\n\t],\n\n\tasync beforeMount() {\n\t\tthis.fetchAlbums()\n\t},\n\n\tcomputed: {\n\t\t...mapGetters([\n\t\t\t'albums',\n\t\t]),\n\t},\n\n\tmethods: {\n\t\tasync fetchAlbums() {\n\t\t\tif (this.loadingAlbums) {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\ttry {\n\t\t\t\tthis.loadingAlbums = true\n\t\t\t\tthis.errorFetchingAlbums = null\n\n\t\t\t\tconst response = await client.getDirectoryContents(`/photos/${getCurrentUser()?.uid}/albums`, {\n\t\t\t\t\tdata: `\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t`,\n\t\t\t\t\tdetails: true,\n\t\t\t\t\tsignal: this.abortController.signal,\n\t\t\t\t})\n\n\t\t\t\tconst albums = response.data\n\t\t\t\t\t.filter(album => album.filename !== `/photos/${getCurrentUser()?.uid}/albums`)\n\t\t\t\t\t// Ensure that we have a proper collaborators array.\n\t\t\t\t\t.map(album => {\n\t\t\t\t\t\tif (album.props.collaborators === '') {\n\t\t\t\t\t\t\talbum.props.collaborators = []\n\t\t\t\t\t\t} else if (typeof album.props.collaborators.collaborator === 'object') {\n\t\t\t\t\t\t\tif (Array.isArray(album.props.collaborators.collaborator)) {\n\t\t\t\t\t\t\t\talbum.props.collaborators = album.props.collaborators.collaborator\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\talbum.props.collaborators = [album.props.collaborators.collaborator]\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\treturn album\n\t\t\t\t\t})\n\t\t\t\t\t.map(album => genFileInfo(album))\n\t\t\t\t\t.map(album => {\n\t\t\t\t\t\tconst dateRange = JSON.parse(album.dateRange?.replace(/"/g, '\"') ?? '{}')\n\n\t\t\t\t\t\tif (dateRange.start === null) {\n\t\t\t\t\t\t\tdateRange.start = moment().unix()\n\t\t\t\t\t\t\tdateRange.end = moment().unix()\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tconst dateRangeFormated = {\n\t\t\t\t\t\t\tstartDate: moment.unix(dateRange.start).format('MMMM YYYY'),\n\t\t\t\t\t\t\tendDate: moment.unix(dateRange.end).format('MMMM YYYY'),\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (dateRangeFormated.startDate === dateRangeFormated.endDate) {\n\t\t\t\t\t\t\treturn { ...album, date: dateRangeFormated.startDate }\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn { ...album, date: this.t('photos', '{startDate} to {endDate}', dateRangeFormated) }\n\t\t\t\t\t\t}\n\t\t\t\t\t})\n\n\t\t\t\tthis.$store.dispatch('addAlbums', { albums })\n\t\t\t\tlogger.debug(`[FetchAlbumsMixin] Fetched ${albums.length} new files: `, albums)\n\t\t\t} catch (error) {\n\t\t\t\tif (error.response?.status === 404) {\n\t\t\t\t\tthis.errorFetchingAlbums = 404\n\t\t\t\t} else if (error.code === 'ERR_CANCELED') {\n\t\t\t\t\treturn\n\t\t\t\t} else {\n\t\t\t\t\tthis.errorFetchingAlbums = error\n\t\t\t\t}\n\t\t\t\tlogger.error(t('photos', 'Failed to fetch albums list.'), error)\n\t\t\t\tshowError(t('photos', 'Failed to fetch albums list.'))\n\t\t\t} finally {\n\t\t\t\tthis.loadingAlbums = false\n\t\t\t}\n\t\t},\n\t},\n}\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".album-form[data-v-4b45ca79]{display:flex;flex-direction:column;height:350px;padding:16px}.album-form .form-title[data-v-4b45ca79]{font-weight:bold}.album-form .form-subtitle[data-v-4b45ca79]{color:var(--color-text-lighter)}.album-form .form-inputs[data-v-4b45ca79]{flex-grow:1;justify-items:flex-end}.album-form .form-inputs input[data-v-4b45ca79]{width:100%}.album-form .form-inputs label[data-v-4b45ca79]{display:flex;margin-top:16px}.album-form .form-inputs label[data-v-4b45ca79] svg{margin-right:12px}.album-form .form-buttons[data-v-4b45ca79]{display:flex;justify-content:space-between}.album-form .form-buttons .left-buttons[data-v-4b45ca79],.album-form .form-buttons .right-buttons[data-v-4b45ca79]{display:flex}.album-form .form-buttons .right-buttons[data-v-4b45ca79]{justify-content:flex-end}.album-form .form-buttons button[data-v-4b45ca79]{margin-right:16px}.left-buttons[data-v-4b45ca79]{flex-grow:1}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/Albums/AlbumForm.vue\"],\"names\":[],\"mappings\":\"AAkPA,6BACC,YAAA,CACA,qBAAA,CACA,YAAA,CACA,YAAA,CAEA,yCACC,gBAAA,CAGD,4CACC,+BAAA,CAGD,0CACC,WAAA,CACA,sBAAA,CAEA,gDACC,UAAA,CAGD,gDACC,YAAA,CACA,eAAA,CAEA,qDACC,iBAAA,CAKH,2CACC,YAAA,CACA,6BAAA,CAEA,mHACC,YAAA,CAGD,0DACC,wBAAA,CAGD,kDACC,iBAAA,CAKH,+BACC,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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.album-form {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\theight: 350px;\\n\\tpadding: 16px;\\n\\n\\t.form-title {\\n\\t\\tfont-weight: bold;\\n\\t}\\n\\n\\t.form-subtitle {\\n\\t\\tcolor: var(--color-text-lighter);\\n\\t}\\n\\n\\t.form-inputs {\\n\\t\\tflex-grow: 1;\\n\\t\\tjustify-items: flex-end;\\n\\n\\t\\tinput {\\n\\t\\t\\twidth: 100%;\\n\\t\\t}\\n\\n\\t\\tlabel {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tmargin-top: 16px;\\n\\n\\t\\t\\t::v-deep svg {\\n\\t\\t\\t\\tmargin-right: 12px;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t.form-buttons {\\n\\t\\tdisplay: flex;\\n\\t\\tjustify-content: space-between;\\n\\n\\t\\t.left-buttons, .right-buttons {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t}\\n\\n\\t\\t.right-buttons {\\n\\t\\t\\tjustify-content: flex-end;\\n\\t\\t}\\n\\n\\t\\tbutton {\\n\\t\\t\\tmargin-right: 16px;\\n\\t\\t}\\n\\t}\\n}\\n\\n.left-buttons {\\n\\tflex-grow: 1;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".manage-collaborators[data-v-34521066]{display:flex;flex-direction:column;padding:20px;height:500px}.manage-collaborators__title[data-v-34521066]{font-weight:bold}.manage-collaborators__subtitle[data-v-34521066]{color:var(--color-text-lighter)}.manage-collaborators__public-link-button[data-v-34521066]{margin:4px 0}.manage-collaborators__form[data-v-34521066]{margin-top:4px 0;display:flex;flex-direction:column}.manage-collaborators__form__input[data-v-34521066]{position:relative;display:block}.manage-collaborators__form__input input[data-v-34521066]{width:100%;padding-left:34px}.manage-collaborators__form__input .loading-icon[data-v-34521066]{position:absolute;top:8px;right:8px}.manage-collaborators__form__list[data-v-34521066]{padding:8px}.manage-collaborators__form__list__result[data-v-34521066]{padding:8px;border-radius:100px;box-sizing:border-box}.manage-collaborators__form__list__result[data-v-34521066],.manage-collaborators__form__list__result *[data-v-34521066]{cursor:pointer !important}.manage-collaborators__form__list__result[data-v-34521066]:hover{background:var(--color-background-dark)}.manage-collaborators__selection[data-v-34521066]{display:flex;flex-direction:column;margin-top:8px;flex-grow:1}.manage-collaborators__selection__item[data-v-34521066]{border-radius:var(--border-radius-pill);padding:0 8px}.manage-collaborators__selection__item[data-v-34521066]:hover{background:var(--color-background-dark)}.manage-collaborators .actions[data-v-34521066]{display:flex;margin-top:8px}.manage-collaborators .actions__public-link[data-v-34521066]{display:flex;align-items:center}.manage-collaborators .actions__slot[data-v-34521066]{flex-grow:1;display:flex;justify-content:flex-end;align-items:center}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/Albums/CollaboratorsSelectionForm.vue\"],\"names\":[],\"mappings\":\"AA+SA,uCACC,YAAA,CACA,qBAAA,CACA,YAAA,CACA,YAAA,CAEA,8CACC,gBAAA,CAGD,iDACC,+BAAA,CAGD,2DACC,YAAA,CAGD,6CACC,gBAAA,CACA,YAAA,CACA,qBAAA,CAEA,oDACC,iBAAA,CACA,aAAA,CAEA,0DACC,UAAA,CACA,iBAAA,CAGD,kEACC,iBAAA,CACA,OAAA,CACA,SAAA,CAIF,mDACC,WAAA,CAEA,2DACC,WAAA,CACA,mBAAA,CACA,qBAAA,CAEA,wHACC,yBAAA,CAGD,iEACC,uCAAA,CAMJ,kDACC,YAAA,CACA,qBAAA,CACA,cAAA,CACA,WAAA,CAEA,wDACC,uCAAA,CACA,aAAA,CAEA,8DACC,uCAAA,CAKH,gDACC,YAAA,CACA,cAAA,CAEA,6DACC,YAAA,CACA,kBAAA,CAGD,sDACC,WAAA,CACA,YAAA,CACA,wBAAA,CACA,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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.manage-collaborators {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\tpadding: 20px;\\n\\theight: 500px;\\n\\n\\t&__title {\\n\\t\\tfont-weight: bold;\\n\\t}\\n\\n\\t&__subtitle {\\n\\t\\tcolor: var(--color-text-lighter);\\n\\t}\\n\\n\\t&__public-link-button {\\n\\t\\tmargin: 4px 0;\\n\\t}\\n\\n\\t&__form {\\n\\t\\tmargin-top: 4px 0;\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\n\\t\\t&__input {\\n\\t\\t\\tposition: relative;\\n\\t\\t\\tdisplay: block;\\n\\n\\t\\t\\tinput {\\n\\t\\t\\t\\twidth: 100%;\\n\\t\\t\\t\\tpadding-left: 34px;\\n\\t\\t\\t}\\n\\n\\t\\t\\t.loading-icon {\\n\\t\\t\\t\\tposition: absolute;\\n\\t\\t\\t\\ttop: calc(36px / 2 - 20px / 2);\\n\\t\\t\\t\\tright: 8px;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t&__list {\\n\\t\\t\\tpadding: 8px;\\n\\n\\t\\t\\t&__result {\\n\\t\\t\\t\\tpadding: 8px;\\n\\t\\t\\t\\tborder-radius: 100px;\\n\\t\\t\\t\\tbox-sizing: border-box;\\n\\n\\t\\t\\t\\t&, & * {\\n\\t\\t\\t\\t\\tcursor: pointer !important;\\n\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\t&:hover {\\n\\t\\t\\t\\t\\tbackground: var(--color-background-dark);\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t&__selection {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\tmargin-top: 8px;\\n\\t\\tflex-grow: 1;\\n\\n\\t\\t&__item {\\n\\t\\t\\tborder-radius: var(--border-radius-pill);\\n\\t\\t\\tpadding: 0 8px;\\n\\n\\t\\t\\t&:hover {\\n\\t\\t\\t\\tbackground: var(--color-background-dark);\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t.actions {\\n\\t\\tdisplay: flex;\\n\\t\\tmargin-top: 8px;\\n\\n\\t\\t&__public-link {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\talign-items: center;\\n\\t\\t}\\n\\n\\t\\t&__slot {\\n\\t\\t\\tflex-grow: 1;\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tjustify-content: flex-end;\\n\\t\\t\\talign-items: center;\\n\\t\\t}\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Plus.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Plus.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Plus.vue?vue&type=template&id=968bec46&\"\nimport script from \"./Plus.vue?vue&type=script&lang=js&\"\nexport * from \"./Plus.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon plus-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Send.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Send.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Send.vue?vue&type=template&id=46f29e66&\"\nimport script from \"./Send.vue?vue&type=script&lang=js&\"\nexport * from \"./Send.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon send-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M2,21L23,12L2,3V10L17,12L2,14V21Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.showCollaboratorView)?_c('form',{staticClass:\"album-form\",on:{\"submit\":function($event){$event.preventDefault();return _vm.submit.apply(null, arguments)}}},[_c('div',{staticClass:\"form-inputs\"},[_c('NcTextField',{ref:\"nameInput\",attrs:{\"value\":_vm.albumName,\"type\":\"text\",\"name\":\"name\",\"required\":true,\"autofocus\":\"true\",\"placeholder\":_vm.t('photos', 'Name of the album')},on:{\"update:value\":function($event){_vm.albumName=$event}}}),_vm._v(\" \"),_c('label',[_c('MapMarker'),_c('NcTextField',{attrs:{\"value\":_vm.albumLocation,\"name\":\"location\",\"type\":\"text\",\"placeholder\":_vm.t('photos', 'Location of the album')},on:{\"update:value\":function($event){_vm.albumLocation=$event}}})],1)],1),_vm._v(\" \"),_c('div',{staticClass:\"form-buttons\"},[_c('span',{staticClass:\"left-buttons\"},[(_vm.displayBackButton)?_c('NcButton',{attrs:{\"aria-label\":_vm.t('photos', 'Go back to the previous view.'),\"type\":\"tertiary\"},on:{\"click\":_vm.back}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('photos', 'Back'))+\"\\n\\t\\t\\t\")]):_vm._e()],1),_vm._v(\" \"),_c('span',{staticClass:\"right-buttons\"},[(_vm.sharingEnabled && !_vm.editMode)?_c('NcButton',{attrs:{\"aria-label\":_vm.t('photos', 'Go to the add collaborators view.'),\"type\":\"secondary\",\"disabled\":_vm.albumName.trim() === '' || _vm.loading},on:{\"click\":function($event){_vm.showCollaboratorView = true}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('AccountMultiplePlus')]},proxy:true}],null,false,1531126728)},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('photos', 'Add collaborators'))+\"\\n\\t\\t\\t\")]):_vm._e(),_vm._v(\" \"),_c('NcButton',{attrs:{\"aria-label\":_vm.editMode ? _vm.t('photos', 'Save.') : _vm.t('photos', 'Create the album.'),\"type\":\"primary\",\"disabled\":_vm.albumName === '' || _vm.loading},on:{\"click\":function($event){return _vm.submit()}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.loading)?_c('NcLoadingIcon'):_c('Send')]},proxy:true}],null,false,3914512768)},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.editMode ? _vm.t('photos', 'Save') : _vm.t('photos', 'Create album'))+\"\\n\\t\\t\\t\")])],1)])]):_c('CollaboratorsSelectionForm',{attrs:{\"album-name\":_vm.albumName,\"allow-public-link\":false},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar collaborators = ref.collaborators;\nreturn [_c('span',{staticClass:\"left-buttons\"},[_c('NcButton',{attrs:{\"aria-label\":_vm.t('photos', 'Back to the new album form.'),\"type\":\"tertiary\"},on:{\"click\":function($event){_vm.showCollaboratorView = false}}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('photos', 'Back'))+\"\\n\\t\\t\\t\")])],1),_vm._v(\" \"),_c('span',{staticClass:\"right-buttons\"},[_c('NcButton',{attrs:{\"aria-label\":_vm.editMode ? _vm.t('photos', 'Save.') : _vm.t('photos', 'Create the album.'),\"type\":\"primary\",\"disabled\":_vm.albumName.trim() === '' || _vm.loading},on:{\"click\":function($event){return _vm.submit(collaborators)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.loading)?_c('NcLoadingIcon'):_c('Send')]},proxy:true}],null,true)},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.editMode ? _vm.t('photos', 'Save') : _vm.t('photos', 'Create album'))+\"\\n\\t\\t\\t\")])],1)]}}])})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./AccountMultiplePlus.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./AccountMultiplePlus.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AccountMultiplePlus.vue?vue&type=template&id=7e4925e6&\"\nimport script from \"./AccountMultiplePlus.vue?vue&type=script&lang=js&\"\nexport * from \"./AccountMultiplePlus.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon account-multiple-plus-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M19 17V19H7V17S7 13 13 13 19 17 19 17M16 8A3 3 0 1 0 13 11A3 3 0 0 0 16 8M19.2 13.06A5.6 5.6 0 0 1 21 17V19H24V17S24 13.55 19.2 13.06M18 5A2.91 2.91 0 0 0 17.11 5.14A5 5 0 0 1 17.11 10.86A2.91 2.91 0 0 0 18 11A3 3 0 0 0 18 5M8 10H5V7H3V10H0V12H3V15H5V12H8Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AlbumForm.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!./AlbumForm.vue?vue&type=script&lang=js&\"","\n import API from \"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./AlbumForm.vue?vue&type=style&index=0&id=4b45ca79&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./AlbumForm.vue?vue&type=style&index=0&id=4b45ca79&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./AlbumForm.vue?vue&type=template&id=4b45ca79&scoped=true&\"\nimport script from \"./AlbumForm.vue?vue&type=script&lang=js&\"\nexport * from \"./AlbumForm.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AlbumForm.vue?vue&type=style&index=0&id=4b45ca79&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 \"4b45ca79\",\n null\n \n)\n\nexport default component.exports","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Magnify.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Magnify.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Magnify.vue?vue&type=template&id=d480a606&\"\nimport script from \"./Magnify.vue?vue&type=script&lang=js&\"\nexport * from \"./Magnify.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon magnify-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M9.5,3A6.5,6.5 0 0,1 16,9.5C16,11.11 15.41,12.59 14.44,13.73L14.71,14H15.5L20.5,19L19,20.5L14,15.5V14.71L13.73,14.44C12.59,15.41 11.11,16 9.5,16A6.5,6.5 0 0,1 3,9.5A6.5,6.5 0 0,1 9.5,3M9.5,5C7,5 5,7 5,9.5C5,12 7,14 9.5,14C12,14 14,12 14,9.5C14,7 12,5 9.5,5Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CollaboratorsSelectionForm.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!./CollaboratorsSelectionForm.vue?vue&type=script&lang=js&\"","\n import API from \"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=34521066&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=34521066&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./CollaboratorsSelectionForm.vue?vue&type=template&id=34521066&scoped=true&\"\nimport script from \"./CollaboratorsSelectionForm.vue?vue&type=script&lang=js&\"\nexport * from \"./CollaboratorsSelectionForm.vue?vue&type=script&lang=js&\"\nimport style0 from \"./CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=34521066&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 \"34521066\",\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:\"manage-collaborators\"},[_c('h2',{staticClass:\"manage-collaborators__title\"},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('photos', 'Add collaborators'))+\"\\n\\t\")]),_vm._v(\" \"),_c('div',{staticClass:\"manage-collaborators__subtitle\"},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('photos', 'Add people or groups who can edit your album'))+\"\\n\\t\")]),_vm._v(\" \"),_c('form',{staticClass:\"manage-collaborators__form\",on:{\"submit\":function($event){$event.preventDefault();}}},[_c('NcPopover',{ref:\"popover\",attrs:{\"auto-size\":true,\"distance\":0}},[_c('label',{staticClass:\"manage-collaborators__form__input\",attrs:{\"slot\":\"trigger\"},slot:\"trigger\"},[_c('NcTextField',{attrs:{\"value\":_vm.searchText,\"autocomplete\":\"off\",\"type\":\"search\",\"name\":\"search\",\"aria-label\":_vm.t('photos', 'Search for collaborators'),\"aria-autocomplete\":\"list\",\"aria-controls\":(\"manage-collaborators__form__selection-\" + _vm.randomId + \" manage-collaborators__form__list-\" + _vm.randomId),\"placeholder\":_vm.t('photos', 'Search people or groups')},on:{\"update:value\":function($event){_vm.searchText=$event},\"input\":_vm.searchCollaborators}},[_c('Magnify',{attrs:{\"size\":16}})],1),_vm._v(\" \"),(_vm.loadingCollaborators)?_c('NcLoadingIcon'):_vm._e()],1),_vm._v(\" \"),_c('ul',{staticClass:\"manage-collaborators__form__list\",attrs:{\"id\":(\"manage-collaborators__form__list-\" + _vm.randomId)}},_vm._l((_vm.searchResults),function(result){return _c('li',{key:result.key},[_c('a',[_c('NcListItemIcon',{staticClass:\"manage-collaborators__form__list__result\",attrs:{\"id\":_vm.availableCollaborators[result.key].id,\"title\":_vm.availableCollaborators[result.key].id,\"search\":_vm.searchText,\"display-name\":_vm.availableCollaborators[result.key].label,\"aria-label\":_vm.t('photos', 'Add {collaboratorLabel} to the collaborators list', {collaboratorLabel: _vm.availableCollaborators[result.key].label})},on:{\"click\":function($event){return _vm.selectEntity(result.key)}}})],1)])}),0)])],1),_vm._v(\" \"),_c('ul',{staticClass:\"manage-collaborators__selection\"},_vm._l((_vm.selectedCollaboratorsKeys),function(collaboratorKey){return _c('li',{key:collaboratorKey,staticClass:\"manage-collaborators__selection__item\"},[_c('NcListItemIcon',{attrs:{\"id\":_vm.availableCollaborators[collaboratorKey].id,\"title\":_vm.availableCollaborators[collaboratorKey].id,\"display-name\":_vm.availableCollaborators[collaboratorKey].label,\"aria-label\":_vm.t('photos', 'Remove {collaboratorLabel} from the collaborators list', {collaboratorLabel: _vm.availableCollaborators[collaboratorKey].label})}},[_c('NcButton',{attrs:{\"type\":\"tertiary\",\"aria-label\":_vm.t('photos', 'Remove {collaboratorLabel} from the collaborators list', {collaboratorLabel: _vm.availableCollaborators[collaboratorKey].label})},on:{\"click\":function($event){return _vm.unselectEntity(collaboratorKey)}}},[_c('Close',{attrs:{\"slot\":\"icon\",\"size\":20},slot:\"icon\"})],1)],1)],1)}),0),_vm._v(\" \"),_c('div',{staticClass:\"actions\"},[(_vm.allowPublicLink)?_c('div',{staticClass:\"actions__public-link\"},[(_vm.publicLink)?[_c('NcButton',{staticClass:\"manage-collaborators__public-link-button\",attrs:{\"type\":\"tertiary-no-background\"},on:{\"click\":_vm.copyPublicLink},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.publicLinkCopied)?_c('Check'):_c('ContentCopy')]},proxy:true}],null,false,845538853)},[(_vm.publicLinkCopied)?[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('photos', 'Public link copied!'))+\"\\n\\t\\t\\t\\t\\t\")]:[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('photos', 'Copy public link'))+\"\\n\\t\\t\\t\\t\\t\")]],2),_vm._v(\" \"),_c('NcButton',{on:{\"click\":_vm.deletePublicLink}},[_c('Close',{attrs:{\"slot\":\"icon\"},slot:\"icon\"})],1)]:_c('NcButton',{staticClass:\"manage-collaborators__public-link-button\",attrs:{\"type\":\"tertiary-no-background\"},on:{\"click\":_vm.createPublicLinkForAlbum}},[_c('Earth',{attrs:{\"slot\":\"icon\"},slot:\"icon\"}),_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('photos', 'Share via public link'))+\"\\n\\t\\t\\t\")],1)],2):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"actions__slot\"},[_vm._t(\"default\",null,{\"collaborators\":_vm.selectedCollaborators})],2)])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }"],"names":["name","data","errorFetchingAlbums","loadingAlbums","mixins","AbortControllerMixin","beforeMount","fetchAlbums","computed","mapGetters","methods","client","getCurrentUser","uid","details","signal","abortController","response","albums","filter","album","filename","map","props","collaborators","collaborator","Array","isArray","genFileInfo","dateRange","JSON","parse","replace","start","moment","unix","end","dateRangeFormated","startDate","format","endDate","date","t","$store","dispatch","logger","length","status","code","showError","___CSS_LOADER_EXPORT___","push","module","id","emits","title","type","String","fillColor","default","size","Number","_vm","this","_h","$createElement","_c","_self","_b","staticClass","attrs","on","$event","$emit","$attrs","_v","_s","_e","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","showCollaboratorView","albumName","scopedSlots","_u","key","fn","ref","editMode","trim","loading","submit","proxy","preventDefault","apply","arguments","albumLocation","back","sharingEnabled","slot","searchText","randomId","searchCollaborators","_l","result","availableCollaborators","label","collaboratorLabel","selectEntity","collaboratorKey","unselectEntity","copyPublicLink","deletePublicLink","createPublicLinkForAlbum","_t","selectedCollaborators"],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-src_mixins_FetchAlbumsMixin_js-src_components_Actions_ActionFavorite_vue-src_components_Album-1e5e7f.js b/js/photos-src_mixins_FetchAlbumsMixin_js-src_components_Actions_ActionFavorite_vue-src_components_Album-1e5e7f.js deleted file mode 100644 index b7afe0ef0..000000000 --- a/js/photos-src_mixins_FetchAlbumsMixin_js-src_components_Actions_ActionFavorite_vue-src_components_Album-1e5e7f.js +++ /dev/null @@ -1,1819 +0,0 @@ -"use strict"; -(self["webpackChunkphotos"] = self["webpackChunkphotos"] || []).push([["src_mixins_FetchAlbumsMixin_js-src_components_Actions_ActionFavorite_vue-src_components_Album-1e5e7f"],{ - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Actions/ActionFavorite.vue?vue&type=script&lang=js&": -/*!********************************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Actions/ActionFavorite.vue?vue&type=script&lang=js& ***! - \********************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! vuex */ "./node_modules/vuex/dist/vuex.esm.js"); -/* harmony import */ var vue_material_design_icons_Star__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue-material-design-icons/Star */ "./node_modules/vue-material-design-icons/Star.vue"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/vue */ "./node_modules/@nextcloud/vue/dist/ncvuecomponents.js"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue__WEBPACK_IMPORTED_MODULE_1__); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'ActionFavorite', - components: { - Star: vue_material_design_icons_Star__WEBPACK_IMPORTED_MODULE_0__["default"], - NcActionButton: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_1__.NcActionButton - }, - props: { - selectedFileIds: { - type: Array, - required: true - } - }, - computed: { ...(0,vuex__WEBPACK_IMPORTED_MODULE_2__.mapGetters)(['files']), - - /** @return {boolean} */ - shouldFavoriteSelection() { - // Favorite all selection if at least one file is not in the favorites. - return this.selectedFileIds.some(fileId => this.files[fileId].favorite === 0); - } - - }, - methods: { ...(0,vuex__WEBPACK_IMPORTED_MODULE_2__.mapActions)(['toggleFavoriteForFiles']), - - async favoriteSelection() { - await this.toggleFavoriteForFiles({ - fileIds: this.selectedFileIds, - favoriteState: 1 - }); - }, - - async unFavoriteSelection() { - await this.toggleFavoriteForFiles({ - fileIds: this.selectedFileIds, - favoriteState: 0 - }); - } - - } -}); - -/***/ }), - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Albums/AlbumForm.vue?vue&type=script&lang=js&": -/*!**************************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Albums/AlbumForm.vue?vue&type=script&lang=js& ***! - \**************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! vuex */ "./node_modules/vuex/dist/vuex.esm.js"); -/* harmony import */ var vue_material_design_icons_MapMarker__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue-material-design-icons/MapMarker */ "./node_modules/vue-material-design-icons/MapMarker.vue"); -/* harmony import */ var vue_material_design_icons_AccountMultiplePlus__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! vue-material-design-icons/AccountMultiplePlus */ "./node_modules/vue-material-design-icons/AccountMultiplePlus.vue"); -/* harmony import */ var vue_material_design_icons_Send__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! vue-material-design-icons/Send */ "./node_modules/vue-material-design-icons/Send.vue"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @nextcloud/vue */ "./node_modules/@nextcloud/vue/dist/ncvuecomponents.js"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _nextcloud_moment__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @nextcloud/moment */ "./node_modules/@nextcloud/moment/dist/index.js"); -/* harmony import */ var _nextcloud_moment__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_moment__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _CollaboratorsSelectionForm_vue__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./CollaboratorsSelectionForm.vue */ "./src/components/Albums/CollaboratorsSelectionForm.vue"); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - - - - - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'AlbumForm', - components: { - MapMarker: vue_material_design_icons_MapMarker__WEBPACK_IMPORTED_MODULE_0__["default"], - AccountMultiplePlus: vue_material_design_icons_AccountMultiplePlus__WEBPACK_IMPORTED_MODULE_1__["default"], - Send: vue_material_design_icons_Send__WEBPACK_IMPORTED_MODULE_2__["default"], - NcButton: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_3__.NcButton, - NcLoadingIcon: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_3__.NcLoadingIcon, - NcTextField: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_3__.NcTextField, - CollaboratorsSelectionForm: _CollaboratorsSelectionForm_vue__WEBPACK_IMPORTED_MODULE_5__["default"] - }, - props: { - album: { - type: Object, - default: null - }, - displayBackButton: { - type: Boolean, - default: false - } - }, - - data() { - return { - showCollaboratorView: false, - albumName: '', - albumLocation: '', - loading: false - }; - }, - - computed: { - /** - * @return {boolean} Whether sharing is enabled. - */ - editMode() { - return this.album !== null; - }, - - /** - * @return {boolean} Whether sharing is enabled. - */ - sharingEnabled() { - return OC.Share !== undefined; - } - - }, - - mounted() { - if (this.editMode) { - this.albumName = this.album.basename; - this.albumLocation = this.album.location; - } - - this.$nextTick(() => { - this.$refs.nameInput.$el.getElementsByTagName('input')[0].focus(); - }); - }, - - methods: { ...(0,vuex__WEBPACK_IMPORTED_MODULE_6__.mapActions)(['createAlbum', 'renameAlbum', 'updateAlbum']), - - submit() { - let collaborators = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : []; - - if (this.albumName === '' || this.loading) { - return; - } - - if (this.editMode) { - this.handleUpdateAlbum(); - } else { - this.handleCreateAlbum(collaborators); - } - }, - - async handleCreateAlbum() { - let collaborators = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : []; - - try { - this.loading = true; - let album = await this.createAlbum({ - album: { - basename: this.albumName, - nbItems: 0, - location: this.albumLocation, - lastPhoto: -1, - date: _nextcloud_moment__WEBPACK_IMPORTED_MODULE_4___default()().format('MMMM YYYY'), - collaborators - } - }); - - if (this.albumLocation !== '' || collaborators.length !== 0) { - album = await this.updateAlbum({ - albumName: this.albumName, - properties: { - location: this.albumLocation, - collaborators - } - }); - } - - this.$emit('done', { - album - }); - } finally { - this.loading = false; - } - }, - - async handleUpdateAlbum() { - try { - this.loading = true; - let album = { ...this.album - }; - - if (this.album.basename !== this.albumName) { - album = await this.renameAlbum({ - currentAlbumName: this.album.basename, - newAlbumName: this.albumName - }); - } - - if (this.album.location !== this.albumLocation) { - album.location = await this.updateAlbum({ - albumName: this.albumName, - properties: { - location: this.albumLocation - } - }); - } - - this.$emit('done', { - album - }); - } finally { - this.loading = false; - } - }, - - back() { - this.$emit('back'); - } - - } -}); - -/***/ }), - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=script&lang=js&": -/*!*******************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=script&lang=js& ***! - \*******************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var vue_material_design_icons_Magnify__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue-material-design-icons/Magnify */ "./node_modules/vue-material-design-icons/Magnify.vue"); -/* harmony import */ var vue_material_design_icons_Close__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! vue-material-design-icons/Close */ "./node_modules/vue-material-design-icons/Close.vue"); -/* harmony import */ var _nextcloud_axios__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @nextcloud/axios */ "./node_modules/@nextcloud/axios/dist/index.esm.js"); -/* harmony import */ var _nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @nextcloud/dialogs */ "./node_modules/@nextcloud/dialogs/dist/index.es.js"); -/* harmony import */ var _nextcloud_auth__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @nextcloud/auth */ "./node_modules/@nextcloud/auth/dist/index.esm.js"); -/* harmony import */ var _nextcloud_router__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @nextcloud/router */ "./node_modules/@nextcloud/router/dist/index.js"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @nextcloud/vue */ "./node_modules/@nextcloud/vue/dist/ncvuecomponents.js"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue__WEBPACK_IMPORTED_MODULE_6__); -/* harmony import */ var _services_logger_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../services/logger.js */ "./src/services/logger.js"); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - - - - - - - - -const SHARE = { - TYPE: { - USER: 0, - GROUP: 1 // LINK: 3, - - } -}; -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'CollaboratorsSelectionForm', - components: { - Magnify: vue_material_design_icons_Magnify__WEBPACK_IMPORTED_MODULE_0__["default"], - Close: vue_material_design_icons_Close__WEBPACK_IMPORTED_MODULE_1__["default"], - NcLoadingIcon: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_6__.NcLoadingIcon, - NcButton: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_6__.NcButton, - NcListItemIcon: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_6__.NcListItemIcon, - NcTextField: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_6__.NcTextField, - NcPopover: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_6__.NcPopover - }, - props: { - albumName: { - type: String, - required: true - }, - collaborators: { - type: Array, - default: () => [] - }, - publicLink: { - type: String, - default: '' - }, - allowPublicLink: { - type: Boolean, - default: true - } - }, - - data() { - return { - searchText: '', - availableCollaborators: {}, - selectedCollaboratorsKeys: [], - currentSearchResults: [], - loadingCollaborators: false, - randomId: Math.random().toString().substring(2, 10), - publicLinkCopied: false, - config: { - minSearchStringLength: parseInt(OC.config['sharing.minSearchStringLength'], 10) || 0 - } - }; - }, - - computed: { - /** - * @return {string[]} - */ - searchResults() { - return this.currentSearchResults.filter(_ref => { - let { - id - } = _ref; - return id !== (0,_nextcloud_auth__WEBPACK_IMPORTED_MODULE_4__.getCurrentUser)().uid; - }).map(_ref2 => { - let { - source, - id - } = _ref2; - return `${source}:${id}`; - }).filter(key => !this.selectedCollaboratorsKeys.includes(key)).map(key => ({ - key, - height: 48 - })); - }, - - /** - * @return {object[]} - */ - selectedCollaborators() { - return this.selectedCollaboratorsKeys.map(collaboratorKey => this.availableCollaborators[collaboratorKey]); - } - - }, - - mounted() { - this.searchCollaborators(); - this.selectedCollaboratorsKeys = this.collaborators.map(_ref3 => { - let { - source, - id - } = _ref3; - return `${source}:${id}`; - }); - this.availableCollaborators = { ...this.availableCollaborators, - ...this.collaborators.reduce((collaborators, collaborator) => ({ ...collaborators, - [`${collaborator.source}:${collaborator.id}`]: collaborator - }), {}) - }; - }, - - methods: { - /** - * Fetch possible collaborators. - */ - async searchCollaborators() { - try { - if (this.searchText.length < this.config.minSearchStringLength) { - return; - } - - this.loadingCollaborators = true; - const response = await _nextcloud_axios__WEBPACK_IMPORTED_MODULE_2__["default"].get((0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_5__.generateOcsUrl)('core/autocomplete/get'), { - params: { - search: this.searchText, - itemType: 'share-recipients', - shareTypes: [SHARE.TYPE.USER, SHARE.TYPE.GROUP] - } - }); - this.currentSearchResults = response.data.ocs.data; - this.availableCollaborators = { ...this.availableCollaborators, - ...response.data.ocs.data.reduce((collaborators, collaborator) => ({ ...collaborators, - [`${collaborator.source}:${collaborator.id}`]: collaborator - }), {}) - }; - } catch (error) { - this.errorFetchingCollaborators = error; - _services_logger_js__WEBPACK_IMPORTED_MODULE_7__["default"].error(t('photos', 'Failed to fetch collaborators list.'), error); - (0,_nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_3__.showError)(t('photos', 'Failed to fetch collaborators list.')); - } finally { - this.loadingCollaborators = false; - } - }, - - // TODO: implement public sharing - // async createPublicLinkForAlbum() { - // return axios.put(generateOcsUrl(`apps/photos/createPublicLink/${this.albumName}`)) - // }, - // async deletePublicLink() { - // return axios.delete(generateOcsUrl(`apps/photos/createPublicLink/${this.albumName}`)) - // }, - // async copyPublicLink() { - // await navigator.clipboard.writeText(this.publicLink) - // this.publicLinkCopied = true - // setTimeout(() => { - // this.publicLinkCopied = false - // }, 10000) - // }, - selectEntity(collaboratorKey) { - if (this.selectedCollaboratorsKeys.includes(collaboratorKey)) { - return; - } - - this.$refs.popover.$refs.popover.hide(); - this.selectedCollaboratorsKeys.push(collaboratorKey); - }, - - unselectEntity(collaboratorKey) { - const index = this.selectedCollaboratorsKeys.indexOf(collaboratorKey); - this.selectedCollaboratorsKeys.splice(index, 1); - } - - } -}); - -/***/ }), - -/***/ "./src/mixins/FetchAlbumsMixin.js": -/*!****************************************!*\ - !*** ./src/mixins/FetchAlbumsMixin.js ***! - \****************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! vuex */ "./node_modules/vuex/dist/vuex.esm.js"); -/* harmony import */ var _nextcloud_moment__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/moment */ "./node_modules/@nextcloud/moment/dist/index.js"); -/* harmony import */ var _nextcloud_moment__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_moment__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/dialogs */ "./node_modules/@nextcloud/dialogs/dist/index.es.js"); -/* harmony import */ var _nextcloud_auth__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @nextcloud/auth */ "./node_modules/@nextcloud/auth/dist/index.esm.js"); -/* harmony import */ var _services_DavClient_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../services/DavClient.js */ "./src/services/DavClient.js"); -/* harmony import */ var _services_logger_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../services/logger.js */ "./src/services/logger.js"); -/* harmony import */ var _utils_fileUtils_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../utils/fileUtils.js */ "./src/utils/fileUtils.js"); -/* harmony import */ var _AbortControllerMixin_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./AbortControllerMixin.js */ "./src/mixins/AbortControllerMixin.js"); -/** - * @copyright Copyright (c) 2022 Louis Chemineau - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ - - - - - - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'FetchAlbumsMixin', - - data() { - return { - errorFetchingAlbums: null, - loadingAlbums: false - }; - }, - - mixins: [_AbortControllerMixin_js__WEBPACK_IMPORTED_MODULE_6__["default"]], - - async beforeMount() { - this.fetchAlbums(); - }, - - computed: { ...(0,vuex__WEBPACK_IMPORTED_MODULE_7__.mapGetters)(['albums']) - }, - methods: { - async fetchAlbums() { - if (this.loadingAlbums) { - return; - } - - try { - this.loadingAlbums = true; - this.errorFetchingAlbums = null; - const response = await _services_DavClient_js__WEBPACK_IMPORTED_MODULE_3__["default"].getDirectoryContents(`/photos/${(0,_nextcloud_auth__WEBPACK_IMPORTED_MODULE_2__.getCurrentUser)()?.uid}/albums`, { - data: ` - - - - - - - - - `, - // TODO: implement public sharing - // - details: true, - signal: this.abortController.signal - }); - const albums = response.data.filter(album => album.filename !== `/photos/${(0,_nextcloud_auth__WEBPACK_IMPORTED_MODULE_2__.getCurrentUser)()?.uid}/albums`) // Ensure that we have a proper collaborators array. - .map(album => { - if (album.props.collaborators === '') { - album.props.collaborators = []; - } else if (typeof album.props.collaborators.collaborator === 'object') { - if (Array.isArray(album.props.collaborators.collaborator)) { - album.props.collaborators = album.props.collaborators.collaborator; - } else { - album.props.collaborators = [album.props.collaborators.collaborator]; - } - } - - return album; - }).map(album => (0,_utils_fileUtils_js__WEBPACK_IMPORTED_MODULE_5__.genFileInfo)(album)).map(album => { - const dateRange = JSON.parse(album.dateRange?.replace(/"/g, '"') ?? '{}'); - - if (dateRange.start === null) { - dateRange.start = _nextcloud_moment__WEBPACK_IMPORTED_MODULE_0___default()().unix(); - dateRange.end = _nextcloud_moment__WEBPACK_IMPORTED_MODULE_0___default()().unix(); - } - - const dateRangeFormated = { - startDate: _nextcloud_moment__WEBPACK_IMPORTED_MODULE_0___default().unix(dateRange.start).format('MMMM YYYY'), - endDate: _nextcloud_moment__WEBPACK_IMPORTED_MODULE_0___default().unix(dateRange.end).format('MMMM YYYY') - }; - - if (dateRangeFormated.startDate === dateRangeFormated.endDate) { - return { ...album, - date: dateRangeFormated.startDate - }; - } else { - return { ...album, - date: this.t('photos', '{startDate} to {endDate}', dateRangeFormated) - }; - } - }); - this.$store.dispatch('addAlbums', { - albums - }); - _services_logger_js__WEBPACK_IMPORTED_MODULE_4__["default"].debug(`[FetchAlbumsMixin] Fetched ${albums.length} new files: `, albums); - } catch (error) { - if (error.response?.status === 404) { - this.errorFetchingAlbums = 404; - } else if (error.code === 'ERR_CANCELED') { - return; - } else { - this.errorFetchingAlbums = error; - } - - _services_logger_js__WEBPACK_IMPORTED_MODULE_4__["default"].error(t('photos', 'Failed to fetch albums list.'), error); - (0,_nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_1__.showError)(t('photos', 'Failed to fetch albums list.')); - } finally { - this.loadingAlbums = false; - } - } - - } -}); - -/***/ }), - -/***/ "./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!./src/components/Albums/AlbumForm.vue?vue&type=style&index=0&id=1d54fb78&lang=scss&scoped=true&": -/*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/components/Albums/AlbumForm.vue?vue&type=style&index=0&id=1d54fb78&lang=scss&scoped=true& ***! - \**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".album-form[data-v-1d54fb78] {\n display: flex;\n flex-direction: column;\n height: 350px;\n padding: 16px;\n}\n.album-form .form-title[data-v-1d54fb78] {\n font-weight: bold;\n}\n.album-form .form-subtitle[data-v-1d54fb78] {\n color: var(--color-text-lighter);\n}\n.album-form .form-inputs[data-v-1d54fb78] {\n flex-grow: 1;\n justify-items: flex-end;\n}\n.album-form .form-inputs input[data-v-1d54fb78] {\n width: 100%;\n}\n.album-form .form-inputs label[data-v-1d54fb78] {\n display: flex;\n margin-top: 16px;\n}\n.album-form .form-inputs label[data-v-1d54fb78] svg {\n margin-right: 12px;\n}\n.album-form .form-buttons[data-v-1d54fb78] {\n display: flex;\n justify-content: space-between;\n}\n.album-form .form-buttons .left-buttons[data-v-1d54fb78], .album-form .form-buttons .right-buttons[data-v-1d54fb78] {\n display: flex;\n}\n.album-form .form-buttons .right-buttons[data-v-1d54fb78] {\n justify-content: flex-end;\n}\n.album-form .form-buttons button[data-v-1d54fb78] {\n margin-right: 16px;\n}\n.left-buttons[data-v-1d54fb78] {\n flex-grow: 1;\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./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!./src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=02023324&lang=scss&scoped=true&": -/*!*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=02023324&lang=scss&scoped=true& ***! - \*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".manage-collaborators[data-v-02023324] {\n display: flex;\n flex-direction: column;\n padding: 20px;\n height: 500px;\n}\n.manage-collaborators__title[data-v-02023324] {\n font-weight: bold;\n}\n.manage-collaborators__subtitle[data-v-02023324] {\n color: var(--color-text-lighter);\n}\n.manage-collaborators__public-link-button[data-v-02023324] {\n margin: 4px 0;\n}\n.manage-collaborators__form[data-v-02023324] {\n margin-top: 4px 0;\n display: flex;\n flex-direction: column;\n}\n.manage-collaborators__form__input[data-v-02023324] {\n position: relative;\n display: block;\n}\n.manage-collaborators__form__input input[data-v-02023324] {\n width: 100%;\n padding-left: 34px;\n}\n.manage-collaborators__form__input .loading-icon[data-v-02023324] {\n position: absolute;\n top: 8px;\n right: 8px;\n}\n.manage-collaborators__form__list[data-v-02023324] {\n padding: 8px;\n}\n.manage-collaborators__form__list__result[data-v-02023324] {\n padding: 8px;\n border-radius: 100px;\n box-sizing: border-box;\n}\n.manage-collaborators__form__list__result[data-v-02023324], .manage-collaborators__form__list__result *[data-v-02023324] {\n cursor: pointer !important;\n}\n.manage-collaborators__form__list__result[data-v-02023324]:hover {\n background: var(--color-background-dark);\n}\n.manage-collaborators__selection[data-v-02023324] {\n display: flex;\n flex-direction: column;\n margin-top: 8px;\n flex-grow: 1;\n}\n.manage-collaborators__selection__item[data-v-02023324] {\n border-radius: var(--border-radius-pill);\n padding: 0 8px;\n}\n.manage-collaborators__selection__item[data-v-02023324]:hover {\n background: var(--color-background-dark);\n}\n.manage-collaborators .actions[data-v-02023324] {\n display: flex;\n margin-top: 8px;\n}\n.manage-collaborators .actions__public-link[data-v-02023324] {\n display: flex;\n align-items: center;\n}\n.manage-collaborators .actions__slot[data-v-02023324] {\n flex-grow: 1;\n display: flex;\n justify-content: flex-end;\n align-items: center;\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/Albums/AlbumForm.vue?vue&type=style&index=0&id=1d54fb78&lang=scss&scoped=true&": -/*!******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/components/Albums/AlbumForm.vue?vue&type=style&index=0&id=1d54fb78&lang=scss&scoped=true& ***! - \******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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_AlbumForm_vue_vue_type_style_index_0_id_1d54fb78_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../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!./AlbumForm.vue?vue&type=style&index=0&id=1d54fb78&lang=scss&scoped=true& */ "./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!./src/components/Albums/AlbumForm.vue?vue&type=style&index=0&id=1d54fb78&lang=scss&scoped=true&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_AlbumForm_vue_vue_type_style_index_0_id_1d54fb78_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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_AlbumForm_vue_vue_type_style_index_0_id_1d54fb78_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_AlbumForm_vue_vue_type_style_index_0_id_1d54fb78_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_AlbumForm_vue_vue_type_style_index_0_id_1d54fb78_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=02023324&lang=scss&scoped=true&": -/*!***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=02023324&lang=scss&scoped=true& ***! - \***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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_CollaboratorsSelectionForm_vue_vue_type_style_index_0_id_02023324_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../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!./CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=02023324&lang=scss&scoped=true& */ "./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!./src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=02023324&lang=scss&scoped=true&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_CollaboratorsSelectionForm_vue_vue_type_style_index_0_id_02023324_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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_CollaboratorsSelectionForm_vue_vue_type_style_index_0_id_02023324_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_CollaboratorsSelectionForm_vue_vue_type_style_index_0_id_02023324_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_CollaboratorsSelectionForm_vue_vue_type_style_index_0_id_02023324_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./src/components/Actions/ActionFavorite.vue": -/*!***************************************************!*\ - !*** ./src/components/Actions/ActionFavorite.vue ***! - \***************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _ActionFavorite_vue_vue_type_template_id_607ef4d8___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./ActionFavorite.vue?vue&type=template&id=607ef4d8& */ "./src/components/Actions/ActionFavorite.vue?vue&type=template&id=607ef4d8&"); -/* harmony import */ var _ActionFavorite_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./ActionFavorite.vue?vue&type=script&lang=js& */ "./src/components/Actions/ActionFavorite.vue?vue&type=script&lang=js&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - - - -/* normalize component */ -; -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])( - _ActionFavorite_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _ActionFavorite_vue_vue_type_template_id_607ef4d8___WEBPACK_IMPORTED_MODULE_0__.render, - _ActionFavorite_vue_vue_type_template_id_607ef4d8___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - null, - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/Actions/ActionFavorite.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/Albums/AlbumForm.vue": -/*!*********************************************!*\ - !*** ./src/components/Albums/AlbumForm.vue ***! - \*********************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _AlbumForm_vue_vue_type_template_id_1d54fb78_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./AlbumForm.vue?vue&type=template&id=1d54fb78&scoped=true& */ "./src/components/Albums/AlbumForm.vue?vue&type=template&id=1d54fb78&scoped=true&"); -/* harmony import */ var _AlbumForm_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./AlbumForm.vue?vue&type=script&lang=js& */ "./src/components/Albums/AlbumForm.vue?vue&type=script&lang=js&"); -/* harmony import */ var _AlbumForm_vue_vue_type_style_index_0_id_1d54fb78_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./AlbumForm.vue?vue&type=style&index=0&id=1d54fb78&lang=scss&scoped=true& */ "./src/components/Albums/AlbumForm.vue?vue&type=style&index=0&id=1d54fb78&lang=scss&scoped=true&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( - _AlbumForm_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _AlbumForm_vue_vue_type_template_id_1d54fb78_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render, - _AlbumForm_vue_vue_type_template_id_1d54fb78_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - "1d54fb78", - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/Albums/AlbumForm.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/Albums/CollaboratorsSelectionForm.vue": -/*!**************************************************************!*\ - !*** ./src/components/Albums/CollaboratorsSelectionForm.vue ***! - \**************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _CollaboratorsSelectionForm_vue_vue_type_template_id_02023324_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./CollaboratorsSelectionForm.vue?vue&type=template&id=02023324&scoped=true& */ "./src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=template&id=02023324&scoped=true&"); -/* harmony import */ var _CollaboratorsSelectionForm_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./CollaboratorsSelectionForm.vue?vue&type=script&lang=js& */ "./src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=script&lang=js&"); -/* harmony import */ var _CollaboratorsSelectionForm_vue_vue_type_style_index_0_id_02023324_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=02023324&lang=scss&scoped=true& */ "./src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=02023324&lang=scss&scoped=true&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( - _CollaboratorsSelectionForm_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _CollaboratorsSelectionForm_vue_vue_type_template_id_02023324_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render, - _CollaboratorsSelectionForm_vue_vue_type_template_id_02023324_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - "02023324", - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/Albums/CollaboratorsSelectionForm.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/Actions/ActionFavorite.vue?vue&type=script&lang=js&": -/*!****************************************************************************!*\ - !*** ./src/components/Actions/ActionFavorite.vue?vue&type=script&lang=js& ***! - \****************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_ActionFavorite_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActionFavorite.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Actions/ActionFavorite.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_ActionFavorite_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/components/Albums/AlbumForm.vue?vue&type=script&lang=js&": -/*!**********************************************************************!*\ - !*** ./src/components/Albums/AlbumForm.vue?vue&type=script&lang=js& ***! - \**********************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_AlbumForm_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AlbumForm.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Albums/AlbumForm.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_AlbumForm_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=script&lang=js&": -/*!***************************************************************************************!*\ - !*** ./src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=script&lang=js& ***! - \***************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_CollaboratorsSelectionForm_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CollaboratorsSelectionForm.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_CollaboratorsSelectionForm_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/components/Albums/AlbumForm.vue?vue&type=style&index=0&id=1d54fb78&lang=scss&scoped=true&": -/*!*******************************************************************************************************!*\ - !*** ./src/components/Albums/AlbumForm.vue?vue&type=style&index=0&id=1d54fb78&lang=scss&scoped=true& ***! - \*******************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_AlbumForm_vue_vue_type_style_index_0_id_1d54fb78_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/style-loader/dist/cjs.js!../../../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!./AlbumForm.vue?vue&type=style&index=0&id=1d54fb78&lang=scss&scoped=true& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/Albums/AlbumForm.vue?vue&type=style&index=0&id=1d54fb78&lang=scss&scoped=true&"); - - -/***/ }), - -/***/ "./src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=02023324&lang=scss&scoped=true&": -/*!************************************************************************************************************************!*\ - !*** ./src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=02023324&lang=scss&scoped=true& ***! - \************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_CollaboratorsSelectionForm_vue_vue_type_style_index_0_id_02023324_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/style-loader/dist/cjs.js!../../../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!./CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=02023324&lang=scss&scoped=true& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=02023324&lang=scss&scoped=true&"); - - -/***/ }), - -/***/ "./src/components/Actions/ActionFavorite.vue?vue&type=template&id=607ef4d8&": -/*!**********************************************************************************!*\ - !*** ./src/components/Actions/ActionFavorite.vue?vue&type=template&id=607ef4d8& ***! - \**********************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_ActionFavorite_vue_vue_type_template_id_607ef4d8___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_ActionFavorite_vue_vue_type_template_id_607ef4d8___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_ActionFavorite_vue_vue_type_template_id_607ef4d8___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActionFavorite.vue?vue&type=template&id=607ef4d8& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Actions/ActionFavorite.vue?vue&type=template&id=607ef4d8&"); - - -/***/ }), - -/***/ "./src/components/Albums/AlbumForm.vue?vue&type=template&id=1d54fb78&scoped=true&": -/*!****************************************************************************************!*\ - !*** ./src/components/Albums/AlbumForm.vue?vue&type=template&id=1d54fb78&scoped=true& ***! - \****************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_AlbumForm_vue_vue_type_template_id_1d54fb78_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_AlbumForm_vue_vue_type_template_id_1d54fb78_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_AlbumForm_vue_vue_type_template_id_1d54fb78_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AlbumForm.vue?vue&type=template&id=1d54fb78&scoped=true& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Albums/AlbumForm.vue?vue&type=template&id=1d54fb78&scoped=true&"); - - -/***/ }), - -/***/ "./src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=template&id=02023324&scoped=true&": -/*!*********************************************************************************************************!*\ - !*** ./src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=template&id=02023324&scoped=true& ***! - \*********************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_CollaboratorsSelectionForm_vue_vue_type_template_id_02023324_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_CollaboratorsSelectionForm_vue_vue_type_template_id_02023324_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_CollaboratorsSelectionForm_vue_vue_type_template_id_02023324_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CollaboratorsSelectionForm.vue?vue&type=template&id=02023324&scoped=true& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=template&id=02023324&scoped=true&"); - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Actions/ActionFavorite.vue?vue&type=template&id=607ef4d8&": -/*!*************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Actions/ActionFavorite.vue?vue&type=template&id=607ef4d8& ***! - \*************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _vm.shouldFavoriteSelection - ? _c( - "NcActionButton", - { - attrs: { - "close-after-click": true, - "aria-label": _vm.t("photos", "Mark selection as favorite"), - }, - on: { click: _vm.favoriteSelection }, - }, - [ - _vm._v( - "\n\t" + - _vm._s(_vm.t("photos", "Add selection to favorites")) + - "\n\t" - ), - _c("Star", { attrs: { slot: "icon" }, slot: "icon" }), - ], - 1 - ) - : _c( - "NcActionButton", - { - attrs: { - "close-after-click": true, - "aria-label": _vm.t("photos", "Remove selection from favorites"), - }, - on: { click: _vm.unFavoriteSelection }, - }, - [ - _vm._v( - "\n\t" + - _vm._s(_vm.t("photos", "Remove selection from favorites")) + - "\n\t" - ), - _c("Star", { attrs: { slot: "icon" }, slot: "icon" }), - ], - 1 - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Albums/AlbumForm.vue?vue&type=template&id=1d54fb78&scoped=true&": -/*!*******************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Albums/AlbumForm.vue?vue&type=template&id=1d54fb78&scoped=true& ***! - \*******************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return !_vm.showCollaboratorView - ? _c( - "form", - { - staticClass: "album-form", - on: { - submit: function ($event) { - $event.preventDefault() - return _vm.submit.apply(null, arguments) - }, - }, - }, - [ - _c( - "div", - { staticClass: "form-inputs" }, - [ - _c("NcTextField", { - ref: "nameInput", - attrs: { - value: _vm.albumName, - type: "text", - name: "name", - required: true, - autofocus: "true", - placeholder: _vm.t("photos", "Name of the album"), - }, - on: { - "update:value": function ($event) { - _vm.albumName = $event - }, - }, - }), - _vm._v(" "), - _c( - "label", - [ - _c("MapMarker"), - _c("NcTextField", { - attrs: { - value: _vm.albumLocation, - name: "location", - type: "text", - placeholder: _vm.t("photos", "Location of the album"), - }, - on: { - "update:value": function ($event) { - _vm.albumLocation = $event - }, - }, - }), - ], - 1 - ), - ], - 1 - ), - _vm._v(" "), - _c("div", { staticClass: "form-buttons" }, [ - _c( - "span", - { staticClass: "left-buttons" }, - [ - _vm.displayBackButton - ? _c( - "NcButton", - { - attrs: { - "aria-label": _vm.t( - "photos", - "Go back to the previous view." - ), - type: "tertiary", - }, - on: { click: _vm.back }, - }, - [ - _vm._v( - "\n\t\t\t\t" + - _vm._s(_vm.t("photos", "Back")) + - "\n\t\t\t" - ), - ] - ) - : _vm._e(), - ], - 1 - ), - _vm._v(" "), - _c( - "span", - { staticClass: "right-buttons" }, - [ - _vm.sharingEnabled && !_vm.editMode - ? _c( - "NcButton", - { - attrs: { - "aria-label": _vm.t( - "photos", - "Go to the add collaborators view." - ), - type: "secondary", - disabled: _vm.albumName.trim() === "" || _vm.loading, - }, - on: { - click: function ($event) { - _vm.showCollaboratorView = true - }, - }, - scopedSlots: _vm._u( - [ - { - key: "icon", - fn: function () { - return [_c("AccountMultiplePlus")] - }, - proxy: true, - }, - ], - null, - false, - 1531126728 - ), - }, - [ - _vm._v( - "\n\t\t\t\t" + - _vm._s(_vm.t("photos", "Add collaborators")) + - "\n\t\t\t" - ), - ] - ) - : _vm._e(), - _vm._v(" "), - _c( - "NcButton", - { - attrs: { - "aria-label": _vm.editMode - ? _vm.t("photos", "Save.") - : _vm.t("photos", "Create the album."), - type: "primary", - disabled: _vm.albumName === "" || _vm.loading, - }, - on: { - click: function ($event) { - return _vm.submit() - }, - }, - scopedSlots: _vm._u( - [ - { - key: "icon", - fn: function () { - return [ - _vm.loading ? _c("NcLoadingIcon") : _c("Send"), - ] - }, - proxy: true, - }, - ], - null, - false, - 3914512768 - ), - }, - [ - _vm._v( - "\n\t\t\t\t" + - _vm._s( - _vm.editMode - ? _vm.t("photos", "Save") - : _vm.t("photos", "Create album") - ) + - "\n\t\t\t" - ), - ] - ), - ], - 1 - ), - ]), - ] - ) - : _c("CollaboratorsSelectionForm", { - attrs: { "album-name": _vm.albumName, "allow-public-link": false }, - scopedSlots: _vm._u([ - { - key: "default", - fn: function (ref) { - var collaborators = ref.collaborators - return [ - _c( - "span", - { staticClass: "left-buttons" }, - [ - _c( - "NcButton", - { - attrs: { - "aria-label": _vm.t( - "photos", - "Back to the new album form." - ), - type: "tertiary", - }, - on: { - click: function ($event) { - _vm.showCollaboratorView = false - }, - }, - }, - [ - _vm._v( - "\n\t\t\t\t" + - _vm._s(_vm.t("photos", "Back")) + - "\n\t\t\t" - ), - ] - ), - ], - 1 - ), - _vm._v(" "), - _c( - "span", - { staticClass: "right-buttons" }, - [ - _c( - "NcButton", - { - attrs: { - "aria-label": _vm.editMode - ? _vm.t("photos", "Save.") - : _vm.t("photos", "Create the album."), - type: "primary", - disabled: _vm.albumName.trim() === "" || _vm.loading, - }, - on: { - click: function ($event) { - return _vm.submit(collaborators) - }, - }, - scopedSlots: _vm._u( - [ - { - key: "icon", - fn: function () { - return [ - _vm.loading - ? _c("NcLoadingIcon") - : _c("Send"), - ] - }, - proxy: true, - }, - ], - null, - true - ), - }, - [ - _vm._v( - "\n\t\t\t\t" + - _vm._s( - _vm.editMode - ? _vm.t("photos", "Save") - : _vm.t("photos", "Create album") - ) + - "\n\t\t\t" - ), - ] - ), - ], - 1 - ), - ] - }, - }, - ]), - }) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=template&id=02023324&scoped=true&": -/*!************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=template&id=02023324&scoped=true& ***! - \************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c("div", { staticClass: "manage-collaborators" }, [ - _c("h2", { staticClass: "manage-collaborators__title" }, [ - _vm._v("\n\t\t" + _vm._s(_vm.t("photos", "Add collaborators")) + "\n\t"), - ]), - _vm._v(" "), - _c("div", { staticClass: "manage-collaborators__subtitle" }, [ - _vm._v( - "\n\t\t" + - _vm._s( - _vm.t("photos", "Add people or groups who can edit your album") - ) + - "\n\t" - ), - ]), - _vm._v(" "), - _c( - "form", - { - staticClass: "manage-collaborators__form", - on: { - submit: function ($event) { - $event.preventDefault() - }, - }, - }, - [ - _c( - "NcPopover", - { ref: "popover", attrs: { "auto-size": true, distance: 0 } }, - [ - _c( - "label", - { - staticClass: "manage-collaborators__form__input", - attrs: { slot: "trigger" }, - slot: "trigger", - }, - [ - _c( - "NcTextField", - { - attrs: { - value: _vm.searchText, - autocomplete: "off", - type: "search", - name: "search", - "aria-label": _vm.t("photos", "Search for collaborators"), - "aria-autocomplete": "list", - "aria-controls": - "manage-collaborators__form__selection-" + - _vm.randomId + - " manage-collaborators__form__list-" + - _vm.randomId, - placeholder: _vm.t("photos", "Search people or groups"), - }, - on: { - "update:value": function ($event) { - _vm.searchText = $event - }, - input: _vm.searchCollaborators, - }, - }, - [_c("Magnify", { attrs: { size: 16 } })], - 1 - ), - _vm._v(" "), - _vm.loadingCollaborators ? _c("NcLoadingIcon") : _vm._e(), - ], - 1 - ), - _vm._v(" "), - _c( - "ul", - { - staticClass: "manage-collaborators__form__list", - attrs: { - id: "manage-collaborators__form__list-" + _vm.randomId, - }, - }, - _vm._l(_vm.searchResults, function (result) { - return _c("li", { key: result.key }, [ - _c( - "a", - [ - _c("NcListItemIcon", { - staticClass: "manage-collaborators__form__list__result", - attrs: { - id: _vm.availableCollaborators[result.key].id, - title: _vm.availableCollaborators[result.key].id, - search: _vm.searchText, - "display-name": - _vm.availableCollaborators[result.key].label, - "aria-label": _vm.t( - "photos", - "Add {collaboratorLabel} to the collaborators list", - { - collaboratorLabel: - _vm.availableCollaborators[result.key].label, - } - ), - }, - on: { - click: function ($event) { - return _vm.selectEntity(result.key) - }, - }, - }), - ], - 1 - ), - ]) - }), - 0 - ), - ] - ), - ], - 1 - ), - _vm._v(" "), - _c( - "ul", - { staticClass: "manage-collaborators__selection" }, - _vm._l(_vm.selectedCollaboratorsKeys, function (collaboratorKey) { - return _c( - "li", - { - key: collaboratorKey, - staticClass: "manage-collaborators__selection__item", - }, - [ - _c( - "NcListItemIcon", - { - attrs: { - id: _vm.availableCollaborators[collaboratorKey].id, - title: _vm.availableCollaborators[collaboratorKey].id, - "display-name": - _vm.availableCollaborators[collaboratorKey].label, - "aria-label": _vm.t( - "photos", - "Remove {collaboratorLabel} from the collaborators list", - { - collaboratorLabel: - _vm.availableCollaborators[collaboratorKey].label, - } - ), - }, - }, - [ - _c( - "NcButton", - { - attrs: { - type: "tertiary", - "aria-label": _vm.t( - "photos", - "Remove {collaboratorLabel} from the collaborators list", - { - collaboratorLabel: - _vm.availableCollaborators[collaboratorKey].label, - } - ), - }, - on: { - click: function ($event) { - return _vm.unselectEntity(collaboratorKey) - }, - }, - }, - [ - _c("Close", { - attrs: { slot: "icon", size: 20 }, - slot: "icon", - }), - ], - 1 - ), - ], - 1 - ), - ], - 1 - ) - }), - 0 - ), - _vm._v(" "), - _c("div", { staticClass: "actions" }, [ - _c( - "div", - { staticClass: "actions__slot" }, - [_vm._t("default", null, { collaborators: _vm.selectedCollaborators })], - 2 - ), - ]), - ]) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }) - -}]); -//# sourceMappingURL=photos-src_mixins_FetchAlbumsMixin_js-src_components_Actions_ActionFavorite_vue-src_components_Album-1e5e7f.js.map?v=f5e6627287126f7a1cb6 \ No newline at end of file diff --git a/js/photos-src_mixins_FetchAlbumsMixin_js-src_components_Actions_ActionFavorite_vue-src_components_Album-1e5e7f.js.map b/js/photos-src_mixins_FetchAlbumsMixin_js-src_components_Actions_ActionFavorite_vue-src_components_Album-1e5e7f.js.map deleted file mode 100644 index 533a202dc..000000000 --- a/js/photos-src_mixins_FetchAlbumsMixin_js-src_components_Actions_ActionFavorite_vue-src_components_Album-1e5e7f.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-src_mixins_FetchAlbumsMixin_js-src_components_Actions_ActionFavorite_vue-src_components_Album-1e5e7f.js?v=f5e6627287126f7a1cb6","mappings":";;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;AC/EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;ACxPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;AC9RA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;ACpIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;;;;ACtCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;;;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;ACvCA;;;;;;;;;;;;;;;ACAA;;;;;;;;;;;;;;;ACAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;AC9CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;ACjSA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sources":["webpack:///photos/src/components/Actions/ActionFavorite.vue?vue&type=script&lang=js&","webpack:///photos/src/components/Albums/AlbumForm.vue?vue&type=script&lang=js&","webpack:///photos/src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=script&lang=js&","webpack:///photos/src/mixins/FetchAlbumsMixin.js","webpack:///photos/src/components/Albums/AlbumForm.vue?vue&type=style&index=0&id=1d54fb78&lang=scss&scoped=true&","webpack:///photos/src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=02023324&lang=scss&scoped=true&","webpack://photos/./src/components/Albums/AlbumForm.vue?b00f","webpack://photos/./src/components/Albums/CollaboratorsSelectionForm.vue?5802","webpack:///photos/src/components/Actions/ActionFavorite.vue","webpack:///photos/src/components/Albums/AlbumForm.vue","webpack:///photos/src/components/Albums/CollaboratorsSelectionForm.vue","webpack://photos/./src/components/Actions/ActionFavorite.vue?d6b8","webpack://photos/./src/components/Albums/AlbumForm.vue?f038","webpack://photos/./src/components/Albums/CollaboratorsSelectionForm.vue?8cce","webpack:///photos/src/components/Actions/ActionFavorite.vue?vue&type=template&id=607ef4d8&","webpack:///photos/src/components/Albums/AlbumForm.vue?vue&type=template&id=1d54fb78&scoped=true&","webpack:///photos/src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=template&id=02023324&scoped=true&"],"sourcesContent":["//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport { mapActions, mapGetters } from 'vuex';\nimport Star from 'vue-material-design-icons/Star';\nimport { NcActionButton } from '@nextcloud/vue';\nexport default {\n name: 'ActionFavorite',\n components: {\n Star,\n NcActionButton\n },\n props: {\n selectedFileIds: {\n type: Array,\n required: true\n }\n },\n computed: { ...mapGetters(['files']),\n\n /** @return {boolean} */\n shouldFavoriteSelection() {\n // Favorite all selection if at least one file is not in the favorites.\n return this.selectedFileIds.some(fileId => this.files[fileId].favorite === 0);\n }\n\n },\n methods: { ...mapActions(['toggleFavoriteForFiles']),\n\n async favoriteSelection() {\n await this.toggleFavoriteForFiles({\n fileIds: this.selectedFileIds,\n favoriteState: 1\n });\n },\n\n async unFavoriteSelection() {\n await this.toggleFavoriteForFiles({\n fileIds: this.selectedFileIds,\n favoriteState: 0\n });\n }\n\n }\n};","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport { mapActions } from 'vuex';\nimport MapMarker from 'vue-material-design-icons/MapMarker';\nimport AccountMultiplePlus from 'vue-material-design-icons/AccountMultiplePlus';\nimport Send from 'vue-material-design-icons/Send';\nimport { NcButton, NcLoadingIcon, NcTextField } from '@nextcloud/vue';\nimport moment from '@nextcloud/moment';\nimport CollaboratorsSelectionForm from './CollaboratorsSelectionForm.vue';\nexport default {\n name: 'AlbumForm',\n components: {\n MapMarker,\n AccountMultiplePlus,\n Send,\n NcButton,\n NcLoadingIcon,\n NcTextField,\n CollaboratorsSelectionForm\n },\n props: {\n album: {\n type: Object,\n default: null\n },\n displayBackButton: {\n type: Boolean,\n default: false\n }\n },\n\n data() {\n return {\n showCollaboratorView: false,\n albumName: '',\n albumLocation: '',\n loading: false\n };\n },\n\n computed: {\n /**\n * @return {boolean} Whether sharing is enabled.\n */\n editMode() {\n return this.album !== null;\n },\n\n /**\n * @return {boolean} Whether sharing is enabled.\n */\n sharingEnabled() {\n return OC.Share !== undefined;\n }\n\n },\n\n mounted() {\n if (this.editMode) {\n this.albumName = this.album.basename;\n this.albumLocation = this.album.location;\n }\n\n this.$nextTick(() => {\n this.$refs.nameInput.$el.getElementsByTagName('input')[0].focus();\n });\n },\n\n methods: { ...mapActions(['createAlbum', 'renameAlbum', 'updateAlbum']),\n\n submit() {\n let collaborators = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n\n if (this.albumName === '' || this.loading) {\n return;\n }\n\n if (this.editMode) {\n this.handleUpdateAlbum();\n } else {\n this.handleCreateAlbum(collaborators);\n }\n },\n\n async handleCreateAlbum() {\n let collaborators = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n\n try {\n this.loading = true;\n let album = await this.createAlbum({\n album: {\n basename: this.albumName,\n nbItems: 0,\n location: this.albumLocation,\n lastPhoto: -1,\n date: moment().format('MMMM YYYY'),\n collaborators\n }\n });\n\n if (this.albumLocation !== '' || collaborators.length !== 0) {\n album = await this.updateAlbum({\n albumName: this.albumName,\n properties: {\n location: this.albumLocation,\n collaborators\n }\n });\n }\n\n this.$emit('done', {\n album\n });\n } finally {\n this.loading = false;\n }\n },\n\n async handleUpdateAlbum() {\n try {\n this.loading = true;\n let album = { ...this.album\n };\n\n if (this.album.basename !== this.albumName) {\n album = await this.renameAlbum({\n currentAlbumName: this.album.basename,\n newAlbumName: this.albumName\n });\n }\n\n if (this.album.location !== this.albumLocation) {\n album.location = await this.updateAlbum({\n albumName: this.albumName,\n properties: {\n location: this.albumLocation\n }\n });\n }\n\n this.$emit('done', {\n album\n });\n } finally {\n this.loading = false;\n }\n },\n\n back() {\n this.$emit('back');\n }\n\n }\n};","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport Magnify from 'vue-material-design-icons/Magnify';\nimport Close from 'vue-material-design-icons/Close';\nimport axios from '@nextcloud/axios';\nimport { showError } from '@nextcloud/dialogs';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport { generateOcsUrl } from '@nextcloud/router';\nimport { NcButton, NcListItemIcon, NcLoadingIcon, NcPopover, NcTextField } from '@nextcloud/vue';\nimport logger from '../../services/logger.js';\nconst SHARE = {\n TYPE: {\n USER: 0,\n GROUP: 1 // LINK: 3,\n\n }\n};\nexport default {\n name: 'CollaboratorsSelectionForm',\n components: {\n Magnify,\n Close,\n NcLoadingIcon,\n NcButton,\n NcListItemIcon,\n NcTextField,\n NcPopover\n },\n props: {\n albumName: {\n type: String,\n required: true\n },\n collaborators: {\n type: Array,\n default: () => []\n },\n publicLink: {\n type: String,\n default: ''\n },\n allowPublicLink: {\n type: Boolean,\n default: true\n }\n },\n\n data() {\n return {\n searchText: '',\n availableCollaborators: {},\n selectedCollaboratorsKeys: [],\n currentSearchResults: [],\n loadingCollaborators: false,\n randomId: Math.random().toString().substring(2, 10),\n publicLinkCopied: false,\n config: {\n minSearchStringLength: parseInt(OC.config['sharing.minSearchStringLength'], 10) || 0\n }\n };\n },\n\n computed: {\n /**\n * @return {string[]}\n */\n searchResults() {\n return this.currentSearchResults.filter(_ref => {\n let {\n id\n } = _ref;\n return id !== getCurrentUser().uid;\n }).map(_ref2 => {\n let {\n source,\n id\n } = _ref2;\n return `${source}:${id}`;\n }).filter(key => !this.selectedCollaboratorsKeys.includes(key)).map(key => ({\n key,\n height: 48\n }));\n },\n\n /**\n * @return {object[]}\n */\n selectedCollaborators() {\n return this.selectedCollaboratorsKeys.map(collaboratorKey => this.availableCollaborators[collaboratorKey]);\n }\n\n },\n\n mounted() {\n this.searchCollaborators();\n this.selectedCollaboratorsKeys = this.collaborators.map(_ref3 => {\n let {\n source,\n id\n } = _ref3;\n return `${source}:${id}`;\n });\n this.availableCollaborators = { ...this.availableCollaborators,\n ...this.collaborators.reduce((collaborators, collaborator) => ({ ...collaborators,\n [`${collaborator.source}:${collaborator.id}`]: collaborator\n }), {})\n };\n },\n\n methods: {\n /**\n * Fetch possible collaborators.\n */\n async searchCollaborators() {\n try {\n if (this.searchText.length < this.config.minSearchStringLength) {\n return;\n }\n\n this.loadingCollaborators = true;\n const response = await axios.get(generateOcsUrl('core/autocomplete/get'), {\n params: {\n search: this.searchText,\n itemType: 'share-recipients',\n shareTypes: [SHARE.TYPE.USER, SHARE.TYPE.GROUP]\n }\n });\n this.currentSearchResults = response.data.ocs.data;\n this.availableCollaborators = { ...this.availableCollaborators,\n ...response.data.ocs.data.reduce((collaborators, collaborator) => ({ ...collaborators,\n [`${collaborator.source}:${collaborator.id}`]: collaborator\n }), {})\n };\n } catch (error) {\n this.errorFetchingCollaborators = error;\n logger.error(t('photos', 'Failed to fetch collaborators list.'), error);\n showError(t('photos', 'Failed to fetch collaborators list.'));\n } finally {\n this.loadingCollaborators = false;\n }\n },\n\n // TODO: implement public sharing\n // async createPublicLinkForAlbum() {\n // return axios.put(generateOcsUrl(`apps/photos/createPublicLink/${this.albumName}`))\n // },\n // async deletePublicLink() {\n // return axios.delete(generateOcsUrl(`apps/photos/createPublicLink/${this.albumName}`))\n // },\n // async copyPublicLink() {\n // await navigator.clipboard.writeText(this.publicLink)\n // this.publicLinkCopied = true\n // setTimeout(() => {\n // this.publicLinkCopied = false\n // }, 10000)\n // },\n selectEntity(collaboratorKey) {\n if (this.selectedCollaboratorsKeys.includes(collaboratorKey)) {\n return;\n }\n\n this.$refs.popover.$refs.popover.hide();\n this.selectedCollaboratorsKeys.push(collaboratorKey);\n },\n\n unselectEntity(collaboratorKey) {\n const index = this.selectedCollaboratorsKeys.indexOf(collaboratorKey);\n this.selectedCollaboratorsKeys.splice(index, 1);\n }\n\n }\n};","/**\n * @copyright Copyright (c) 2022 Louis Chemineau \n *\n * @author Louis Chemineau \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 .\n *\n */\nimport { mapGetters } from 'vuex';\nimport moment from '@nextcloud/moment';\nimport { showError } from '@nextcloud/dialogs';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport client from '../services/DavClient.js';\nimport logger from '../services/logger.js';\nimport { genFileInfo } from '../utils/fileUtils.js';\nimport AbortControllerMixin from './AbortControllerMixin.js';\nexport default {\n name: 'FetchAlbumsMixin',\n\n data() {\n return {\n errorFetchingAlbums: null,\n loadingAlbums: false\n };\n },\n\n mixins: [AbortControllerMixin],\n\n async beforeMount() {\n this.fetchAlbums();\n },\n\n computed: { ...mapGetters(['albums'])\n },\n methods: {\n async fetchAlbums() {\n if (this.loadingAlbums) {\n return;\n }\n\n try {\n this.loadingAlbums = true;\n this.errorFetchingAlbums = null;\n const response = await client.getDirectoryContents(`/photos/${getCurrentUser()?.uid}/albums`, {\n data: `\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t`,\n // TODO: implement public sharing\n // \n details: true,\n signal: this.abortController.signal\n });\n const albums = response.data.filter(album => album.filename !== `/photos/${getCurrentUser()?.uid}/albums`) // Ensure that we have a proper collaborators array.\n .map(album => {\n if (album.props.collaborators === '') {\n album.props.collaborators = [];\n } else if (typeof album.props.collaborators.collaborator === 'object') {\n if (Array.isArray(album.props.collaborators.collaborator)) {\n album.props.collaborators = album.props.collaborators.collaborator;\n } else {\n album.props.collaborators = [album.props.collaborators.collaborator];\n }\n }\n\n return album;\n }).map(album => genFileInfo(album)).map(album => {\n const dateRange = JSON.parse(album.dateRange?.replace(/"/g, '\"') ?? '{}');\n\n if (dateRange.start === null) {\n dateRange.start = moment().unix();\n dateRange.end = moment().unix();\n }\n\n const dateRangeFormated = {\n startDate: moment.unix(dateRange.start).format('MMMM YYYY'),\n endDate: moment.unix(dateRange.end).format('MMMM YYYY')\n };\n\n if (dateRangeFormated.startDate === dateRangeFormated.endDate) {\n return { ...album,\n date: dateRangeFormated.startDate\n };\n } else {\n return { ...album,\n date: this.t('photos', '{startDate} to {endDate}', dateRangeFormated)\n };\n }\n });\n this.$store.dispatch('addAlbums', {\n albums\n });\n logger.debug(`[FetchAlbumsMixin] Fetched ${albums.length} new files: `, albums);\n } catch (error) {\n if (error.response?.status === 404) {\n this.errorFetchingAlbums = 404;\n } else if (error.code === 'ERR_CANCELED') {\n return;\n } else {\n this.errorFetchingAlbums = error;\n }\n\n logger.error(t('photos', 'Failed to fetch albums list.'), error);\n showError(t('photos', 'Failed to fetch albums list.'));\n } finally {\n this.loadingAlbums = false;\n }\n }\n\n }\n};","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".album-form[data-v-1d54fb78] {\\n display: flex;\\n flex-direction: column;\\n height: 350px;\\n padding: 16px;\\n}\\n.album-form .form-title[data-v-1d54fb78] {\\n font-weight: bold;\\n}\\n.album-form .form-subtitle[data-v-1d54fb78] {\\n color: var(--color-text-lighter);\\n}\\n.album-form .form-inputs[data-v-1d54fb78] {\\n flex-grow: 1;\\n justify-items: flex-end;\\n}\\n.album-form .form-inputs input[data-v-1d54fb78] {\\n width: 100%;\\n}\\n.album-form .form-inputs label[data-v-1d54fb78] {\\n display: flex;\\n margin-top: 16px;\\n}\\n.album-form .form-inputs label[data-v-1d54fb78] svg {\\n margin-right: 12px;\\n}\\n.album-form .form-buttons[data-v-1d54fb78] {\\n display: flex;\\n justify-content: space-between;\\n}\\n.album-form .form-buttons .left-buttons[data-v-1d54fb78], .album-form .form-buttons .right-buttons[data-v-1d54fb78] {\\n display: flex;\\n}\\n.album-form .form-buttons .right-buttons[data-v-1d54fb78] {\\n justify-content: flex-end;\\n}\\n.album-form .form-buttons button[data-v-1d54fb78] {\\n margin-right: 16px;\\n}\\n.left-buttons[data-v-1d54fb78] {\\n flex-grow: 1;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".manage-collaborators[data-v-02023324] {\\n display: flex;\\n flex-direction: column;\\n padding: 20px;\\n height: 500px;\\n}\\n.manage-collaborators__title[data-v-02023324] {\\n font-weight: bold;\\n}\\n.manage-collaborators__subtitle[data-v-02023324] {\\n color: var(--color-text-lighter);\\n}\\n.manage-collaborators__public-link-button[data-v-02023324] {\\n margin: 4px 0;\\n}\\n.manage-collaborators__form[data-v-02023324] {\\n margin-top: 4px 0;\\n display: flex;\\n flex-direction: column;\\n}\\n.manage-collaborators__form__input[data-v-02023324] {\\n position: relative;\\n display: block;\\n}\\n.manage-collaborators__form__input input[data-v-02023324] {\\n width: 100%;\\n padding-left: 34px;\\n}\\n.manage-collaborators__form__input .loading-icon[data-v-02023324] {\\n position: absolute;\\n top: 8px;\\n right: 8px;\\n}\\n.manage-collaborators__form__list[data-v-02023324] {\\n padding: 8px;\\n}\\n.manage-collaborators__form__list__result[data-v-02023324] {\\n padding: 8px;\\n border-radius: 100px;\\n box-sizing: border-box;\\n}\\n.manage-collaborators__form__list__result[data-v-02023324], .manage-collaborators__form__list__result *[data-v-02023324] {\\n cursor: pointer !important;\\n}\\n.manage-collaborators__form__list__result[data-v-02023324]:hover {\\n background: var(--color-background-dark);\\n}\\n.manage-collaborators__selection[data-v-02023324] {\\n display: flex;\\n flex-direction: column;\\n margin-top: 8px;\\n flex-grow: 1;\\n}\\n.manage-collaborators__selection__item[data-v-02023324] {\\n border-radius: var(--border-radius-pill);\\n padding: 0 8px;\\n}\\n.manage-collaborators__selection__item[data-v-02023324]:hover {\\n background: var(--color-background-dark);\\n}\\n.manage-collaborators .actions[data-v-02023324] {\\n display: flex;\\n margin-top: 8px;\\n}\\n.manage-collaborators .actions__public-link[data-v-02023324] {\\n display: flex;\\n align-items: center;\\n}\\n.manage-collaborators .actions__slot[data-v-02023324] {\\n flex-grow: 1;\\n display: flex;\\n justify-content: flex-end;\\n align-items: center;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n import API from \"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./AlbumForm.vue?vue&type=style&index=0&id=1d54fb78&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./AlbumForm.vue?vue&type=style&index=0&id=1d54fb78&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","\n import API from \"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=02023324&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=02023324&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./ActionFavorite.vue?vue&type=template&id=607ef4d8&\"\nimport script from \"./ActionFavorite.vue?vue&type=script&lang=js&\"\nexport * from \"./ActionFavorite.vue?vue&type=script&lang=js&\"\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\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/louis/workspace/nextcloud/apps/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('607ef4d8')) {\n api.createRecord('607ef4d8', component.options)\n } else {\n api.reload('607ef4d8', component.options)\n }\n module.hot.accept(\"./ActionFavorite.vue?vue&type=template&id=607ef4d8&\", function () {\n api.rerender('607ef4d8', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/Actions/ActionFavorite.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./AlbumForm.vue?vue&type=template&id=1d54fb78&scoped=true&\"\nimport script from \"./AlbumForm.vue?vue&type=script&lang=js&\"\nexport * from \"./AlbumForm.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AlbumForm.vue?vue&type=style&index=0&id=1d54fb78&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 \"1d54fb78\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/louis/workspace/nextcloud/apps/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('1d54fb78')) {\n api.createRecord('1d54fb78', component.options)\n } else {\n api.reload('1d54fb78', component.options)\n }\n module.hot.accept(\"./AlbumForm.vue?vue&type=template&id=1d54fb78&scoped=true&\", function () {\n api.rerender('1d54fb78', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/Albums/AlbumForm.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./CollaboratorsSelectionForm.vue?vue&type=template&id=02023324&scoped=true&\"\nimport script from \"./CollaboratorsSelectionForm.vue?vue&type=script&lang=js&\"\nexport * from \"./CollaboratorsSelectionForm.vue?vue&type=script&lang=js&\"\nimport style0 from \"./CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=02023324&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 \"02023324\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/louis/workspace/nextcloud/apps/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('02023324')) {\n api.createRecord('02023324', component.options)\n } else {\n api.reload('02023324', component.options)\n }\n module.hot.accept(\"./CollaboratorsSelectionForm.vue?vue&type=template&id=02023324&scoped=true&\", function () {\n api.rerender('02023324', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/Albums/CollaboratorsSelectionForm.vue\"\nexport default component.exports","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActionFavorite.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!./ActionFavorite.vue?vue&type=script&lang=js&\"","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AlbumForm.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!./AlbumForm.vue?vue&type=script&lang=js&\"","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CollaboratorsSelectionForm.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!./CollaboratorsSelectionForm.vue?vue&type=script&lang=js&\"","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _vm.shouldFavoriteSelection\n ? _c(\n \"NcActionButton\",\n {\n attrs: {\n \"close-after-click\": true,\n \"aria-label\": _vm.t(\"photos\", \"Mark selection as favorite\"),\n },\n on: { click: _vm.favoriteSelection },\n },\n [\n _vm._v(\n \"\\n\\t\" +\n _vm._s(_vm.t(\"photos\", \"Add selection to favorites\")) +\n \"\\n\\t\"\n ),\n _c(\"Star\", { attrs: { slot: \"icon\" }, slot: \"icon\" }),\n ],\n 1\n )\n : _c(\n \"NcActionButton\",\n {\n attrs: {\n \"close-after-click\": true,\n \"aria-label\": _vm.t(\"photos\", \"Remove selection from favorites\"),\n },\n on: { click: _vm.unFavoriteSelection },\n },\n [\n _vm._v(\n \"\\n\\t\" +\n _vm._s(_vm.t(\"photos\", \"Remove selection from favorites\")) +\n \"\\n\\t\"\n ),\n _c(\"Star\", { attrs: { slot: \"icon\" }, slot: \"icon\" }),\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return !_vm.showCollaboratorView\n ? _c(\n \"form\",\n {\n staticClass: \"album-form\",\n on: {\n submit: function ($event) {\n $event.preventDefault()\n return _vm.submit.apply(null, arguments)\n },\n },\n },\n [\n _c(\n \"div\",\n { staticClass: \"form-inputs\" },\n [\n _c(\"NcTextField\", {\n ref: \"nameInput\",\n attrs: {\n value: _vm.albumName,\n type: \"text\",\n name: \"name\",\n required: true,\n autofocus: \"true\",\n placeholder: _vm.t(\"photos\", \"Name of the album\"),\n },\n on: {\n \"update:value\": function ($event) {\n _vm.albumName = $event\n },\n },\n }),\n _vm._v(\" \"),\n _c(\n \"label\",\n [\n _c(\"MapMarker\"),\n _c(\"NcTextField\", {\n attrs: {\n value: _vm.albumLocation,\n name: \"location\",\n type: \"text\",\n placeholder: _vm.t(\"photos\", \"Location of the album\"),\n },\n on: {\n \"update:value\": function ($event) {\n _vm.albumLocation = $event\n },\n },\n }),\n ],\n 1\n ),\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"form-buttons\" }, [\n _c(\n \"span\",\n { staticClass: \"left-buttons\" },\n [\n _vm.displayBackButton\n ? _c(\n \"NcButton\",\n {\n attrs: {\n \"aria-label\": _vm.t(\n \"photos\",\n \"Go back to the previous view.\"\n ),\n type: \"tertiary\",\n },\n on: { click: _vm.back },\n },\n [\n _vm._v(\n \"\\n\\t\\t\\t\\t\" +\n _vm._s(_vm.t(\"photos\", \"Back\")) +\n \"\\n\\t\\t\\t\"\n ),\n ]\n )\n : _vm._e(),\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"span\",\n { staticClass: \"right-buttons\" },\n [\n _vm.sharingEnabled && !_vm.editMode\n ? _c(\n \"NcButton\",\n {\n attrs: {\n \"aria-label\": _vm.t(\n \"photos\",\n \"Go to the add collaborators view.\"\n ),\n type: \"secondary\",\n disabled: _vm.albumName.trim() === \"\" || _vm.loading,\n },\n on: {\n click: function ($event) {\n _vm.showCollaboratorView = true\n },\n },\n scopedSlots: _vm._u(\n [\n {\n key: \"icon\",\n fn: function () {\n return [_c(\"AccountMultiplePlus\")]\n },\n proxy: true,\n },\n ],\n null,\n false,\n 1531126728\n ),\n },\n [\n _vm._v(\n \"\\n\\t\\t\\t\\t\" +\n _vm._s(_vm.t(\"photos\", \"Add collaborators\")) +\n \"\\n\\t\\t\\t\"\n ),\n ]\n )\n : _vm._e(),\n _vm._v(\" \"),\n _c(\n \"NcButton\",\n {\n attrs: {\n \"aria-label\": _vm.editMode\n ? _vm.t(\"photos\", \"Save.\")\n : _vm.t(\"photos\", \"Create the album.\"),\n type: \"primary\",\n disabled: _vm.albumName === \"\" || _vm.loading,\n },\n on: {\n click: function ($event) {\n return _vm.submit()\n },\n },\n scopedSlots: _vm._u(\n [\n {\n key: \"icon\",\n fn: function () {\n return [\n _vm.loading ? _c(\"NcLoadingIcon\") : _c(\"Send\"),\n ]\n },\n proxy: true,\n },\n ],\n null,\n false,\n 3914512768\n ),\n },\n [\n _vm._v(\n \"\\n\\t\\t\\t\\t\" +\n _vm._s(\n _vm.editMode\n ? _vm.t(\"photos\", \"Save\")\n : _vm.t(\"photos\", \"Create album\")\n ) +\n \"\\n\\t\\t\\t\"\n ),\n ]\n ),\n ],\n 1\n ),\n ]),\n ]\n )\n : _c(\"CollaboratorsSelectionForm\", {\n attrs: { \"album-name\": _vm.albumName, \"allow-public-link\": false },\n scopedSlots: _vm._u([\n {\n key: \"default\",\n fn: function (ref) {\n var collaborators = ref.collaborators\n return [\n _c(\n \"span\",\n { staticClass: \"left-buttons\" },\n [\n _c(\n \"NcButton\",\n {\n attrs: {\n \"aria-label\": _vm.t(\n \"photos\",\n \"Back to the new album form.\"\n ),\n type: \"tertiary\",\n },\n on: {\n click: function ($event) {\n _vm.showCollaboratorView = false\n },\n },\n },\n [\n _vm._v(\n \"\\n\\t\\t\\t\\t\" +\n _vm._s(_vm.t(\"photos\", \"Back\")) +\n \"\\n\\t\\t\\t\"\n ),\n ]\n ),\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"span\",\n { staticClass: \"right-buttons\" },\n [\n _c(\n \"NcButton\",\n {\n attrs: {\n \"aria-label\": _vm.editMode\n ? _vm.t(\"photos\", \"Save.\")\n : _vm.t(\"photos\", \"Create the album.\"),\n type: \"primary\",\n disabled: _vm.albumName.trim() === \"\" || _vm.loading,\n },\n on: {\n click: function ($event) {\n return _vm.submit(collaborators)\n },\n },\n scopedSlots: _vm._u(\n [\n {\n key: \"icon\",\n fn: function () {\n return [\n _vm.loading\n ? _c(\"NcLoadingIcon\")\n : _c(\"Send\"),\n ]\n },\n proxy: true,\n },\n ],\n null,\n true\n ),\n },\n [\n _vm._v(\n \"\\n\\t\\t\\t\\t\" +\n _vm._s(\n _vm.editMode\n ? _vm.t(\"photos\", \"Save\")\n : _vm.t(\"photos\", \"Create album\")\n ) +\n \"\\n\\t\\t\\t\"\n ),\n ]\n ),\n ],\n 1\n ),\n ]\n },\n },\n ]),\n })\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"div\", { staticClass: \"manage-collaborators\" }, [\n _c(\"h2\", { staticClass: \"manage-collaborators__title\" }, [\n _vm._v(\"\\n\\t\\t\" + _vm._s(_vm.t(\"photos\", \"Add collaborators\")) + \"\\n\\t\"),\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"manage-collaborators__subtitle\" }, [\n _vm._v(\n \"\\n\\t\\t\" +\n _vm._s(\n _vm.t(\"photos\", \"Add people or groups who can edit your album\")\n ) +\n \"\\n\\t\"\n ),\n ]),\n _vm._v(\" \"),\n _c(\n \"form\",\n {\n staticClass: \"manage-collaborators__form\",\n on: {\n submit: function ($event) {\n $event.preventDefault()\n },\n },\n },\n [\n _c(\n \"NcPopover\",\n { ref: \"popover\", attrs: { \"auto-size\": true, distance: 0 } },\n [\n _c(\n \"label\",\n {\n staticClass: \"manage-collaborators__form__input\",\n attrs: { slot: \"trigger\" },\n slot: \"trigger\",\n },\n [\n _c(\n \"NcTextField\",\n {\n attrs: {\n value: _vm.searchText,\n autocomplete: \"off\",\n type: \"search\",\n name: \"search\",\n \"aria-label\": _vm.t(\"photos\", \"Search for collaborators\"),\n \"aria-autocomplete\": \"list\",\n \"aria-controls\":\n \"manage-collaborators__form__selection-\" +\n _vm.randomId +\n \" manage-collaborators__form__list-\" +\n _vm.randomId,\n placeholder: _vm.t(\"photos\", \"Search people or groups\"),\n },\n on: {\n \"update:value\": function ($event) {\n _vm.searchText = $event\n },\n input: _vm.searchCollaborators,\n },\n },\n [_c(\"Magnify\", { attrs: { size: 16 } })],\n 1\n ),\n _vm._v(\" \"),\n _vm.loadingCollaborators ? _c(\"NcLoadingIcon\") : _vm._e(),\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"ul\",\n {\n staticClass: \"manage-collaborators__form__list\",\n attrs: {\n id: \"manage-collaborators__form__list-\" + _vm.randomId,\n },\n },\n _vm._l(_vm.searchResults, function (result) {\n return _c(\"li\", { key: result.key }, [\n _c(\n \"a\",\n [\n _c(\"NcListItemIcon\", {\n staticClass: \"manage-collaborators__form__list__result\",\n attrs: {\n id: _vm.availableCollaborators[result.key].id,\n title: _vm.availableCollaborators[result.key].id,\n search: _vm.searchText,\n \"display-name\":\n _vm.availableCollaborators[result.key].label,\n \"aria-label\": _vm.t(\n \"photos\",\n \"Add {collaboratorLabel} to the collaborators list\",\n {\n collaboratorLabel:\n _vm.availableCollaborators[result.key].label,\n }\n ),\n },\n on: {\n click: function ($event) {\n return _vm.selectEntity(result.key)\n },\n },\n }),\n ],\n 1\n ),\n ])\n }),\n 0\n ),\n ]\n ),\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"ul\",\n { staticClass: \"manage-collaborators__selection\" },\n _vm._l(_vm.selectedCollaboratorsKeys, function (collaboratorKey) {\n return _c(\n \"li\",\n {\n key: collaboratorKey,\n staticClass: \"manage-collaborators__selection__item\",\n },\n [\n _c(\n \"NcListItemIcon\",\n {\n attrs: {\n id: _vm.availableCollaborators[collaboratorKey].id,\n title: _vm.availableCollaborators[collaboratorKey].id,\n \"display-name\":\n _vm.availableCollaborators[collaboratorKey].label,\n \"aria-label\": _vm.t(\n \"photos\",\n \"Remove {collaboratorLabel} from the collaborators list\",\n {\n collaboratorLabel:\n _vm.availableCollaborators[collaboratorKey].label,\n }\n ),\n },\n },\n [\n _c(\n \"NcButton\",\n {\n attrs: {\n type: \"tertiary\",\n \"aria-label\": _vm.t(\n \"photos\",\n \"Remove {collaboratorLabel} from the collaborators list\",\n {\n collaboratorLabel:\n _vm.availableCollaborators[collaboratorKey].label,\n }\n ),\n },\n on: {\n click: function ($event) {\n return _vm.unselectEntity(collaboratorKey)\n },\n },\n },\n [\n _c(\"Close\", {\n attrs: { slot: \"icon\", size: 20 },\n slot: \"icon\",\n }),\n ],\n 1\n ),\n ],\n 1\n ),\n ],\n 1\n )\n }),\n 0\n ),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"actions\" }, [\n _c(\n \"div\",\n { staticClass: \"actions__slot\" },\n [_vm._t(\"default\", null, { collaborators: _vm.selectedCollaborators })],\n 2\n ),\n ]),\n ])\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-src_mixins_FetchAlbumsMixin_js-src_components_AlbumForm_vue.js b/js/photos-src_mixins_FetchAlbumsMixin_js-src_components_AlbumForm_vue.js deleted file mode 100644 index 75d9b3588..000000000 --- a/js/photos-src_mixins_FetchAlbumsMixin_js-src_components_AlbumForm_vue.js +++ /dev/null @@ -1,1259 +0,0 @@ -"use strict"; -(self["webpackChunkphotos"] = self["webpackChunkphotos"] || []).push([["src_mixins_FetchAlbumsMixin_js-src_components_AlbumForm_vue"],{ - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/AlbumForm.vue?vue&type=script&lang=js&": -/*!*******************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/AlbumForm.vue?vue&type=script&lang=js& ***! - \*******************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! vuex */ "./node_modules/vuex/dist/vuex.esm.js"); -/* harmony import */ var vue_material_design_icons_MapMarker__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue-material-design-icons/MapMarker */ "./node_modules/vue-material-design-icons/MapMarker.vue"); -/* harmony import */ var vue_material_design_icons_Send__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! vue-material-design-icons/Send */ "./node_modules/vue-material-design-icons/Send.vue"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @nextcloud/vue */ "./node_modules/@nextcloud/vue/dist/ncvuecomponents.js"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _nextcloud_moment__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @nextcloud/moment */ "./node_modules/@nextcloud/moment/dist/index.js"); -/* harmony import */ var _nextcloud_moment__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_moment__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _CollaboratorsSelectionForm_vue__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./CollaboratorsSelectionForm.vue */ "./src/components/CollaboratorsSelectionForm.vue"); -function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } - -function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } - -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } - -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - - // import AccountMultiplePlus from 'vue-material-design-icons/AccountMultiplePlus' - - - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'AlbumForm', - components: { - NcButton: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_2__.NcButton, - MapMarker: vue_material_design_icons_MapMarker__WEBPACK_IMPORTED_MODULE_0__["default"], - // AccountMultiplePlus, - Send: vue_material_design_icons_Send__WEBPACK_IMPORTED_MODULE_1__["default"], - NcLoadingIcon: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_2__.NcLoadingIcon, - NcTextField: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_2__.NcTextField, - CollaboratorsSelectionForm: _CollaboratorsSelectionForm_vue__WEBPACK_IMPORTED_MODULE_4__["default"] - }, - props: { - album: { - type: Object, - default: null - }, - displayBackButton: { - type: Boolean, - default: false - } - }, - data: function data() { - return { - showCollaboratorView: false, - albumName: '', - albumLocation: '', - loading: false - }; - }, - computed: { - editMode: function editMode() { - return this.album !== null; - } - }, - mounted: function mounted() { - var _this = this; - - if (this.editMode) { - this.albumName = this.album.basename; - this.albumLocation = this.album.location; - } - - this.$nextTick(function () { - _this.$refs.nameInput.$el.getElementsByTagName('input')[0].focus(); - }); - }, - methods: _objectSpread(_objectSpread({}, (0,vuex__WEBPACK_IMPORTED_MODULE_5__.mapActions)(['createAlbum', 'renameAlbum', 'updateAlbumLocation'])), {}, { - submit: function submit() { - var collaborators = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : []; - - if (this.albumName === '' || this.loading) { - return; - } - - if (this.editMode) { - this.handleUpdateAlbum(collaborators); - } else { - this.handleCreateAlbum(collaborators); - } - }, - handleCreateAlbum: function handleCreateAlbum() { - var _arguments = arguments, - _this2 = this; - - return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() { - var collaborators, album; - return regeneratorRuntime.wrap(function _callee$(_context) { - while (1) { - switch (_context.prev = _context.next) { - case 0: - collaborators = _arguments.length > 0 && _arguments[0] !== undefined ? _arguments[0] : []; - _context.prev = 1; - _this2.loading = true; - _context.next = 5; - return _this2.createAlbum({ - album: { - basename: _this2.albumName, - nbItems: 0, - location: _this2.albumLocation, - lastPhoto: '', - date: _nextcloud_moment__WEBPACK_IMPORTED_MODULE_3___default()().format('MMMM YYYY'), - collaborators: collaborators - } - }); - - case 5: - album = _context.sent; - - _this2.$emit('done', { - album: album - }); - - case 7: - _context.prev = 7; - _this2.loading = false; - return _context.finish(7); - - case 10: - case "end": - return _context.stop(); - } - } - }, _callee, null, [[1,, 7, 10]]); - }))(); - }, - handleUpdateAlbum: function handleUpdateAlbum() { - var _arguments2 = arguments, - _this3 = this; - - return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() { - var collaborators, album; - return regeneratorRuntime.wrap(function _callee2$(_context2) { - while (1) { - switch (_context2.prev = _context2.next) { - case 0: - collaborators = _arguments2.length > 0 && _arguments2[0] !== undefined ? _arguments2[0] : []; - _context2.prev = 1; - _this3.loading = true; - album = _objectSpread({}, _this3.album); - - if (!(_this3.album.basename !== _this3.albumName)) { - _context2.next = 8; - break; - } - - _context2.next = 7; - return _this3.renameAlbum({ - currentAlbumName: _this3.album.basename, - newAlbumName: _this3.albumName - }); - - case 7: - album = _context2.sent; - - case 8: - if (!(_this3.album.location !== _this3.albumLocation)) { - _context2.next = 12; - break; - } - - _context2.next = 11; - return _this3.updateAlbumLocation({ - albumName: _this3.albumName, - newLocation: _this3.albumLocation - }); - - case 11: - album.location = _context2.sent; - - case 12: - _this3.$emit('done', { - album: album - }); - - case 13: - _context2.prev = 13; - _this3.loading = false; - return _context2.finish(13); - - case 16: - case "end": - return _context2.stop(); - } - } - }, _callee2, null, [[1,, 13, 16]]); - }))(); - }, - back: function back() { - this.$emit('back'); - } - }) -}); - -/***/ }), - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/CollaboratorsSelectionForm.vue?vue&type=script&lang=js&": -/*!************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/CollaboratorsSelectionForm.vue?vue&type=script&lang=js& ***! - \************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var vue_material_design_icons_Magnify__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue-material-design-icons/Magnify */ "./node_modules/vue-material-design-icons/Magnify.vue"); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'CollaboratorsSelectionForm', - components: { - Magnify: vue_material_design_icons_Magnify__WEBPACK_IMPORTED_MODULE_0__["default"] - }, - data: function data() { - return { - loading: false - }; - } -}); - -/***/ }), - -/***/ "./src/mixins/FetchAlbumsMixin.js": -/*!****************************************!*\ - !*** ./src/mixins/FetchAlbumsMixin.js ***! - \****************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! vuex */ "./node_modules/vuex/dist/vuex.esm.js"); -/* harmony import */ var _nextcloud_moment__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/moment */ "./node_modules/@nextcloud/moment/dist/index.js"); -/* harmony import */ var _nextcloud_moment__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_moment__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/dialogs */ "./node_modules/@nextcloud/dialogs/dist/index.es.js"); -/* harmony import */ var _nextcloud_auth__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @nextcloud/auth */ "./node_modules/@nextcloud/auth/dist/index.esm.js"); -/* harmony import */ var _services_DavClient_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../services/DavClient.js */ "./src/services/DavClient.js"); -/* harmony import */ var _services_logger_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../services/logger.js */ "./src/services/logger.js"); -/* harmony import */ var _utils_fileUtils_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../utils/fileUtils.js */ "./src/utils/fileUtils.js"); -/* harmony import */ var _AbortControllerMixin__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./AbortControllerMixin */ "./src/mixins/AbortControllerMixin.js"); -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } - -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } - -function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } - -/** - * @copyright Copyright (c) 2022 Louis Chemineau - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ - - - - - - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'FetchAlbumsMixin', - data: function data() { - return { - errorFetchingAlbums: null, - loadingAlbums: false - }; - }, - mixins: [_AbortControllerMixin__WEBPACK_IMPORTED_MODULE_6__["default"]], - beforeMount: function beforeMount() { - var _this = this; - - return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() { - return regeneratorRuntime.wrap(function _callee$(_context) { - while (1) { - switch (_context.prev = _context.next) { - case 0: - _this.fetchAlbums(); - - case 1: - case "end": - return _context.stop(); - } - } - }, _callee); - }))(); - }, - beforeDestroy: function beforeDestroy() { - this.cancelAlbumsRequest('Changed view'); - }, - computed: _objectSpread({}, (0,vuex__WEBPACK_IMPORTED_MODULE_7__.mapGetters)(['albums'])), - methods: { - fetchAlbums: function fetchAlbums() { - var _this2 = this; - - return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() { - var _getCurrentUser, response, albums, _error$response; - - return regeneratorRuntime.wrap(function _callee2$(_context2) { - while (1) { - switch (_context2.prev = _context2.next) { - case 0: - if (!_this2.loadingAlbums) { - _context2.next = 2; - break; - } - - return _context2.abrupt("return"); - - case 2: - _context2.prev = 2; - _this2.loadingAlbums = true; - _this2.errorFetchingAlbums = null; - _context2.next = 7; - return _services_DavClient_js__WEBPACK_IMPORTED_MODULE_3__["default"].getDirectoryContents("/photos/".concat((_getCurrentUser = (0,_nextcloud_auth__WEBPACK_IMPORTED_MODULE_2__.getCurrentUser)()) === null || _getCurrentUser === void 0 ? void 0 : _getCurrentUser.uid, "/albums"), { - data: "\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t", - details: true, - signal: _this2.abortController.signal - }); - - case 7: - response = _context2.sent; - albums = response.data.filter(function (album) { - return album.filename !== '/photos/admin/albums'; - }).map(function (album) { - return (0,_utils_fileUtils_js__WEBPACK_IMPORTED_MODULE_5__.genFileInfo)(album); - }).map(function (album) { - var _album$dateRange$repl, _album$dateRange; - - var dateRange = JSON.parse((_album$dateRange$repl = (_album$dateRange = album.dateRange) === null || _album$dateRange === void 0 ? void 0 : _album$dateRange.replace(/"/g, '"')) !== null && _album$dateRange$repl !== void 0 ? _album$dateRange$repl : '{}'); - - if (dateRange.start === null) { - dateRange.start = _nextcloud_moment__WEBPACK_IMPORTED_MODULE_0___default()().unix(); - dateRange.end = _nextcloud_moment__WEBPACK_IMPORTED_MODULE_0___default()().unix(); - } - - var dateRangeFormated = { - startDate: _nextcloud_moment__WEBPACK_IMPORTED_MODULE_0___default().unix(dateRange.start).format('MMMM YYYY'), - endDate: _nextcloud_moment__WEBPACK_IMPORTED_MODULE_0___default().unix(dateRange.end).format('MMMM YYYY') - }; - - if (dateRangeFormated.startDate === dateRangeFormated.endDate) { - return _objectSpread(_objectSpread({}, album), {}, { - date: dateRangeFormated - }); - } else { - return _objectSpread(_objectSpread({}, album), {}, { - date: _this2.t('photos', '{startDate} to {endDate}', dateRangeFormated) - }); - } - }); - - _this2.$store.dispatch('addAlbums', { - albums: albums - }); - - _services_logger_js__WEBPACK_IMPORTED_MODULE_4__["default"].debug("[FetchAlbumsMixin] Fetched ".concat(albums.length, " new files: "), albums); - _context2.next = 26; - break; - - case 13: - _context2.prev = 13; - _context2.t0 = _context2["catch"](2); - - if (!(((_error$response = _context2.t0.response) === null || _error$response === void 0 ? void 0 : _error$response.status) === 404)) { - _context2.next = 19; - break; - } - - _this2.errorFetchingAlbums = 404; - _context2.next = 24; - break; - - case 19: - if (!(_context2.t0.code === 'ERR_CANCELED')) { - _context2.next = 23; - break; - } - - return _context2.abrupt("return"); - - case 23: - _this2.errorFetchingAlbums = _context2.t0; - - case 24: - _services_logger_js__WEBPACK_IMPORTED_MODULE_4__["default"].error(t('photos', 'Failed to fetch albums list.'), _context2.t0); - (0,_nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_1__.showError)(t('photos', 'Failed to fetch albums list.')); - - case 26: - _context2.prev = 26; - _this2.loadingAlbums = false; - return _context2.finish(26); - - case 29: - case "end": - return _context2.stop(); - } - } - }, _callee2, null, [[2, 13, 26, 29]]); - }))(); - } - } -}); - -/***/ }), - -/***/ "./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!./src/components/AlbumForm.vue?vue&type=style&index=0&id=59290653&lang=scss&scoped=true&": -/*!*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/components/AlbumForm.vue?vue&type=style&index=0&id=59290653&lang=scss&scoped=true& ***! - \*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".album-form[data-v-59290653] {\n display: flex;\n flex-direction: column;\n height: 350px;\n padding: 16px;\n}\n.album-form .form-title[data-v-59290653] {\n font-weight: bold;\n}\n.album-form .form-subtitle[data-v-59290653] {\n color: var(--color-text-lighter);\n}\n.album-form .form-inputs[data-v-59290653] {\n flex-grow: 1;\n justify-items: flex-end;\n}\n.album-form .form-inputs input[data-v-59290653] {\n width: 100%;\n}\n.album-form .form-inputs label[data-v-59290653] {\n display: flex;\n margin-top: 16px;\n}\n.album-form .form-inputs label[data-v-59290653] svg {\n margin-right: 12px;\n}\n.album-form .form-buttons[data-v-59290653] {\n display: flex;\n justify-content: space-between;\n}\n.album-form .form-buttons .left-buttons[data-v-59290653], .album-form .form-buttons .right-buttons[data-v-59290653] {\n display: flex;\n}\n.album-form .form-buttons .right-buttons[data-v-59290653] {\n justify-content: flex-end;\n}\n.album-form .form-buttons button[data-v-59290653] {\n margin-right: 16px;\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./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!./src/components/CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=414c8cf3&lang=scss&scoped=true&": -/*!************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/components/CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=414c8cf3&lang=scss&scoped=true& ***! - \************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".add-collaborators-form[data-v-414c8cf3] {\n display: flex;\n flex-direction: column;\n height: 500px;\n padding: 16px;\n}\n.add-collaborators-form .form-title[data-v-414c8cf3] {\n font-weight: bold;\n}\n.add-collaborators-form .form-subtitle[data-v-414c8cf3] {\n color: var(--color-text-lighter);\n}\n.add-collaborators-form .form-inputs[data-v-414c8cf3] {\n flex-grow: 1;\n justify-items: flex-end;\n}\n.add-collaborators-form .form-inputs input[data-v-414c8cf3] {\n width: 100%;\n}\n.add-collaborators-form .form-inputs label[data-v-414c8cf3] {\n display: flex;\n margin-top: 16px;\n}\n.add-collaborators-form .form-inputs label[data-v-414c8cf3] svg {\n margin-right: 12px;\n}\n.add-collaborators-form .form-buttons[data-v-414c8cf3] {\n display: flex;\n justify-content: space-between;\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/AlbumForm.vue?vue&type=style&index=0&id=59290653&lang=scss&scoped=true&": -/*!***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/components/AlbumForm.vue?vue&type=style&index=0&id=59290653&lang=scss&scoped=true& ***! - \***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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_AlbumForm_vue_vue_type_style_index_0_id_59290653_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../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!./AlbumForm.vue?vue&type=style&index=0&id=59290653&lang=scss&scoped=true& */ "./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!./src/components/AlbumForm.vue?vue&type=style&index=0&id=59290653&lang=scss&scoped=true&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_AlbumForm_vue_vue_type_style_index_0_id_59290653_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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_AlbumForm_vue_vue_type_style_index_0_id_59290653_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_AlbumForm_vue_vue_type_style_index_0_id_59290653_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_AlbumForm_vue_vue_type_style_index_0_id_59290653_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=414c8cf3&lang=scss&scoped=true&": -/*!****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/components/CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=414c8cf3&lang=scss&scoped=true& ***! - \****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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_CollaboratorsSelectionForm_vue_vue_type_style_index_0_id_414c8cf3_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../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!./CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=414c8cf3&lang=scss&scoped=true& */ "./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!./src/components/CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=414c8cf3&lang=scss&scoped=true&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_CollaboratorsSelectionForm_vue_vue_type_style_index_0_id_414c8cf3_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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_CollaboratorsSelectionForm_vue_vue_type_style_index_0_id_414c8cf3_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_CollaboratorsSelectionForm_vue_vue_type_style_index_0_id_414c8cf3_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_CollaboratorsSelectionForm_vue_vue_type_style_index_0_id_414c8cf3_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./src/components/AlbumForm.vue": -/*!**************************************!*\ - !*** ./src/components/AlbumForm.vue ***! - \**************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _AlbumForm_vue_vue_type_template_id_59290653_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./AlbumForm.vue?vue&type=template&id=59290653&scoped=true& */ "./src/components/AlbumForm.vue?vue&type=template&id=59290653&scoped=true&"); -/* harmony import */ var _AlbumForm_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./AlbumForm.vue?vue&type=script&lang=js& */ "./src/components/AlbumForm.vue?vue&type=script&lang=js&"); -/* harmony import */ var _AlbumForm_vue_vue_type_style_index_0_id_59290653_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./AlbumForm.vue?vue&type=style&index=0&id=59290653&lang=scss&scoped=true& */ "./src/components/AlbumForm.vue?vue&type=style&index=0&id=59290653&lang=scss&scoped=true&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( - _AlbumForm_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _AlbumForm_vue_vue_type_template_id_59290653_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render, - _AlbumForm_vue_vue_type_template_id_59290653_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - "59290653", - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/AlbumForm.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/CollaboratorsSelectionForm.vue": -/*!*******************************************************!*\ - !*** ./src/components/CollaboratorsSelectionForm.vue ***! - \*******************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _CollaboratorsSelectionForm_vue_vue_type_template_id_414c8cf3_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./CollaboratorsSelectionForm.vue?vue&type=template&id=414c8cf3&scoped=true& */ "./src/components/CollaboratorsSelectionForm.vue?vue&type=template&id=414c8cf3&scoped=true&"); -/* harmony import */ var _CollaboratorsSelectionForm_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./CollaboratorsSelectionForm.vue?vue&type=script&lang=js& */ "./src/components/CollaboratorsSelectionForm.vue?vue&type=script&lang=js&"); -/* harmony import */ var _CollaboratorsSelectionForm_vue_vue_type_style_index_0_id_414c8cf3_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=414c8cf3&lang=scss&scoped=true& */ "./src/components/CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=414c8cf3&lang=scss&scoped=true&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( - _CollaboratorsSelectionForm_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _CollaboratorsSelectionForm_vue_vue_type_template_id_414c8cf3_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render, - _CollaboratorsSelectionForm_vue_vue_type_template_id_414c8cf3_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - "414c8cf3", - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/CollaboratorsSelectionForm.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/AlbumForm.vue?vue&type=script&lang=js&": -/*!***************************************************************!*\ - !*** ./src/components/AlbumForm.vue?vue&type=script&lang=js& ***! - \***************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_AlbumForm_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AlbumForm.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/AlbumForm.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_AlbumForm_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/components/CollaboratorsSelectionForm.vue?vue&type=script&lang=js&": -/*!********************************************************************************!*\ - !*** ./src/components/CollaboratorsSelectionForm.vue?vue&type=script&lang=js& ***! - \********************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_CollaboratorsSelectionForm_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CollaboratorsSelectionForm.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/CollaboratorsSelectionForm.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_CollaboratorsSelectionForm_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/components/AlbumForm.vue?vue&type=style&index=0&id=59290653&lang=scss&scoped=true&": -/*!************************************************************************************************!*\ - !*** ./src/components/AlbumForm.vue?vue&type=style&index=0&id=59290653&lang=scss&scoped=true& ***! - \************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_AlbumForm_vue_vue_type_style_index_0_id_59290653_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/style-loader/dist/cjs.js!../../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!./AlbumForm.vue?vue&type=style&index=0&id=59290653&lang=scss&scoped=true& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/AlbumForm.vue?vue&type=style&index=0&id=59290653&lang=scss&scoped=true&"); - - -/***/ }), - -/***/ "./src/components/CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=414c8cf3&lang=scss&scoped=true&": -/*!*****************************************************************************************************************!*\ - !*** ./src/components/CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=414c8cf3&lang=scss&scoped=true& ***! - \*****************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_CollaboratorsSelectionForm_vue_vue_type_style_index_0_id_414c8cf3_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/style-loader/dist/cjs.js!../../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!./CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=414c8cf3&lang=scss&scoped=true& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=414c8cf3&lang=scss&scoped=true&"); - - -/***/ }), - -/***/ "./src/components/AlbumForm.vue?vue&type=template&id=59290653&scoped=true&": -/*!*********************************************************************************!*\ - !*** ./src/components/AlbumForm.vue?vue&type=template&id=59290653&scoped=true& ***! - \*********************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_AlbumForm_vue_vue_type_template_id_59290653_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_AlbumForm_vue_vue_type_template_id_59290653_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_AlbumForm_vue_vue_type_template_id_59290653_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AlbumForm.vue?vue&type=template&id=59290653&scoped=true& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/AlbumForm.vue?vue&type=template&id=59290653&scoped=true&"); - - -/***/ }), - -/***/ "./src/components/CollaboratorsSelectionForm.vue?vue&type=template&id=414c8cf3&scoped=true&": -/*!**************************************************************************************************!*\ - !*** ./src/components/CollaboratorsSelectionForm.vue?vue&type=template&id=414c8cf3&scoped=true& ***! - \**************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_CollaboratorsSelectionForm_vue_vue_type_template_id_414c8cf3_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_CollaboratorsSelectionForm_vue_vue_type_template_id_414c8cf3_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_CollaboratorsSelectionForm_vue_vue_type_template_id_414c8cf3_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CollaboratorsSelectionForm.vue?vue&type=template&id=414c8cf3&scoped=true& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/CollaboratorsSelectionForm.vue?vue&type=template&id=414c8cf3&scoped=true&"); - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/AlbumForm.vue?vue&type=template&id=59290653&scoped=true&": -/*!************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/AlbumForm.vue?vue&type=template&id=59290653&scoped=true& ***! - \************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return !_vm.showCollaboratorView - ? _c( - "form", - { - staticClass: "album-form", - on: { - submit: function ($event) { - $event.preventDefault() - return _vm.submit.apply(null, arguments) - }, - }, - }, - [ - _c( - "div", - { staticClass: "form-inputs" }, - [ - _c("NcTextField", { - ref: "nameInput", - attrs: { - value: _vm.albumName, - type: "text", - name: "name", - required: true, - autofocus: "true", - placeholder: _vm.t("photos", "Name of the album"), - }, - on: { - "update:value": function ($event) { - _vm.albumName = $event - }, - }, - }), - _vm._v(" "), - _c( - "label", - [ - _c("MapMarker"), - _c("NcTextField", { - attrs: { - value: _vm.albumLocation, - name: "location", - type: "text", - placeholder: _vm.t("photos", "Location of the album"), - }, - on: { - "update:value": function ($event) { - _vm.albumLocation = $event - }, - }, - }), - ], - 1 - ), - ], - 1 - ), - _vm._v(" "), - _c("div", { staticClass: "form-buttons" }, [ - _c( - "span", - { staticClass: "left-buttons" }, - [ - _vm.displayBackButton - ? _c( - "NcButton", - { - attrs: { - "aria-label": _vm.t( - "photos", - "Go back to the previous view." - ), - type: "tertiary", - }, - on: { click: _vm.back }, - }, - [ - _vm._v( - "\n\t\t\t\t" + - _vm._s(_vm.t("photos", "Back")) + - "\n\t\t\t" - ), - ] - ) - : _vm._e(), - ], - 1 - ), - _vm._v(" "), - _c( - "span", - { staticClass: "right-buttons" }, - [ - _c( - "NcButton", - { - attrs: { - "aria-label": _vm.editMode - ? _vm.t("photos", "Save.") - : _vm.t("photos", "Create the album."), - type: "primary", - disabled: _vm.albumName === "" || _vm.loading, - }, - on: { - click: function ($event) { - return _vm.submit() - }, - }, - scopedSlots: _vm._u( - [ - { - key: "icon", - fn: function () { - return [ - _vm.loading ? _c("NcLoadingIcon") : _c("Send"), - ] - }, - proxy: true, - }, - ], - null, - false, - 3914512768 - ), - }, - [ - _vm._v( - "\n\t\t\t\t" + - _vm._s( - _vm.editMode - ? _vm.t("photos", "Save") - : _vm.t("photos", "Create album") - ) + - "\n\t\t\t" - ), - ] - ), - ], - 1 - ), - ]), - ] - ) - : _c("CollaboratorsSelectionForm", { - staticClass: "add-collaborators-form", - on: { - cancel: function ($event) { - _vm.showCollaboratorView = true - }, - }, - scopedSlots: _vm._u([ - { - key: "default", - fn: function (ref) { - var collaborators = ref.collaborators - return [ - _c( - "span", - { staticClass: "left-buttons" }, - [ - _c( - "NcButton", - { - attrs: { - "aria-label": _vm.t( - "photos", - "Back to the new album form." - ), - type: "tertiary", - }, - on: { - click: function ($event) { - _vm.showCollaboratorView = false - }, - }, - }, - [ - _vm._v( - "\n\t\t\t\t" + - _vm._s(_vm.t("photos", "Back")) + - "\n\t\t\t" - ), - ] - ), - ], - 1 - ), - _vm._v(" "), - _c( - "span", - { staticClass: "right-buttons" }, - [ - _c( - "NcButton", - { - attrs: { - "aria-label": _vm.editMode - ? _vm.t("photos", "Save.") - : _vm.t("photos", "Create the album."), - type: "primary", - disabled: _vm.albumName.trim() === "" || _vm.loading, - }, - on: { - click: function ($event) { - return _vm.submit(collaborators) - }, - }, - scopedSlots: _vm._u( - [ - { - key: "icon", - fn: function () { - return [ - _vm.loading - ? _c("NcLoadingIcon") - : _c("Send"), - ] - }, - proxy: true, - }, - ], - null, - true - ), - }, - [ - _vm._v( - "\n\t\t\t\t" + - _vm._s( - _vm.editMode - ? _vm.t("photos", "Save") - : _vm.t("photos", "Create album") - ) + - "\n\t\t\t" - ), - ] - ), - ], - 1 - ), - ] - }, - }, - ]), - }) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/CollaboratorsSelectionForm.vue?vue&type=template&id=414c8cf3&scoped=true&": -/*!*****************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/CollaboratorsSelectionForm.vue?vue&type=template&id=414c8cf3&scoped=true& ***! - \*****************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c( - "form", - { - staticClass: "add-collaborators-form", - on: { - submit: function ($event) { - $event.preventDefault() - }, - }, - }, - [ - _c("h2", { staticClass: "form-title" }, [ - _vm._v( - "\n\t\t" + _vm._s(_vm.t("photos", "Add collaborators")) + "\n\t" - ), - ]), - _vm._v(" "), - _c("div", { staticClass: "form-subtitle" }, [ - _vm._v( - "\n\t\t" + - _vm._s(_vm.t("photos", "Add users who can edit your album")) + - "\n\t" - ), - ]), - _vm._v(" "), - _c("div", { staticClass: "form-subtitle" }, [ - _vm._v( - "\n\t\t" + - _vm._s(_vm.t("photos", "Share this album via link")) + - "\n\t" - ), - ]), - _vm._v(" "), - _c( - "div", - { staticClass: "form-inputs" }, - [ - _c("Magnify"), - _c("NcTextField", { - attrs: { - type: "text", - name: "search", - placeholder: _vm.t( - "photos", - "Search users, email or Federated Cloud ID" - ), - }, - }), - ], - 1 - ), - _vm._v(" "), - _c( - "div", - { staticClass: "form-buttons" }, - [_vm._t("default", null, { collaborators: "collaborators" })], - 2 - ), - ] - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }) - -}]); -//# sourceMappingURL=photos-src_mixins_FetchAlbumsMixin_js-src_components_AlbumForm_vue.js.map?v=c891259ea2d3cfdd3c09 \ No newline at end of file diff --git a/js/photos-src_mixins_FetchAlbumsMixin_js-src_components_AlbumForm_vue.js.map b/js/photos-src_mixins_FetchAlbumsMixin_js-src_components_AlbumForm_vue.js.map deleted file mode 100644 index e7e6a1747..000000000 --- a/js/photos-src_mixins_FetchAlbumsMixin_js-src_components_AlbumForm_vue.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-src_mixins_FetchAlbumsMixin_js-src_components_AlbumForm_vue.js?v=c891259ea2d3cfdd3c09","mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;AC7RA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;ACnDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;ACrLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;;;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;ACvCA;;;;;;;;;;;;;;;ACAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AKAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;AC5PA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sources":["webpack:///photos/src/components/AlbumForm.vue?vue&type=script&lang=js&","webpack:///photos/src/components/CollaboratorsSelectionForm.vue?vue&type=script&lang=js&","webpack:///photos/src/mixins/FetchAlbumsMixin.js","webpack:///photos/src/components/AlbumForm.vue?vue&type=style&index=0&id=59290653&lang=scss&scoped=true&","webpack:///photos/src/components/CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=414c8cf3&lang=scss&scoped=true&","webpack://photos/./src/components/AlbumForm.vue?b08f","webpack://photos/./src/components/CollaboratorsSelectionForm.vue?26fd","webpack:///photos/src/components/AlbumForm.vue","webpack:///photos/src/components/CollaboratorsSelectionForm.vue","webpack://photos/./src/components/AlbumForm.vue?18f8","webpack://photos/./src/components/CollaboratorsSelectionForm.vue?67ff","webpack://photos/./src/components/AlbumForm.vue?1645","webpack://photos/./src/components/CollaboratorsSelectionForm.vue?4b0d","webpack:///photos/src/components/AlbumForm.vue?vue&type=template&id=59290653&scoped=true&","webpack:///photos/src/components/CollaboratorsSelectionForm.vue?vue&type=template&id=414c8cf3&scoped=true&","webpack://photos/./src/components/AlbumForm.vue?91ad","webpack://photos/./src/components/CollaboratorsSelectionForm.vue?f7b1"],"sourcesContent":["function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport { mapActions } from 'vuex';\nimport MapMarker from 'vue-material-design-icons/MapMarker'; // import AccountMultiplePlus from 'vue-material-design-icons/AccountMultiplePlus'\n\nimport Send from 'vue-material-design-icons/Send';\nimport { NcButton, NcLoadingIcon, NcTextField } from '@nextcloud/vue';\nimport moment from '@nextcloud/moment';\nimport CollaboratorsSelectionForm from './CollaboratorsSelectionForm.vue';\nexport default {\n name: 'AlbumForm',\n components: {\n NcButton: NcButton,\n MapMarker: MapMarker,\n // AccountMultiplePlus,\n Send: Send,\n NcLoadingIcon: NcLoadingIcon,\n NcTextField: NcTextField,\n CollaboratorsSelectionForm: CollaboratorsSelectionForm\n },\n props: {\n album: {\n type: Object,\n default: null\n },\n displayBackButton: {\n type: Boolean,\n default: false\n }\n },\n data: function data() {\n return {\n showCollaboratorView: false,\n albumName: '',\n albumLocation: '',\n loading: false\n };\n },\n computed: {\n editMode: function editMode() {\n return this.album !== null;\n }\n },\n mounted: function mounted() {\n var _this = this;\n\n if (this.editMode) {\n this.albumName = this.album.basename;\n this.albumLocation = this.album.location;\n }\n\n this.$nextTick(function () {\n _this.$refs.nameInput.$el.getElementsByTagName('input')[0].focus();\n });\n },\n methods: _objectSpread(_objectSpread({}, mapActions(['createAlbum', 'renameAlbum', 'updateAlbumLocation'])), {}, {\n submit: function submit() {\n var collaborators = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n\n if (this.albumName === '' || this.loading) {\n return;\n }\n\n if (this.editMode) {\n this.handleUpdateAlbum(collaborators);\n } else {\n this.handleCreateAlbum(collaborators);\n }\n },\n handleCreateAlbum: function handleCreateAlbum() {\n var _arguments = arguments,\n _this2 = this;\n\n return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {\n var collaborators, album;\n return regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n collaborators = _arguments.length > 0 && _arguments[0] !== undefined ? _arguments[0] : [];\n _context.prev = 1;\n _this2.loading = true;\n _context.next = 5;\n return _this2.createAlbum({\n album: {\n basename: _this2.albumName,\n nbItems: 0,\n location: _this2.albumLocation,\n lastPhoto: '',\n date: moment().format('MMMM YYYY'),\n collaborators: collaborators\n }\n });\n\n case 5:\n album = _context.sent;\n\n _this2.$emit('done', {\n album: album\n });\n\n case 7:\n _context.prev = 7;\n _this2.loading = false;\n return _context.finish(7);\n\n case 10:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, null, [[1,, 7, 10]]);\n }))();\n },\n handleUpdateAlbum: function handleUpdateAlbum() {\n var _arguments2 = arguments,\n _this3 = this;\n\n return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() {\n var collaborators, album;\n return regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n collaborators = _arguments2.length > 0 && _arguments2[0] !== undefined ? _arguments2[0] : [];\n _context2.prev = 1;\n _this3.loading = true;\n album = _objectSpread({}, _this3.album);\n\n if (!(_this3.album.basename !== _this3.albumName)) {\n _context2.next = 8;\n break;\n }\n\n _context2.next = 7;\n return _this3.renameAlbum({\n currentAlbumName: _this3.album.basename,\n newAlbumName: _this3.albumName\n });\n\n case 7:\n album = _context2.sent;\n\n case 8:\n if (!(_this3.album.location !== _this3.albumLocation)) {\n _context2.next = 12;\n break;\n }\n\n _context2.next = 11;\n return _this3.updateAlbumLocation({\n albumName: _this3.albumName,\n newLocation: _this3.albumLocation\n });\n\n case 11:\n album.location = _context2.sent;\n\n case 12:\n _this3.$emit('done', {\n album: album\n });\n\n case 13:\n _context2.prev = 13;\n _this3.loading = false;\n return _context2.finish(13);\n\n case 16:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2, null, [[1,, 13, 16]]);\n }))();\n },\n back: function back() {\n this.$emit('back');\n }\n })\n};","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport Magnify from 'vue-material-design-icons/Magnify';\nexport default {\n name: 'CollaboratorsSelectionForm',\n components: {\n Magnify: Magnify\n },\n data: function data() {\n return {\n loading: false\n };\n }\n};","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\n/**\n * @copyright Copyright (c) 2022 Louis Chemineau \n *\n * @author Louis Chemineau \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 .\n *\n */\nimport { mapGetters } from 'vuex';\nimport moment from '@nextcloud/moment';\nimport { showError } from '@nextcloud/dialogs';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport client from '../services/DavClient.js';\nimport logger from '../services/logger.js';\nimport { genFileInfo } from '../utils/fileUtils.js';\nimport AbortControllerMixin from './AbortControllerMixin';\nexport default {\n name: 'FetchAlbumsMixin',\n data: function data() {\n return {\n errorFetchingAlbums: null,\n loadingAlbums: false\n };\n },\n mixins: [AbortControllerMixin],\n beforeMount: function beforeMount() {\n var _this = this;\n\n return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {\n return regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _this.fetchAlbums();\n\n case 1:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }))();\n },\n beforeDestroy: function beforeDestroy() {\n this.cancelAlbumsRequest('Changed view');\n },\n computed: _objectSpread({}, mapGetters(['albums'])),\n methods: {\n fetchAlbums: function fetchAlbums() {\n var _this2 = this;\n\n return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() {\n var _getCurrentUser, response, albums, _error$response;\n\n return regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n if (!_this2.loadingAlbums) {\n _context2.next = 2;\n break;\n }\n\n return _context2.abrupt(\"return\");\n\n case 2:\n _context2.prev = 2;\n _this2.loadingAlbums = true;\n _this2.errorFetchingAlbums = null;\n _context2.next = 7;\n return client.getDirectoryContents(\"/photos/\".concat((_getCurrentUser = getCurrentUser()) === null || _getCurrentUser === void 0 ? void 0 : _getCurrentUser.uid, \"/albums\"), {\n data: \"\\n\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\",\n details: true,\n signal: _this2.abortController.signal\n });\n\n case 7:\n response = _context2.sent;\n albums = response.data.filter(function (album) {\n return album.filename !== '/photos/admin/albums';\n }).map(function (album) {\n return genFileInfo(album);\n }).map(function (album) {\n var _album$dateRange$repl, _album$dateRange;\n\n var dateRange = JSON.parse((_album$dateRange$repl = (_album$dateRange = album.dateRange) === null || _album$dateRange === void 0 ? void 0 : _album$dateRange.replace(/"/g, '\"')) !== null && _album$dateRange$repl !== void 0 ? _album$dateRange$repl : '{}');\n\n if (dateRange.start === null) {\n dateRange.start = moment().unix();\n dateRange.end = moment().unix();\n }\n\n var dateRangeFormated = {\n startDate: moment.unix(dateRange.start).format('MMMM YYYY'),\n endDate: moment.unix(dateRange.end).format('MMMM YYYY')\n };\n\n if (dateRangeFormated.startDate === dateRangeFormated.endDate) {\n return _objectSpread(_objectSpread({}, album), {}, {\n date: dateRangeFormated\n });\n } else {\n return _objectSpread(_objectSpread({}, album), {}, {\n date: _this2.t('photos', '{startDate} to {endDate}', dateRangeFormated)\n });\n }\n });\n\n _this2.$store.dispatch('addAlbums', {\n albums: albums\n });\n\n logger.debug(\"[FetchAlbumsMixin] Fetched \".concat(albums.length, \" new files: \"), albums);\n _context2.next = 26;\n break;\n\n case 13:\n _context2.prev = 13;\n _context2.t0 = _context2[\"catch\"](2);\n\n if (!(((_error$response = _context2.t0.response) === null || _error$response === void 0 ? void 0 : _error$response.status) === 404)) {\n _context2.next = 19;\n break;\n }\n\n _this2.errorFetchingAlbums = 404;\n _context2.next = 24;\n break;\n\n case 19:\n if (!(_context2.t0.code === 'ERR_CANCELED')) {\n _context2.next = 23;\n break;\n }\n\n return _context2.abrupt(\"return\");\n\n case 23:\n _this2.errorFetchingAlbums = _context2.t0;\n\n case 24:\n logger.error(t('photos', 'Failed to fetch albums list.'), _context2.t0);\n showError(t('photos', 'Failed to fetch albums list.'));\n\n case 26:\n _context2.prev = 26;\n _this2.loadingAlbums = false;\n return _context2.finish(26);\n\n case 29:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2, null, [[2, 13, 26, 29]]);\n }))();\n }\n }\n};","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".album-form[data-v-59290653] {\\n display: flex;\\n flex-direction: column;\\n height: 350px;\\n padding: 16px;\\n}\\n.album-form .form-title[data-v-59290653] {\\n font-weight: bold;\\n}\\n.album-form .form-subtitle[data-v-59290653] {\\n color: var(--color-text-lighter);\\n}\\n.album-form .form-inputs[data-v-59290653] {\\n flex-grow: 1;\\n justify-items: flex-end;\\n}\\n.album-form .form-inputs input[data-v-59290653] {\\n width: 100%;\\n}\\n.album-form .form-inputs label[data-v-59290653] {\\n display: flex;\\n margin-top: 16px;\\n}\\n.album-form .form-inputs label[data-v-59290653] svg {\\n margin-right: 12px;\\n}\\n.album-form .form-buttons[data-v-59290653] {\\n display: flex;\\n justify-content: space-between;\\n}\\n.album-form .form-buttons .left-buttons[data-v-59290653], .album-form .form-buttons .right-buttons[data-v-59290653] {\\n display: flex;\\n}\\n.album-form .form-buttons .right-buttons[data-v-59290653] {\\n justify-content: flex-end;\\n}\\n.album-form .form-buttons button[data-v-59290653] {\\n margin-right: 16px;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".add-collaborators-form[data-v-414c8cf3] {\\n display: flex;\\n flex-direction: column;\\n height: 500px;\\n padding: 16px;\\n}\\n.add-collaborators-form .form-title[data-v-414c8cf3] {\\n font-weight: bold;\\n}\\n.add-collaborators-form .form-subtitle[data-v-414c8cf3] {\\n color: var(--color-text-lighter);\\n}\\n.add-collaborators-form .form-inputs[data-v-414c8cf3] {\\n flex-grow: 1;\\n justify-items: flex-end;\\n}\\n.add-collaborators-form .form-inputs input[data-v-414c8cf3] {\\n width: 100%;\\n}\\n.add-collaborators-form .form-inputs label[data-v-414c8cf3] {\\n display: flex;\\n margin-top: 16px;\\n}\\n.add-collaborators-form .form-inputs label[data-v-414c8cf3] svg {\\n margin-right: 12px;\\n}\\n.add-collaborators-form .form-buttons[data-v-414c8cf3] {\\n display: flex;\\n justify-content: space-between;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./AlbumForm.vue?vue&type=style&index=0&id=59290653&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./AlbumForm.vue?vue&type=style&index=0&id=59290653&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=414c8cf3&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=414c8cf3&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./AlbumForm.vue?vue&type=template&id=59290653&scoped=true&\"\nimport script from \"./AlbumForm.vue?vue&type=script&lang=js&\"\nexport * from \"./AlbumForm.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AlbumForm.vue?vue&type=style&index=0&id=59290653&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 \"59290653\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/admin/Docker/apps2/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('59290653')) {\n api.createRecord('59290653', component.options)\n } else {\n api.reload('59290653', component.options)\n }\n module.hot.accept(\"./AlbumForm.vue?vue&type=template&id=59290653&scoped=true&\", function () {\n api.rerender('59290653', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/AlbumForm.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./CollaboratorsSelectionForm.vue?vue&type=template&id=414c8cf3&scoped=true&\"\nimport script from \"./CollaboratorsSelectionForm.vue?vue&type=script&lang=js&\"\nexport * from \"./CollaboratorsSelectionForm.vue?vue&type=script&lang=js&\"\nimport style0 from \"./CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=414c8cf3&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 \"414c8cf3\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/admin/Docker/apps2/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('414c8cf3')) {\n api.createRecord('414c8cf3', component.options)\n } else {\n api.reload('414c8cf3', component.options)\n }\n module.hot.accept(\"./CollaboratorsSelectionForm.vue?vue&type=template&id=414c8cf3&scoped=true&\", function () {\n api.rerender('414c8cf3', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/CollaboratorsSelectionForm.vue\"\nexport default component.exports","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AlbumForm.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!./AlbumForm.vue?vue&type=script&lang=js&\"","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CollaboratorsSelectionForm.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!./CollaboratorsSelectionForm.vue?vue&type=script&lang=js&\"","export * from \"-!../../node_modules/style-loader/dist/cjs.js!../../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!./AlbumForm.vue?vue&type=style&index=0&id=59290653&lang=scss&scoped=true&\"","export * from \"-!../../node_modules/style-loader/dist/cjs.js!../../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!./CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=414c8cf3&lang=scss&scoped=true&\"","export * from \"-!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AlbumForm.vue?vue&type=template&id=59290653&scoped=true&\"","export * from \"-!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CollaboratorsSelectionForm.vue?vue&type=template&id=414c8cf3&scoped=true&\"","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return !_vm.showCollaboratorView\n ? _c(\n \"form\",\n {\n staticClass: \"album-form\",\n on: {\n submit: function ($event) {\n $event.preventDefault()\n return _vm.submit.apply(null, arguments)\n },\n },\n },\n [\n _c(\n \"div\",\n { staticClass: \"form-inputs\" },\n [\n _c(\"NcTextField\", {\n ref: \"nameInput\",\n attrs: {\n value: _vm.albumName,\n type: \"text\",\n name: \"name\",\n required: true,\n autofocus: \"true\",\n placeholder: _vm.t(\"photos\", \"Name of the album\"),\n },\n on: {\n \"update:value\": function ($event) {\n _vm.albumName = $event\n },\n },\n }),\n _vm._v(\" \"),\n _c(\n \"label\",\n [\n _c(\"MapMarker\"),\n _c(\"NcTextField\", {\n attrs: {\n value: _vm.albumLocation,\n name: \"location\",\n type: \"text\",\n placeholder: _vm.t(\"photos\", \"Location of the album\"),\n },\n on: {\n \"update:value\": function ($event) {\n _vm.albumLocation = $event\n },\n },\n }),\n ],\n 1\n ),\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"form-buttons\" }, [\n _c(\n \"span\",\n { staticClass: \"left-buttons\" },\n [\n _vm.displayBackButton\n ? _c(\n \"NcButton\",\n {\n attrs: {\n \"aria-label\": _vm.t(\n \"photos\",\n \"Go back to the previous view.\"\n ),\n type: \"tertiary\",\n },\n on: { click: _vm.back },\n },\n [\n _vm._v(\n \"\\n\\t\\t\\t\\t\" +\n _vm._s(_vm.t(\"photos\", \"Back\")) +\n \"\\n\\t\\t\\t\"\n ),\n ]\n )\n : _vm._e(),\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"span\",\n { staticClass: \"right-buttons\" },\n [\n _c(\n \"NcButton\",\n {\n attrs: {\n \"aria-label\": _vm.editMode\n ? _vm.t(\"photos\", \"Save.\")\n : _vm.t(\"photos\", \"Create the album.\"),\n type: \"primary\",\n disabled: _vm.albumName === \"\" || _vm.loading,\n },\n on: {\n click: function ($event) {\n return _vm.submit()\n },\n },\n scopedSlots: _vm._u(\n [\n {\n key: \"icon\",\n fn: function () {\n return [\n _vm.loading ? _c(\"NcLoadingIcon\") : _c(\"Send\"),\n ]\n },\n proxy: true,\n },\n ],\n null,\n false,\n 3914512768\n ),\n },\n [\n _vm._v(\n \"\\n\\t\\t\\t\\t\" +\n _vm._s(\n _vm.editMode\n ? _vm.t(\"photos\", \"Save\")\n : _vm.t(\"photos\", \"Create album\")\n ) +\n \"\\n\\t\\t\\t\"\n ),\n ]\n ),\n ],\n 1\n ),\n ]),\n ]\n )\n : _c(\"CollaboratorsSelectionForm\", {\n staticClass: \"add-collaborators-form\",\n on: {\n cancel: function ($event) {\n _vm.showCollaboratorView = true\n },\n },\n scopedSlots: _vm._u([\n {\n key: \"default\",\n fn: function (ref) {\n var collaborators = ref.collaborators\n return [\n _c(\n \"span\",\n { staticClass: \"left-buttons\" },\n [\n _c(\n \"NcButton\",\n {\n attrs: {\n \"aria-label\": _vm.t(\n \"photos\",\n \"Back to the new album form.\"\n ),\n type: \"tertiary\",\n },\n on: {\n click: function ($event) {\n _vm.showCollaboratorView = false\n },\n },\n },\n [\n _vm._v(\n \"\\n\\t\\t\\t\\t\" +\n _vm._s(_vm.t(\"photos\", \"Back\")) +\n \"\\n\\t\\t\\t\"\n ),\n ]\n ),\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"span\",\n { staticClass: \"right-buttons\" },\n [\n _c(\n \"NcButton\",\n {\n attrs: {\n \"aria-label\": _vm.editMode\n ? _vm.t(\"photos\", \"Save.\")\n : _vm.t(\"photos\", \"Create the album.\"),\n type: \"primary\",\n disabled: _vm.albumName.trim() === \"\" || _vm.loading,\n },\n on: {\n click: function ($event) {\n return _vm.submit(collaborators)\n },\n },\n scopedSlots: _vm._u(\n [\n {\n key: \"icon\",\n fn: function () {\n return [\n _vm.loading\n ? _c(\"NcLoadingIcon\")\n : _c(\"Send\"),\n ]\n },\n proxy: true,\n },\n ],\n null,\n true\n ),\n },\n [\n _vm._v(\n \"\\n\\t\\t\\t\\t\" +\n _vm._s(\n _vm.editMode\n ? _vm.t(\"photos\", \"Save\")\n : _vm.t(\"photos\", \"Create album\")\n ) +\n \"\\n\\t\\t\\t\"\n ),\n ]\n ),\n ],\n 1\n ),\n ]\n },\n },\n ]),\n })\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"form\",\n {\n staticClass: \"add-collaborators-form\",\n on: {\n submit: function ($event) {\n $event.preventDefault()\n },\n },\n },\n [\n _c(\"h2\", { staticClass: \"form-title\" }, [\n _vm._v(\n \"\\n\\t\\t\" + _vm._s(_vm.t(\"photos\", \"Add collaborators\")) + \"\\n\\t\"\n ),\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"form-subtitle\" }, [\n _vm._v(\n \"\\n\\t\\t\" +\n _vm._s(_vm.t(\"photos\", \"Add users who can edit your album\")) +\n \"\\n\\t\"\n ),\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"form-subtitle\" }, [\n _vm._v(\n \"\\n\\t\\t\" +\n _vm._s(_vm.t(\"photos\", \"Share this album via link\")) +\n \"\\n\\t\"\n ),\n ]),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"form-inputs\" },\n [\n _c(\"Magnify\"),\n _c(\"NcTextField\", {\n attrs: {\n type: \"text\",\n name: \"search\",\n placeholder: _vm.t(\n \"photos\",\n \"Search users, email or Federated Cloud ID\"\n ),\n },\n }),\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"form-buttons\" },\n [_vm._t(\"default\", null, { collaborators: \"collaborators\" })],\n 2\n ),\n ]\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-src_mixins_FetchAlbumsMixin_js-src_components_Albums_AlbumForm_vue.js b/js/photos-src_mixins_FetchAlbumsMixin_js-src_components_Albums_AlbumForm_vue.js deleted file mode 100644 index 1ff23221b..000000000 --- a/js/photos-src_mixins_FetchAlbumsMixin_js-src_components_Albums_AlbumForm_vue.js +++ /dev/null @@ -1,1902 +0,0 @@ -"use strict"; -(self["webpackChunkphotos"] = self["webpackChunkphotos"] || []).push([["src_mixins_FetchAlbumsMixin_js-src_components_Albums_AlbumForm_vue"],{ - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Albums/AlbumForm.vue?vue&type=script&lang=js&": -/*!**************************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Albums/AlbumForm.vue?vue&type=script&lang=js& ***! - \**************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! vuex */ "./node_modules/vuex/dist/vuex.esm.js"); -/* harmony import */ var vue_material_design_icons_MapMarker__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue-material-design-icons/MapMarker */ "./node_modules/vue-material-design-icons/MapMarker.vue"); -/* harmony import */ var vue_material_design_icons_AccountMultiplePlus__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! vue-material-design-icons/AccountMultiplePlus */ "./node_modules/vue-material-design-icons/AccountMultiplePlus.vue"); -/* harmony import */ var vue_material_design_icons_Send__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! vue-material-design-icons/Send */ "./node_modules/vue-material-design-icons/Send.vue"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @nextcloud/vue */ "./node_modules/@nextcloud/vue/dist/ncvuecomponents.js"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _nextcloud_moment__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @nextcloud/moment */ "./node_modules/@nextcloud/moment/dist/index.js"); -/* harmony import */ var _nextcloud_moment__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_moment__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _CollaboratorsSelectionForm_vue__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./CollaboratorsSelectionForm.vue */ "./src/components/Albums/CollaboratorsSelectionForm.vue"); -function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } - -function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } - -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } - -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - - - - - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'AlbumForm', - components: { - MapMarker: vue_material_design_icons_MapMarker__WEBPACK_IMPORTED_MODULE_0__["default"], - AccountMultiplePlus: vue_material_design_icons_AccountMultiplePlus__WEBPACK_IMPORTED_MODULE_1__["default"], - Send: vue_material_design_icons_Send__WEBPACK_IMPORTED_MODULE_2__["default"], - NcButton: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_3__.NcButton, - NcLoadingIcon: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_3__.NcLoadingIcon, - NcTextField: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_3__.NcTextField, - CollaboratorsSelectionForm: _CollaboratorsSelectionForm_vue__WEBPACK_IMPORTED_MODULE_5__["default"] - }, - props: { - album: { - type: Object, - default: null - }, - displayBackButton: { - type: Boolean, - default: false - } - }, - data: function data() { - return { - showCollaboratorView: false, - albumName: '', - albumLocation: '', - loading: false - }; - }, - computed: { - /** - * @return {boolean} Whether sharing is enabled. - */ - editMode: function editMode() { - return this.album !== null; - }, - - /** - * @return {boolean} Whether sharing is enabled. - */ - sharingEnabled: function sharingEnabled() { - return OC.Share !== undefined; - } - }, - mounted: function mounted() { - var _this = this; - - if (this.editMode) { - this.albumName = this.album.basename; - this.albumLocation = this.album.location; - } - - this.$nextTick(function () { - _this.$refs.nameInput.$el.getElementsByTagName('input')[0].focus(); - }); - }, - methods: _objectSpread(_objectSpread({}, (0,vuex__WEBPACK_IMPORTED_MODULE_6__.mapActions)(['createAlbum', 'renameAlbum', 'updateAlbum'])), {}, { - submit: function submit() { - var collaborators = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : []; - - if (this.albumName === '' || this.loading) { - return; - } - - if (this.editMode) { - this.handleUpdateAlbum(); - } else { - this.handleCreateAlbum(collaborators); - } - }, - handleCreateAlbum: function handleCreateAlbum() { - var _arguments = arguments, - _this2 = this; - - return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() { - var collaborators, album; - return regeneratorRuntime.wrap(function _callee$(_context) { - while (1) { - switch (_context.prev = _context.next) { - case 0: - collaborators = _arguments.length > 0 && _arguments[0] !== undefined ? _arguments[0] : []; - _context.prev = 1; - _this2.loading = true; - _context.next = 5; - return _this2.createAlbum({ - album: { - basename: _this2.albumName, - nbItems: 0, - location: _this2.albumLocation, - lastPhoto: -1, - date: _nextcloud_moment__WEBPACK_IMPORTED_MODULE_4___default()().format('MMMM YYYY'), - collaborators: collaborators - } - }); - - case 5: - album = _context.sent; - - if (!(_this2.albumLocation !== '' || collaborators.length !== 0)) { - _context.next = 10; - break; - } - - _context.next = 9; - return _this2.updateAlbum({ - albumName: _this2.albumName, - properties: { - location: _this2.albumLocation, - collaborators: collaborators - } - }); - - case 9: - album = _context.sent; - - case 10: - _this2.$emit('done', { - album: album - }); - - case 11: - _context.prev = 11; - _this2.loading = false; - return _context.finish(11); - - case 14: - case "end": - return _context.stop(); - } - } - }, _callee, null, [[1,, 11, 14]]); - }))(); - }, - handleUpdateAlbum: function handleUpdateAlbum() { - var _this3 = this; - - return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() { - var album; - return regeneratorRuntime.wrap(function _callee2$(_context2) { - while (1) { - switch (_context2.prev = _context2.next) { - case 0: - _context2.prev = 0; - _this3.loading = true; - album = _objectSpread({}, _this3.album); - - if (!(_this3.album.basename !== _this3.albumName)) { - _context2.next = 7; - break; - } - - _context2.next = 6; - return _this3.renameAlbum({ - currentAlbumName: _this3.album.basename, - newAlbumName: _this3.albumName - }); - - case 6: - album = _context2.sent; - - case 7: - if (!(_this3.album.location !== _this3.albumLocation)) { - _context2.next = 11; - break; - } - - _context2.next = 10; - return _this3.updateAlbum({ - albumName: _this3.albumName, - properties: { - location: _this3.albumLocation - } - }); - - case 10: - album.location = _context2.sent; - - case 11: - _this3.$emit('done', { - album: album - }); - - case 12: - _context2.prev = 12; - _this3.loading = false; - return _context2.finish(12); - - case 15: - case "end": - return _context2.stop(); - } - } - }, _callee2, null, [[0,, 12, 15]]); - }))(); - }, - back: function back() { - this.$emit('back'); - } - }) -}); - -/***/ }), - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=script&lang=js&": -/*!*******************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=script&lang=js& ***! - \*******************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var vue_material_design_icons_Magnify__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue-material-design-icons/Magnify */ "./node_modules/vue-material-design-icons/Magnify.vue"); -/* harmony import */ var vue_material_design_icons_Close__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! vue-material-design-icons/Close */ "./node_modules/vue-material-design-icons/Close.vue"); -/* harmony import */ var _nextcloud_axios__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @nextcloud/axios */ "./node_modules/@nextcloud/axios/dist/index.esm.js"); -/* harmony import */ var _nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @nextcloud/dialogs */ "./node_modules/@nextcloud/dialogs/dist/index.es.js"); -/* harmony import */ var _nextcloud_auth__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @nextcloud/auth */ "./node_modules/@nextcloud/auth/dist/index.esm.js"); -/* harmony import */ var _nextcloud_router__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @nextcloud/router */ "./node_modules/@nextcloud/router/dist/index.js"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @nextcloud/vue */ "./node_modules/@nextcloud/vue/dist/ncvuecomponents.js"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue__WEBPACK_IMPORTED_MODULE_6__); -/* harmony import */ var _services_logger_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../services/logger.js */ "./src/services/logger.js"); -function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } - -function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } - -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } - -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - - - - - - - - -var SHARE = { - TYPE: { - USER: 0, - GROUP: 1 // LINK: 3, - - } -}; -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'CollaboratorsSelectionForm', - components: { - Magnify: vue_material_design_icons_Magnify__WEBPACK_IMPORTED_MODULE_0__["default"], - Close: vue_material_design_icons_Close__WEBPACK_IMPORTED_MODULE_1__["default"], - NcLoadingIcon: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_6__.NcLoadingIcon, - NcButton: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_6__.NcButton, - NcListItemIcon: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_6__.NcListItemIcon, - NcTextField: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_6__.NcTextField, - NcPopover: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_6__.NcPopover - }, - props: { - albumName: { - type: String, - required: true - }, - collaborators: { - type: Array, - default: function _default() { - return []; - } - }, - publicLink: { - type: String, - default: '' - }, - allowPublicLink: { - type: Boolean, - default: true - } - }, - data: function data() { - return { - searchText: '', - availableCollaborators: {}, - selectedCollaboratorsKeys: [], - currentSearchResults: [], - loadingCollaborators: false, - randomId: Math.random().toString().substring(2, 10), - publicLinkCopied: false, - config: { - minSearchStringLength: parseInt(OC.config['sharing.minSearchStringLength'], 10) || 0 - } - }; - }, - computed: { - /** - * @return {string[]} - */ - searchResults: function searchResults() { - var _this = this; - - return this.currentSearchResults.filter(function (_ref) { - var id = _ref.id; - return id !== (0,_nextcloud_auth__WEBPACK_IMPORTED_MODULE_4__.getCurrentUser)().uid; - }).map(function (_ref2) { - var type = _ref2.type, - id = _ref2.id; - return "".concat(type, ":").concat(id); - }).filter(function (key) { - return !_this.selectedCollaboratorsKeys.includes(key); - }).map(function (key) { - return { - key: key, - height: 48 - }; - }); - }, - - /** - * @return {object[]} - */ - selectedCollaborators: function selectedCollaborators() { - var _this2 = this; - - return this.selectedCollaboratorsKeys.map(function (collaboratorKey) { - return _this2.availableCollaborators[collaboratorKey]; - }); - } - }, - mounted: function mounted() { - this.searchCollaborators(); - this.selectedCollaboratorsKeys = this.collaborators.map(function (_ref3) { - var type = _ref3.type, - id = _ref3.id; - return "".concat(type, ":").concat(id); - }); - this.availableCollaborators = _objectSpread(_objectSpread({}, this.availableCollaborators), this.collaborators.reduce(function (collaborators, collaborator) { - return _objectSpread(_objectSpread({}, collaborators), {}, _defineProperty({}, "".concat(collaborator.type, ":").concat(collaborator.id), collaborator)); - }, {})); - }, - methods: { - /** - * Fetch possible collaborators. - */ - searchCollaborators: function searchCollaborators() { - var _this3 = this; - - return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() { - var response; - return regeneratorRuntime.wrap(function _callee$(_context) { - while (1) { - switch (_context.prev = _context.next) { - case 0: - _context.prev = 0; - - if (!(_this3.searchText.length < _this3.config.minSearchStringLength)) { - _context.next = 3; - break; - } - - return _context.abrupt("return"); - - case 3: - _this3.loadingCollaborators = true; - _context.next = 6; - return _nextcloud_axios__WEBPACK_IMPORTED_MODULE_2__["default"].get((0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_5__.generateOcsUrl)('core/autocomplete/get'), { - params: { - search: _this3.searchText, - itemType: 'share-recipients', - shareTypes: [SHARE.TYPE.USER, SHARE.TYPE.GROUP] - } - }); - - case 6: - response = _context.sent; - _this3.currentSearchResults = response.data.ocs.data.map(function (collaborator) { - var type = -1; - - switch (collaborator.source) { - case 'users': - type = OC.Share.SHARE_TYPE_USER; - break; - - case 'groups': - type = OC.Share.SHARE_TYPE_GROUP; - break; - } - - return _objectSpread(_objectSpread({}, collaborator), {}, { - type: type - }); - }); - _this3.availableCollaborators = _objectSpread(_objectSpread({}, _this3.availableCollaborators), _this3.currentSearchResults.reduce(function (collaborators, collaborator) { - return _objectSpread(_objectSpread({}, collaborators), {}, _defineProperty({}, "".concat(collaborator.type, ":").concat(collaborator.id), collaborator)); - }, {})); - _context.next = 16; - break; - - case 11: - _context.prev = 11; - _context.t0 = _context["catch"](0); - _this3.errorFetchingCollaborators = _context.t0; - _services_logger_js__WEBPACK_IMPORTED_MODULE_7__["default"].error(t('photos', 'Failed to fetch collaborators list.'), _context.t0); - (0,_nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_3__.showError)(t('photos', 'Failed to fetch collaborators list.')); - - case 16: - _context.prev = 16; - _this3.loadingCollaborators = false; - return _context.finish(16); - - case 19: - case "end": - return _context.stop(); - } - } - }, _callee, null, [[0, 11, 16, 19]]); - }))(); - }, - // TODO: implement public sharing - createPublicLinkForAlbum: function createPublicLinkForAlbum() { - var _this4 = this; - - return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() { - return regeneratorRuntime.wrap(function _callee2$(_context2) { - while (1) { - switch (_context2.prev = _context2.next) { - case 0: - return _context2.abrupt("return", _nextcloud_axios__WEBPACK_IMPORTED_MODULE_2__["default"].put((0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_5__.generateOcsUrl)("apps/photos/createPublicLink/".concat(_this4.albumName)))); - - case 1: - case "end": - return _context2.stop(); - } - } - }, _callee2); - }))(); - }, - deletePublicLink: function deletePublicLink() { - var _this5 = this; - - return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee3() { - return regeneratorRuntime.wrap(function _callee3$(_context3) { - while (1) { - switch (_context3.prev = _context3.next) { - case 0: - return _context3.abrupt("return", _nextcloud_axios__WEBPACK_IMPORTED_MODULE_2__["default"]["delete"]((0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_5__.generateOcsUrl)("apps/photos/createPublicLink/".concat(_this5.albumName)))); - - case 1: - case "end": - return _context3.stop(); - } - } - }, _callee3); - }))(); - }, - copyPublicLink: function copyPublicLink() { - var _this6 = this; - - return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee4() { - return regeneratorRuntime.wrap(function _callee4$(_context4) { - while (1) { - switch (_context4.prev = _context4.next) { - case 0: - _context4.next = 2; - return navigator.clipboard.writeText(_this6.publicLink); - - case 2: - _this6.publicLinkCopied = true; - setTimeout(function () { - _this6.publicLinkCopied = false; - }, 10000); - - case 4: - case "end": - return _context4.stop(); - } - } - }, _callee4); - }))(); - }, - selectEntity: function selectEntity(collaboratorKey) { - if (this.selectedCollaboratorsKeys.includes(collaboratorKey)) { - return; - } - - this.$refs.popover.$refs.popover.hide(); - this.selectedCollaboratorsKeys.push(collaboratorKey); - }, - unselectEntity: function unselectEntity(collaboratorKey) { - var index = this.selectedCollaboratorsKeys.indexOf(collaboratorKey); - this.selectedCollaboratorsKeys.splice(index, 1); - } - } -}); - -/***/ }), - -/***/ "./src/mixins/FetchAlbumsMixin.js": -/*!****************************************!*\ - !*** ./src/mixins/FetchAlbumsMixin.js ***! - \****************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! vuex */ "./node_modules/vuex/dist/vuex.esm.js"); -/* harmony import */ var _nextcloud_moment__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/moment */ "./node_modules/@nextcloud/moment/dist/index.js"); -/* harmony import */ var _nextcloud_moment__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_moment__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/dialogs */ "./node_modules/@nextcloud/dialogs/dist/index.es.js"); -/* harmony import */ var _nextcloud_auth__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @nextcloud/auth */ "./node_modules/@nextcloud/auth/dist/index.esm.js"); -/* harmony import */ var _services_DavClient_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../services/DavClient.js */ "./src/services/DavClient.js"); -/* harmony import */ var _services_logger_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../services/logger.js */ "./src/services/logger.js"); -/* harmony import */ var _utils_fileUtils_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../utils/fileUtils.js */ "./src/utils/fileUtils.js"); -/* harmony import */ var _AbortControllerMixin_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./AbortControllerMixin.js */ "./src/mixins/AbortControllerMixin.js"); -function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } - -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } - -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } - -function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } - -/** - * @copyright Copyright (c) 2022 Louis Chemineau - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ - - - - - - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'FetchAlbumsMixin', - data: function data() { - return { - errorFetchingAlbums: null, - loadingAlbums: false - }; - }, - mixins: [_AbortControllerMixin_js__WEBPACK_IMPORTED_MODULE_6__["default"]], - beforeMount: function beforeMount() { - var _this = this; - - return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() { - return regeneratorRuntime.wrap(function _callee$(_context) { - while (1) { - switch (_context.prev = _context.next) { - case 0: - _this.fetchAlbums(); - - case 1: - case "end": - return _context.stop(); - } - } - }, _callee); - }))(); - }, - computed: _objectSpread({}, (0,vuex__WEBPACK_IMPORTED_MODULE_7__.mapGetters)(['albums'])), - methods: { - fetchAlbums: function fetchAlbums() { - var _this2 = this; - - return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() { - var _getCurrentUser, response, albums, _error$response; - - return regeneratorRuntime.wrap(function _callee2$(_context2) { - while (1) { - switch (_context2.prev = _context2.next) { - case 0: - if (!_this2.loadingAlbums) { - _context2.next = 2; - break; - } - - return _context2.abrupt("return"); - - case 2: - _context2.prev = 2; - _this2.loadingAlbums = true; - _this2.errorFetchingAlbums = null; - _context2.next = 7; - return _services_DavClient_js__WEBPACK_IMPORTED_MODULE_3__["default"].getDirectoryContents("/photos/".concat((_getCurrentUser = (0,_nextcloud_auth__WEBPACK_IMPORTED_MODULE_2__.getCurrentUser)()) === null || _getCurrentUser === void 0 ? void 0 : _getCurrentUser.uid, "/albums"), { - data: "\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t", - details: true, - signal: _this2.abortController.signal - }); - - case 7: - response = _context2.sent; - albums = response.data.filter(function (album) { - var _getCurrentUser2; - - return album.filename !== "/photos/".concat((_getCurrentUser2 = (0,_nextcloud_auth__WEBPACK_IMPORTED_MODULE_2__.getCurrentUser)()) === null || _getCurrentUser2 === void 0 ? void 0 : _getCurrentUser2.uid, "/albums"); - }) // Ensure that we have a proper collaborators array. - .map(function (album) { - if (album.props.collaborators === '') { - album.props.collaborators = []; - } else if (_typeof(album.props.collaborators.collaborator) === 'object') { - if (Array.isArray(album.props.collaborators.collaborator)) { - album.props.collaborators = album.props.collaborators.collaborator; - } else { - album.props.collaborators = [album.props.collaborators.collaborator]; - } - } - - return album; - }).map(function (album) { - return (0,_utils_fileUtils_js__WEBPACK_IMPORTED_MODULE_5__.genFileInfo)(album); - }).map(function (album) { - var _album$dateRange$repl, _album$dateRange; - - var dateRange = JSON.parse((_album$dateRange$repl = (_album$dateRange = album.dateRange) === null || _album$dateRange === void 0 ? void 0 : _album$dateRange.replace(/"/g, '"')) !== null && _album$dateRange$repl !== void 0 ? _album$dateRange$repl : '{}'); - - if (dateRange.start === null) { - dateRange.start = _nextcloud_moment__WEBPACK_IMPORTED_MODULE_0___default()().unix(); - dateRange.end = _nextcloud_moment__WEBPACK_IMPORTED_MODULE_0___default()().unix(); - } - - var dateRangeFormated = { - startDate: _nextcloud_moment__WEBPACK_IMPORTED_MODULE_0___default().unix(dateRange.start).format('MMMM YYYY'), - endDate: _nextcloud_moment__WEBPACK_IMPORTED_MODULE_0___default().unix(dateRange.end).format('MMMM YYYY') - }; - - if (dateRangeFormated.startDate === dateRangeFormated.endDate) { - return _objectSpread(_objectSpread({}, album), {}, { - date: dateRangeFormated.startDate - }); - } else { - return _objectSpread(_objectSpread({}, album), {}, { - date: _this2.t('photos', '{startDate} to {endDate}', dateRangeFormated) - }); - } - }); - - _this2.$store.dispatch('addAlbums', { - albums: albums - }); - - _services_logger_js__WEBPACK_IMPORTED_MODULE_4__["default"].debug("[FetchAlbumsMixin] Fetched ".concat(albums.length, " new files: "), albums); - _context2.next = 26; - break; - - case 13: - _context2.prev = 13; - _context2.t0 = _context2["catch"](2); - - if (!(((_error$response = _context2.t0.response) === null || _error$response === void 0 ? void 0 : _error$response.status) === 404)) { - _context2.next = 19; - break; - } - - _this2.errorFetchingAlbums = 404; - _context2.next = 24; - break; - - case 19: - if (!(_context2.t0.code === 'ERR_CANCELED')) { - _context2.next = 23; - break; - } - - return _context2.abrupt("return"); - - case 23: - _this2.errorFetchingAlbums = _context2.t0; - - case 24: - _services_logger_js__WEBPACK_IMPORTED_MODULE_4__["default"].error(t('photos', 'Failed to fetch albums list.'), _context2.t0); - (0,_nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_1__.showError)(t('photos', 'Failed to fetch albums list.')); - - case 26: - _context2.prev = 26; - _this2.loadingAlbums = false; - return _context2.finish(26); - - case 29: - case "end": - return _context2.stop(); - } - } - }, _callee2, null, [[2, 13, 26, 29]]); - }))(); - } - } -}); - -/***/ }), - -/***/ "./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!./src/components/Albums/AlbumForm.vue?vue&type=style&index=0&id=1d54fb78&lang=scss&scoped=true&": -/*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/components/Albums/AlbumForm.vue?vue&type=style&index=0&id=1d54fb78&lang=scss&scoped=true& ***! - \**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".album-form[data-v-1d54fb78] {\n display: flex;\n flex-direction: column;\n height: 350px;\n padding: 16px;\n}\n.album-form .form-title[data-v-1d54fb78] {\n font-weight: bold;\n}\n.album-form .form-subtitle[data-v-1d54fb78] {\n color: var(--color-text-lighter);\n}\n.album-form .form-inputs[data-v-1d54fb78] {\n flex-grow: 1;\n justify-items: flex-end;\n}\n.album-form .form-inputs input[data-v-1d54fb78] {\n width: 100%;\n}\n.album-form .form-inputs label[data-v-1d54fb78] {\n display: flex;\n margin-top: 16px;\n}\n.album-form .form-inputs label[data-v-1d54fb78] svg {\n margin-right: 12px;\n}\n.album-form .form-buttons[data-v-1d54fb78] {\n display: flex;\n justify-content: space-between;\n}\n.album-form .form-buttons .left-buttons[data-v-1d54fb78], .album-form .form-buttons .right-buttons[data-v-1d54fb78] {\n display: flex;\n}\n.album-form .form-buttons .right-buttons[data-v-1d54fb78] {\n justify-content: flex-end;\n}\n.album-form .form-buttons button[data-v-1d54fb78] {\n margin-right: 16px;\n}\n.left-buttons[data-v-1d54fb78] {\n flex-grow: 1;\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./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!./src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=02023324&lang=scss&scoped=true&": -/*!*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=02023324&lang=scss&scoped=true& ***! - \*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".manage-collaborators[data-v-02023324] {\n display: flex;\n flex-direction: column;\n padding: 20px;\n height: 500px;\n}\n.manage-collaborators__title[data-v-02023324] {\n font-weight: bold;\n}\n.manage-collaborators__subtitle[data-v-02023324] {\n color: var(--color-text-lighter);\n}\n.manage-collaborators__public-link-button[data-v-02023324] {\n margin: 4px 0;\n}\n.manage-collaborators__form[data-v-02023324] {\n margin-top: 4px 0;\n display: flex;\n flex-direction: column;\n}\n.manage-collaborators__form__input[data-v-02023324] {\n position: relative;\n display: block;\n}\n.manage-collaborators__form__input input[data-v-02023324] {\n width: 100%;\n padding-left: 34px;\n}\n.manage-collaborators__form__input .loading-icon[data-v-02023324] {\n position: absolute;\n top: 8px;\n right: 8px;\n}\n.manage-collaborators__form__list[data-v-02023324] {\n padding: 8px;\n}\n.manage-collaborators__form__list__result[data-v-02023324] {\n padding: 8px;\n border-radius: 100px;\n box-sizing: border-box;\n}\n.manage-collaborators__form__list__result[data-v-02023324], .manage-collaborators__form__list__result *[data-v-02023324] {\n cursor: pointer !important;\n}\n.manage-collaborators__form__list__result[data-v-02023324]:hover {\n background: var(--color-background-dark);\n}\n.manage-collaborators__selection[data-v-02023324] {\n display: flex;\n flex-direction: column;\n margin-top: 8px;\n flex-grow: 1;\n}\n.manage-collaborators__selection__item[data-v-02023324] {\n border-radius: var(--border-radius-pill);\n padding: 0 8px;\n}\n.manage-collaborators__selection__item[data-v-02023324]:hover {\n background: var(--color-background-dark);\n}\n.manage-collaborators .actions[data-v-02023324] {\n display: flex;\n margin-top: 8px;\n}\n.manage-collaborators .actions__public-link[data-v-02023324] {\n display: flex;\n align-items: center;\n}\n.manage-collaborators .actions__slot[data-v-02023324] {\n flex-grow: 1;\n display: flex;\n justify-content: flex-end;\n align-items: center;\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/Albums/AlbumForm.vue?vue&type=style&index=0&id=1d54fb78&lang=scss&scoped=true&": -/*!******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/components/Albums/AlbumForm.vue?vue&type=style&index=0&id=1d54fb78&lang=scss&scoped=true& ***! - \******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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_AlbumForm_vue_vue_type_style_index_0_id_1d54fb78_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../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!./AlbumForm.vue?vue&type=style&index=0&id=1d54fb78&lang=scss&scoped=true& */ "./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!./src/components/Albums/AlbumForm.vue?vue&type=style&index=0&id=1d54fb78&lang=scss&scoped=true&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_AlbumForm_vue_vue_type_style_index_0_id_1d54fb78_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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_AlbumForm_vue_vue_type_style_index_0_id_1d54fb78_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_AlbumForm_vue_vue_type_style_index_0_id_1d54fb78_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_AlbumForm_vue_vue_type_style_index_0_id_1d54fb78_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=02023324&lang=scss&scoped=true&": -/*!***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=02023324&lang=scss&scoped=true& ***! - \***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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_CollaboratorsSelectionForm_vue_vue_type_style_index_0_id_02023324_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../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!./CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=02023324&lang=scss&scoped=true& */ "./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!./src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=02023324&lang=scss&scoped=true&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_CollaboratorsSelectionForm_vue_vue_type_style_index_0_id_02023324_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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_CollaboratorsSelectionForm_vue_vue_type_style_index_0_id_02023324_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_CollaboratorsSelectionForm_vue_vue_type_style_index_0_id_02023324_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_CollaboratorsSelectionForm_vue_vue_type_style_index_0_id_02023324_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./src/components/Albums/AlbumForm.vue": -/*!*********************************************!*\ - !*** ./src/components/Albums/AlbumForm.vue ***! - \*********************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _AlbumForm_vue_vue_type_template_id_1d54fb78_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./AlbumForm.vue?vue&type=template&id=1d54fb78&scoped=true& */ "./src/components/Albums/AlbumForm.vue?vue&type=template&id=1d54fb78&scoped=true&"); -/* harmony import */ var _AlbumForm_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./AlbumForm.vue?vue&type=script&lang=js& */ "./src/components/Albums/AlbumForm.vue?vue&type=script&lang=js&"); -/* harmony import */ var _AlbumForm_vue_vue_type_style_index_0_id_1d54fb78_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./AlbumForm.vue?vue&type=style&index=0&id=1d54fb78&lang=scss&scoped=true& */ "./src/components/Albums/AlbumForm.vue?vue&type=style&index=0&id=1d54fb78&lang=scss&scoped=true&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( - _AlbumForm_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _AlbumForm_vue_vue_type_template_id_1d54fb78_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render, - _AlbumForm_vue_vue_type_template_id_1d54fb78_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - "1d54fb78", - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/Albums/AlbumForm.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/Albums/CollaboratorsSelectionForm.vue": -/*!**************************************************************!*\ - !*** ./src/components/Albums/CollaboratorsSelectionForm.vue ***! - \**************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _CollaboratorsSelectionForm_vue_vue_type_template_id_02023324_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./CollaboratorsSelectionForm.vue?vue&type=template&id=02023324&scoped=true& */ "./src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=template&id=02023324&scoped=true&"); -/* harmony import */ var _CollaboratorsSelectionForm_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./CollaboratorsSelectionForm.vue?vue&type=script&lang=js& */ "./src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=script&lang=js&"); -/* harmony import */ var _CollaboratorsSelectionForm_vue_vue_type_style_index_0_id_02023324_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=02023324&lang=scss&scoped=true& */ "./src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=02023324&lang=scss&scoped=true&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( - _CollaboratorsSelectionForm_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _CollaboratorsSelectionForm_vue_vue_type_template_id_02023324_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render, - _CollaboratorsSelectionForm_vue_vue_type_template_id_02023324_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - "02023324", - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/Albums/CollaboratorsSelectionForm.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/Albums/AlbumForm.vue?vue&type=script&lang=js&": -/*!**********************************************************************!*\ - !*** ./src/components/Albums/AlbumForm.vue?vue&type=script&lang=js& ***! - \**********************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_AlbumForm_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AlbumForm.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Albums/AlbumForm.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_AlbumForm_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=script&lang=js&": -/*!***************************************************************************************!*\ - !*** ./src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=script&lang=js& ***! - \***************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_CollaboratorsSelectionForm_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CollaboratorsSelectionForm.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_CollaboratorsSelectionForm_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/components/Albums/AlbumForm.vue?vue&type=style&index=0&id=1d54fb78&lang=scss&scoped=true&": -/*!*******************************************************************************************************!*\ - !*** ./src/components/Albums/AlbumForm.vue?vue&type=style&index=0&id=1d54fb78&lang=scss&scoped=true& ***! - \*******************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_AlbumForm_vue_vue_type_style_index_0_id_1d54fb78_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/style-loader/dist/cjs.js!../../../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!./AlbumForm.vue?vue&type=style&index=0&id=1d54fb78&lang=scss&scoped=true& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/Albums/AlbumForm.vue?vue&type=style&index=0&id=1d54fb78&lang=scss&scoped=true&"); - - -/***/ }), - -/***/ "./src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=02023324&lang=scss&scoped=true&": -/*!************************************************************************************************************************!*\ - !*** ./src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=02023324&lang=scss&scoped=true& ***! - \************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_CollaboratorsSelectionForm_vue_vue_type_style_index_0_id_02023324_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/style-loader/dist/cjs.js!../../../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!./CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=02023324&lang=scss&scoped=true& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=02023324&lang=scss&scoped=true&"); - - -/***/ }), - -/***/ "./src/components/Albums/AlbumForm.vue?vue&type=template&id=1d54fb78&scoped=true&": -/*!****************************************************************************************!*\ - !*** ./src/components/Albums/AlbumForm.vue?vue&type=template&id=1d54fb78&scoped=true& ***! - \****************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_AlbumForm_vue_vue_type_template_id_1d54fb78_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_AlbumForm_vue_vue_type_template_id_1d54fb78_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_AlbumForm_vue_vue_type_template_id_1d54fb78_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AlbumForm.vue?vue&type=template&id=1d54fb78&scoped=true& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Albums/AlbumForm.vue?vue&type=template&id=1d54fb78&scoped=true&"); - - -/***/ }), - -/***/ "./src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=template&id=02023324&scoped=true&": -/*!*********************************************************************************************************!*\ - !*** ./src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=template&id=02023324&scoped=true& ***! - \*********************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_CollaboratorsSelectionForm_vue_vue_type_template_id_02023324_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_CollaboratorsSelectionForm_vue_vue_type_template_id_02023324_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_CollaboratorsSelectionForm_vue_vue_type_template_id_02023324_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CollaboratorsSelectionForm.vue?vue&type=template&id=02023324&scoped=true& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=template&id=02023324&scoped=true&"); - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Albums/AlbumForm.vue?vue&type=template&id=1d54fb78&scoped=true&": -/*!*******************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Albums/AlbumForm.vue?vue&type=template&id=1d54fb78&scoped=true& ***! - \*******************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return !_vm.showCollaboratorView - ? _c( - "form", - { - staticClass: "album-form", - on: { - submit: function ($event) { - $event.preventDefault() - return _vm.submit.apply(null, arguments) - }, - }, - }, - [ - _c( - "div", - { staticClass: "form-inputs" }, - [ - _c("NcTextField", { - ref: "nameInput", - attrs: { - value: _vm.albumName, - type: "text", - name: "name", - required: true, - autofocus: "true", - placeholder: _vm.t("photos", "Name of the album"), - }, - on: { - "update:value": function ($event) { - _vm.albumName = $event - }, - }, - }), - _vm._v(" "), - _c( - "label", - [ - _c("MapMarker"), - _c("NcTextField", { - attrs: { - value: _vm.albumLocation, - name: "location", - type: "text", - placeholder: _vm.t("photos", "Location of the album"), - }, - on: { - "update:value": function ($event) { - _vm.albumLocation = $event - }, - }, - }), - ], - 1 - ), - ], - 1 - ), - _vm._v(" "), - _c("div", { staticClass: "form-buttons" }, [ - _c( - "span", - { staticClass: "left-buttons" }, - [ - _vm.displayBackButton - ? _c( - "NcButton", - { - attrs: { - "aria-label": _vm.t( - "photos", - "Go back to the previous view." - ), - type: "tertiary", - }, - on: { click: _vm.back }, - }, - [ - _vm._v( - "\n\t\t\t\t" + - _vm._s(_vm.t("photos", "Back")) + - "\n\t\t\t" - ), - ] - ) - : _vm._e(), - ], - 1 - ), - _vm._v(" "), - _c( - "span", - { staticClass: "right-buttons" }, - [ - _vm.sharingEnabled && !_vm.editMode - ? _c( - "NcButton", - { - attrs: { - "aria-label": _vm.t( - "photos", - "Go to the add collaborators view." - ), - type: "secondary", - disabled: _vm.albumName.trim() === "" || _vm.loading, - }, - on: { - click: function ($event) { - _vm.showCollaboratorView = true - }, - }, - scopedSlots: _vm._u( - [ - { - key: "icon", - fn: function () { - return [_c("AccountMultiplePlus")] - }, - proxy: true, - }, - ], - null, - false, - 1531126728 - ), - }, - [ - _vm._v( - "\n\t\t\t\t" + - _vm._s(_vm.t("photos", "Add collaborators")) + - "\n\t\t\t" - ), - ] - ) - : _vm._e(), - _vm._v(" "), - _c( - "NcButton", - { - attrs: { - "aria-label": _vm.editMode - ? _vm.t("photos", "Save.") - : _vm.t("photos", "Create the album."), - type: "primary", - disabled: _vm.albumName === "" || _vm.loading, - }, - on: { - click: function ($event) { - return _vm.submit() - }, - }, - scopedSlots: _vm._u( - [ - { - key: "icon", - fn: function () { - return [ - _vm.loading ? _c("NcLoadingIcon") : _c("Send"), - ] - }, - proxy: true, - }, - ], - null, - false, - 3914512768 - ), - }, - [ - _vm._v( - "\n\t\t\t\t" + - _vm._s( - _vm.editMode - ? _vm.t("photos", "Save") - : _vm.t("photos", "Create album") - ) + - "\n\t\t\t" - ), - ] - ), - ], - 1 - ), - ]), - ] - ) - : _c("CollaboratorsSelectionForm", { - attrs: { "album-name": _vm.albumName, "allow-public-link": false }, - scopedSlots: _vm._u([ - { - key: "default", - fn: function (ref) { - var collaborators = ref.collaborators - return [ - _c( - "span", - { staticClass: "left-buttons" }, - [ - _c( - "NcButton", - { - attrs: { - "aria-label": _vm.t( - "photos", - "Back to the new album form." - ), - type: "tertiary", - }, - on: { - click: function ($event) { - _vm.showCollaboratorView = false - }, - }, - }, - [ - _vm._v( - "\n\t\t\t\t" + - _vm._s(_vm.t("photos", "Back")) + - "\n\t\t\t" - ), - ] - ), - ], - 1 - ), - _vm._v(" "), - _c( - "span", - { staticClass: "right-buttons" }, - [ - _c( - "NcButton", - { - attrs: { - "aria-label": _vm.editMode - ? _vm.t("photos", "Save.") - : _vm.t("photos", "Create the album."), - type: "primary", - disabled: _vm.albumName.trim() === "" || _vm.loading, - }, - on: { - click: function ($event) { - return _vm.submit(collaborators) - }, - }, - scopedSlots: _vm._u( - [ - { - key: "icon", - fn: function () { - return [ - _vm.loading - ? _c("NcLoadingIcon") - : _c("Send"), - ] - }, - proxy: true, - }, - ], - null, - true - ), - }, - [ - _vm._v( - "\n\t\t\t\t" + - _vm._s( - _vm.editMode - ? _vm.t("photos", "Save") - : _vm.t("photos", "Create album") - ) + - "\n\t\t\t" - ), - ] - ), - ], - 1 - ), - ] - }, - }, - ]), - }) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=template&id=02023324&scoped=true&": -/*!************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=template&id=02023324&scoped=true& ***! - \************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c("div", { staticClass: "manage-collaborators" }, [ - _c("h2", { staticClass: "manage-collaborators__title" }, [ - _vm._v("\n\t\t" + _vm._s(_vm.t("photos", "Add collaborators")) + "\n\t"), - ]), - _vm._v(" "), - _c("div", { staticClass: "manage-collaborators__subtitle" }, [ - _vm._v( - "\n\t\t" + - _vm._s( - _vm.t("photos", "Add people or groups who can edit your album") - ) + - "\n\t" - ), - ]), - _vm._v(" "), - _c( - "form", - { - staticClass: "manage-collaborators__form", - on: { - submit: function ($event) { - $event.preventDefault() - }, - }, - }, - [ - _c( - "NcPopover", - { ref: "popover", attrs: { "auto-size": true, distance: 0 } }, - [ - _c( - "label", - { - staticClass: "manage-collaborators__form__input", - attrs: { slot: "trigger" }, - slot: "trigger", - }, - [ - _c( - "NcTextField", - { - attrs: { - value: _vm.searchText, - autocomplete: "off", - type: "search", - name: "search", - "aria-label": _vm.t("photos", "Search for collaborators"), - "aria-autocomplete": "list", - "aria-controls": - "manage-collaborators__form__selection-" + - _vm.randomId + - " manage-collaborators__form__list-" + - _vm.randomId, - placeholder: _vm.t("photos", "Search people or groups"), - }, - on: { - "update:value": function ($event) { - _vm.searchText = $event - }, - input: _vm.searchCollaborators, - }, - }, - [_c("Magnify", { attrs: { size: 16 } })], - 1 - ), - _vm._v(" "), - _vm.loadingCollaborators ? _c("NcLoadingIcon") : _vm._e(), - ], - 1 - ), - _vm._v(" "), - _c( - "ul", - { - staticClass: "manage-collaborators__form__list", - attrs: { - id: "manage-collaborators__form__list-" + _vm.randomId, - }, - }, - _vm._l(_vm.searchResults, function (result) { - return _c("li", { key: result.key }, [ - _c( - "a", - [ - _c("NcListItemIcon", { - staticClass: "manage-collaborators__form__list__result", - attrs: { - id: _vm.availableCollaborators[result.key].id, - title: _vm.availableCollaborators[result.key].id, - search: _vm.searchText, - "display-name": - _vm.availableCollaborators[result.key].label, - "aria-label": _vm.t( - "photos", - "Add {collaboratorLabel} to the collaborators list", - { - collaboratorLabel: - _vm.availableCollaborators[result.key].label, - } - ), - }, - on: { - click: function ($event) { - return _vm.selectEntity(result.key) - }, - }, - }), - ], - 1 - ), - ]) - }), - 0 - ), - ] - ), - ], - 1 - ), - _vm._v(" "), - _c( - "ul", - { staticClass: "manage-collaborators__selection" }, - _vm._l(_vm.selectedCollaboratorsKeys, function (collaboratorKey) { - return _c( - "li", - { - key: collaboratorKey, - staticClass: "manage-collaborators__selection__item", - }, - [ - _c( - "NcListItemIcon", - { - attrs: { - id: _vm.availableCollaborators[collaboratorKey].id, - title: _vm.availableCollaborators[collaboratorKey].id, - "display-name": - _vm.availableCollaborators[collaboratorKey].label, - "aria-label": _vm.t( - "photos", - "Remove {collaboratorLabel} from the collaborators list", - { - collaboratorLabel: - _vm.availableCollaborators[collaboratorKey].label, - } - ), - }, - }, - [ - _c( - "NcButton", - { - attrs: { - type: "tertiary", - "aria-label": _vm.t( - "photos", - "Remove {collaboratorLabel} from the collaborators list", - { - collaboratorLabel: - _vm.availableCollaborators[collaboratorKey].label, - } - ), - }, - on: { - click: function ($event) { - return _vm.unselectEntity(collaboratorKey) - }, - }, - }, - [ - _c("Close", { - attrs: { slot: "icon", size: 20 }, - slot: "icon", - }), - ], - 1 - ), - ], - 1 - ), - ], - 1 - ) - }), - 0 - ), - _vm._v(" "), - _c("div", { staticClass: "actions" }, [ - _vm.allowPublicLink - ? _c( - "div", - { staticClass: "actions__public-link" }, - [ - _vm.publicLink - ? [ - _c( - "NcButton", - { - staticClass: "manage-collaborators__public-link-button", - attrs: { type: "tertiary-no-background" }, - on: { click: _vm.copyPublicLink }, - scopedSlots: _vm._u( - [ - { - key: "icon", - fn: function () { - return [ - _vm.publicLinkCopied - ? _c("Check") - : _c("ContentCopy"), - ] - }, - proxy: true, - }, - ], - null, - false, - 845538853 - ), - }, - [ - _vm.publicLinkCopied - ? [ - _vm._v( - "\n\t\t\t\t\t\t" + - _vm._s( - _vm.t("photos", "Public link copied!") - ) + - "\n\t\t\t\t\t" - ), - ] - : [ - _vm._v( - "\n\t\t\t\t\t\t" + - _vm._s(_vm.t("photos", "Copy public link")) + - "\n\t\t\t\t\t" - ), - ], - ], - 2 - ), - _vm._v(" "), - _c( - "NcButton", - { on: { click: _vm.deletePublicLink } }, - [_c("Close", { attrs: { slot: "icon" }, slot: "icon" })], - 1 - ), - ] - : _c( - "NcButton", - { - staticClass: "manage-collaborators__public-link-button", - attrs: { type: "tertiary-no-background" }, - on: { click: _vm.createPublicLinkForAlbum }, - }, - [ - _c("Earth", { attrs: { slot: "icon" }, slot: "icon" }), - _vm._v( - "\n\t\t\t\t" + - _vm._s(_vm.t("photos", "Share via public link")) + - "\n\t\t\t" - ), - ], - 1 - ), - ], - 2 - ) - : _vm._e(), - _vm._v(" "), - _c( - "div", - { staticClass: "actions__slot" }, - [_vm._t("default", null, { collaborators: _vm.selectedCollaborators })], - 2 - ), - ]), - ]) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }) - -}]); -//# sourceMappingURL=photos-src_mixins_FetchAlbumsMixin_js-src_components_Albums_AlbumForm_vue.js.map?v=beb5d11a1707452d1a32 \ No newline at end of file diff --git a/js/photos-src_mixins_FetchAlbumsMixin_js-src_components_Albums_AlbumForm_vue.js.LICENSE.txt b/js/photos-src_mixins_FetchAlbumsMixin_js-src_components_Albums_AlbumForm_vue.js.LICENSE.txt deleted file mode 100644 index 6f3657b52..000000000 --- a/js/photos-src_mixins_FetchAlbumsMixin_js-src_components_Albums_AlbumForm_vue.js.LICENSE.txt +++ /dev/null @@ -1,21 +0,0 @@ -/** - * @copyright Copyright (c) 2022 Louis Chemineau - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ diff --git a/js/photos-src_mixins_FetchAlbumsMixin_js-src_components_Albums_AlbumForm_vue.js.map b/js/photos-src_mixins_FetchAlbumsMixin_js-src_components_Albums_AlbumForm_vue.js.map deleted file mode 100644 index 9d89bd894..000000000 --- a/js/photos-src_mixins_FetchAlbumsMixin_js-src_components_Albums_AlbumForm_vue.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-src_mixins_FetchAlbumsMixin_js-src_components_Albums_AlbumForm_vue.js?v=beb5d11a1707452d1a32","mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;ACzTA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;AClYA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;ACnMA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;;;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;ACvCA;;;;;;;;;;;;;;;ACAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AKAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;ACjSA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sources":["webpack:///photos/src/components/Albums/AlbumForm.vue?vue&type=script&lang=js&","webpack:///photos/src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=script&lang=js&","webpack:///photos/src/mixins/FetchAlbumsMixin.js","webpack:///photos/src/components/Albums/AlbumForm.vue?vue&type=style&index=0&id=1d54fb78&lang=scss&scoped=true&","webpack:///photos/src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=02023324&lang=scss&scoped=true&","webpack://photos/./src/components/Albums/AlbumForm.vue?b00f","webpack://photos/./src/components/Albums/CollaboratorsSelectionForm.vue?5802","webpack:///photos/src/components/Albums/AlbumForm.vue","webpack:///photos/src/components/Albums/CollaboratorsSelectionForm.vue","webpack://photos/./src/components/Albums/AlbumForm.vue?f038","webpack://photos/./src/components/Albums/CollaboratorsSelectionForm.vue?8cce","webpack://photos/./src/components/Albums/AlbumForm.vue?575c","webpack://photos/./src/components/Albums/CollaboratorsSelectionForm.vue?9f48","webpack:///photos/src/components/Albums/AlbumForm.vue?vue&type=template&id=1d54fb78&scoped=true&","webpack:///photos/src/components/Albums/CollaboratorsSelectionForm.vue?vue&type=template&id=02023324&scoped=true&","webpack://photos/./src/components/Albums/AlbumForm.vue?476e","webpack://photos/./src/components/Albums/CollaboratorsSelectionForm.vue?c15e"],"sourcesContent":["function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport { mapActions } from 'vuex';\nimport MapMarker from 'vue-material-design-icons/MapMarker';\nimport AccountMultiplePlus from 'vue-material-design-icons/AccountMultiplePlus';\nimport Send from 'vue-material-design-icons/Send';\nimport { NcButton, NcLoadingIcon, NcTextField } from '@nextcloud/vue';\nimport moment from '@nextcloud/moment';\nimport CollaboratorsSelectionForm from './CollaboratorsSelectionForm.vue';\nexport default {\n name: 'AlbumForm',\n components: {\n MapMarker: MapMarker,\n AccountMultiplePlus: AccountMultiplePlus,\n Send: Send,\n NcButton: NcButton,\n NcLoadingIcon: NcLoadingIcon,\n NcTextField: NcTextField,\n CollaboratorsSelectionForm: CollaboratorsSelectionForm\n },\n props: {\n album: {\n type: Object,\n default: null\n },\n displayBackButton: {\n type: Boolean,\n default: false\n }\n },\n data: function data() {\n return {\n showCollaboratorView: false,\n albumName: '',\n albumLocation: '',\n loading: false\n };\n },\n computed: {\n /**\n * @return {boolean} Whether sharing is enabled.\n */\n editMode: function editMode() {\n return this.album !== null;\n },\n\n /**\n * @return {boolean} Whether sharing is enabled.\n */\n sharingEnabled: function sharingEnabled() {\n return OC.Share !== undefined;\n }\n },\n mounted: function mounted() {\n var _this = this;\n\n if (this.editMode) {\n this.albumName = this.album.basename;\n this.albumLocation = this.album.location;\n }\n\n this.$nextTick(function () {\n _this.$refs.nameInput.$el.getElementsByTagName('input')[0].focus();\n });\n },\n methods: _objectSpread(_objectSpread({}, mapActions(['createAlbum', 'renameAlbum', 'updateAlbum'])), {}, {\n submit: function submit() {\n var collaborators = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n\n if (this.albumName === '' || this.loading) {\n return;\n }\n\n if (this.editMode) {\n this.handleUpdateAlbum();\n } else {\n this.handleCreateAlbum(collaborators);\n }\n },\n handleCreateAlbum: function handleCreateAlbum() {\n var _arguments = arguments,\n _this2 = this;\n\n return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {\n var collaborators, album;\n return regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n collaborators = _arguments.length > 0 && _arguments[0] !== undefined ? _arguments[0] : [];\n _context.prev = 1;\n _this2.loading = true;\n _context.next = 5;\n return _this2.createAlbum({\n album: {\n basename: _this2.albumName,\n nbItems: 0,\n location: _this2.albumLocation,\n lastPhoto: -1,\n date: moment().format('MMMM YYYY'),\n collaborators: collaborators\n }\n });\n\n case 5:\n album = _context.sent;\n\n if (!(_this2.albumLocation !== '' || collaborators.length !== 0)) {\n _context.next = 10;\n break;\n }\n\n _context.next = 9;\n return _this2.updateAlbum({\n albumName: _this2.albumName,\n properties: {\n location: _this2.albumLocation,\n collaborators: collaborators\n }\n });\n\n case 9:\n album = _context.sent;\n\n case 10:\n _this2.$emit('done', {\n album: album\n });\n\n case 11:\n _context.prev = 11;\n _this2.loading = false;\n return _context.finish(11);\n\n case 14:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, null, [[1,, 11, 14]]);\n }))();\n },\n handleUpdateAlbum: function handleUpdateAlbum() {\n var _this3 = this;\n\n return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() {\n var album;\n return regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n _context2.prev = 0;\n _this3.loading = true;\n album = _objectSpread({}, _this3.album);\n\n if (!(_this3.album.basename !== _this3.albumName)) {\n _context2.next = 7;\n break;\n }\n\n _context2.next = 6;\n return _this3.renameAlbum({\n currentAlbumName: _this3.album.basename,\n newAlbumName: _this3.albumName\n });\n\n case 6:\n album = _context2.sent;\n\n case 7:\n if (!(_this3.album.location !== _this3.albumLocation)) {\n _context2.next = 11;\n break;\n }\n\n _context2.next = 10;\n return _this3.updateAlbum({\n albumName: _this3.albumName,\n properties: {\n location: _this3.albumLocation\n }\n });\n\n case 10:\n album.location = _context2.sent;\n\n case 11:\n _this3.$emit('done', {\n album: album\n });\n\n case 12:\n _context2.prev = 12;\n _this3.loading = false;\n return _context2.finish(12);\n\n case 15:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2, null, [[0,, 12, 15]]);\n }))();\n },\n back: function back() {\n this.$emit('back');\n }\n })\n};","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport Magnify from 'vue-material-design-icons/Magnify';\nimport Close from 'vue-material-design-icons/Close';\nimport axios from '@nextcloud/axios';\nimport { showError } from '@nextcloud/dialogs';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport { generateOcsUrl } from '@nextcloud/router';\nimport { NcButton, NcListItemIcon, NcLoadingIcon, NcPopover, NcTextField } from '@nextcloud/vue';\nimport logger from '../../services/logger.js';\nvar SHARE = {\n TYPE: {\n USER: 0,\n GROUP: 1 // LINK: 3,\n\n }\n};\nexport default {\n name: 'CollaboratorsSelectionForm',\n components: {\n Magnify: Magnify,\n Close: Close,\n NcLoadingIcon: NcLoadingIcon,\n NcButton: NcButton,\n NcListItemIcon: NcListItemIcon,\n NcTextField: NcTextField,\n NcPopover: NcPopover\n },\n props: {\n albumName: {\n type: String,\n required: true\n },\n collaborators: {\n type: Array,\n default: function _default() {\n return [];\n }\n },\n publicLink: {\n type: String,\n default: ''\n },\n allowPublicLink: {\n type: Boolean,\n default: true\n }\n },\n data: function data() {\n return {\n searchText: '',\n availableCollaborators: {},\n selectedCollaboratorsKeys: [],\n currentSearchResults: [],\n loadingCollaborators: false,\n randomId: Math.random().toString().substring(2, 10),\n publicLinkCopied: false,\n config: {\n minSearchStringLength: parseInt(OC.config['sharing.minSearchStringLength'], 10) || 0\n }\n };\n },\n computed: {\n /**\n * @return {string[]}\n */\n searchResults: function searchResults() {\n var _this = this;\n\n return this.currentSearchResults.filter(function (_ref) {\n var id = _ref.id;\n return id !== getCurrentUser().uid;\n }).map(function (_ref2) {\n var type = _ref2.type,\n id = _ref2.id;\n return \"\".concat(type, \":\").concat(id);\n }).filter(function (key) {\n return !_this.selectedCollaboratorsKeys.includes(key);\n }).map(function (key) {\n return {\n key: key,\n height: 48\n };\n });\n },\n\n /**\n * @return {object[]}\n */\n selectedCollaborators: function selectedCollaborators() {\n var _this2 = this;\n\n return this.selectedCollaboratorsKeys.map(function (collaboratorKey) {\n return _this2.availableCollaborators[collaboratorKey];\n });\n }\n },\n mounted: function mounted() {\n this.searchCollaborators();\n this.selectedCollaboratorsKeys = this.collaborators.map(function (_ref3) {\n var type = _ref3.type,\n id = _ref3.id;\n return \"\".concat(type, \":\").concat(id);\n });\n this.availableCollaborators = _objectSpread(_objectSpread({}, this.availableCollaborators), this.collaborators.reduce(function (collaborators, collaborator) {\n return _objectSpread(_objectSpread({}, collaborators), {}, _defineProperty({}, \"\".concat(collaborator.type, \":\").concat(collaborator.id), collaborator));\n }, {}));\n },\n methods: {\n /**\n * Fetch possible collaborators.\n */\n searchCollaborators: function searchCollaborators() {\n var _this3 = this;\n\n return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {\n var response;\n return regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.prev = 0;\n\n if (!(_this3.searchText.length < _this3.config.minSearchStringLength)) {\n _context.next = 3;\n break;\n }\n\n return _context.abrupt(\"return\");\n\n case 3:\n _this3.loadingCollaborators = true;\n _context.next = 6;\n return axios.get(generateOcsUrl('core/autocomplete/get'), {\n params: {\n search: _this3.searchText,\n itemType: 'share-recipients',\n shareTypes: [SHARE.TYPE.USER, SHARE.TYPE.GROUP]\n }\n });\n\n case 6:\n response = _context.sent;\n _this3.currentSearchResults = response.data.ocs.data.map(function (collaborator) {\n var type = -1;\n\n switch (collaborator.source) {\n case 'users':\n type = OC.Share.SHARE_TYPE_USER;\n break;\n\n case 'groups':\n type = OC.Share.SHARE_TYPE_GROUP;\n break;\n }\n\n return _objectSpread(_objectSpread({}, collaborator), {}, {\n type: type\n });\n });\n _this3.availableCollaborators = _objectSpread(_objectSpread({}, _this3.availableCollaborators), _this3.currentSearchResults.reduce(function (collaborators, collaborator) {\n return _objectSpread(_objectSpread({}, collaborators), {}, _defineProperty({}, \"\".concat(collaborator.type, \":\").concat(collaborator.id), collaborator));\n }, {}));\n _context.next = 16;\n break;\n\n case 11:\n _context.prev = 11;\n _context.t0 = _context[\"catch\"](0);\n _this3.errorFetchingCollaborators = _context.t0;\n logger.error(t('photos', 'Failed to fetch collaborators list.'), _context.t0);\n showError(t('photos', 'Failed to fetch collaborators list.'));\n\n case 16:\n _context.prev = 16;\n _this3.loadingCollaborators = false;\n return _context.finish(16);\n\n case 19:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, null, [[0, 11, 16, 19]]);\n }))();\n },\n // TODO: implement public sharing\n createPublicLinkForAlbum: function createPublicLinkForAlbum() {\n var _this4 = this;\n\n return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() {\n return regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n return _context2.abrupt(\"return\", axios.put(generateOcsUrl(\"apps/photos/createPublicLink/\".concat(_this4.albumName))));\n\n case 1:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }))();\n },\n deletePublicLink: function deletePublicLink() {\n var _this5 = this;\n\n return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee3() {\n return regeneratorRuntime.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n return _context3.abrupt(\"return\", axios.delete(generateOcsUrl(\"apps/photos/createPublicLink/\".concat(_this5.albumName))));\n\n case 1:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3);\n }))();\n },\n copyPublicLink: function copyPublicLink() {\n var _this6 = this;\n\n return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee4() {\n return regeneratorRuntime.wrap(function _callee4$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n _context4.next = 2;\n return navigator.clipboard.writeText(_this6.publicLink);\n\n case 2:\n _this6.publicLinkCopied = true;\n setTimeout(function () {\n _this6.publicLinkCopied = false;\n }, 10000);\n\n case 4:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _callee4);\n }))();\n },\n selectEntity: function selectEntity(collaboratorKey) {\n if (this.selectedCollaboratorsKeys.includes(collaboratorKey)) {\n return;\n }\n\n this.$refs.popover.$refs.popover.hide();\n this.selectedCollaboratorsKeys.push(collaboratorKey);\n },\n unselectEntity: function unselectEntity(collaboratorKey) {\n var index = this.selectedCollaboratorsKeys.indexOf(collaboratorKey);\n this.selectedCollaboratorsKeys.splice(index, 1);\n }\n }\n};","function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\n/**\n * @copyright Copyright (c) 2022 Louis Chemineau \n *\n * @author Louis Chemineau \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 .\n *\n */\nimport { mapGetters } from 'vuex';\nimport moment from '@nextcloud/moment';\nimport { showError } from '@nextcloud/dialogs';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport client from '../services/DavClient.js';\nimport logger from '../services/logger.js';\nimport { genFileInfo } from '../utils/fileUtils.js';\nimport AbortControllerMixin from './AbortControllerMixin.js';\nexport default {\n name: 'FetchAlbumsMixin',\n data: function data() {\n return {\n errorFetchingAlbums: null,\n loadingAlbums: false\n };\n },\n mixins: [AbortControllerMixin],\n beforeMount: function beforeMount() {\n var _this = this;\n\n return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {\n return regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _this.fetchAlbums();\n\n case 1:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }))();\n },\n computed: _objectSpread({}, mapGetters(['albums'])),\n methods: {\n fetchAlbums: function fetchAlbums() {\n var _this2 = this;\n\n return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() {\n var _getCurrentUser, response, albums, _error$response;\n\n return regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n if (!_this2.loadingAlbums) {\n _context2.next = 2;\n break;\n }\n\n return _context2.abrupt(\"return\");\n\n case 2:\n _context2.prev = 2;\n _this2.loadingAlbums = true;\n _this2.errorFetchingAlbums = null;\n _context2.next = 7;\n return client.getDirectoryContents(\"/photos/\".concat((_getCurrentUser = getCurrentUser()) === null || _getCurrentUser === void 0 ? void 0 : _getCurrentUser.uid, \"/albums\"), {\n data: \"\\n\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\",\n details: true,\n signal: _this2.abortController.signal\n });\n\n case 7:\n response = _context2.sent;\n albums = response.data.filter(function (album) {\n var _getCurrentUser2;\n\n return album.filename !== \"/photos/\".concat((_getCurrentUser2 = getCurrentUser()) === null || _getCurrentUser2 === void 0 ? void 0 : _getCurrentUser2.uid, \"/albums\");\n }) // Ensure that we have a proper collaborators array.\n .map(function (album) {\n if (album.props.collaborators === '') {\n album.props.collaborators = [];\n } else if (_typeof(album.props.collaborators.collaborator) === 'object') {\n if (Array.isArray(album.props.collaborators.collaborator)) {\n album.props.collaborators = album.props.collaborators.collaborator;\n } else {\n album.props.collaborators = [album.props.collaborators.collaborator];\n }\n }\n\n return album;\n }).map(function (album) {\n return genFileInfo(album);\n }).map(function (album) {\n var _album$dateRange$repl, _album$dateRange;\n\n var dateRange = JSON.parse((_album$dateRange$repl = (_album$dateRange = album.dateRange) === null || _album$dateRange === void 0 ? void 0 : _album$dateRange.replace(/"/g, '\"')) !== null && _album$dateRange$repl !== void 0 ? _album$dateRange$repl : '{}');\n\n if (dateRange.start === null) {\n dateRange.start = moment().unix();\n dateRange.end = moment().unix();\n }\n\n var dateRangeFormated = {\n startDate: moment.unix(dateRange.start).format('MMMM YYYY'),\n endDate: moment.unix(dateRange.end).format('MMMM YYYY')\n };\n\n if (dateRangeFormated.startDate === dateRangeFormated.endDate) {\n return _objectSpread(_objectSpread({}, album), {}, {\n date: dateRangeFormated.startDate\n });\n } else {\n return _objectSpread(_objectSpread({}, album), {}, {\n date: _this2.t('photos', '{startDate} to {endDate}', dateRangeFormated)\n });\n }\n });\n\n _this2.$store.dispatch('addAlbums', {\n albums: albums\n });\n\n logger.debug(\"[FetchAlbumsMixin] Fetched \".concat(albums.length, \" new files: \"), albums);\n _context2.next = 26;\n break;\n\n case 13:\n _context2.prev = 13;\n _context2.t0 = _context2[\"catch\"](2);\n\n if (!(((_error$response = _context2.t0.response) === null || _error$response === void 0 ? void 0 : _error$response.status) === 404)) {\n _context2.next = 19;\n break;\n }\n\n _this2.errorFetchingAlbums = 404;\n _context2.next = 24;\n break;\n\n case 19:\n if (!(_context2.t0.code === 'ERR_CANCELED')) {\n _context2.next = 23;\n break;\n }\n\n return _context2.abrupt(\"return\");\n\n case 23:\n _this2.errorFetchingAlbums = _context2.t0;\n\n case 24:\n logger.error(t('photos', 'Failed to fetch albums list.'), _context2.t0);\n showError(t('photos', 'Failed to fetch albums list.'));\n\n case 26:\n _context2.prev = 26;\n _this2.loadingAlbums = false;\n return _context2.finish(26);\n\n case 29:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2, null, [[2, 13, 26, 29]]);\n }))();\n }\n }\n};","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".album-form[data-v-1d54fb78] {\\n display: flex;\\n flex-direction: column;\\n height: 350px;\\n padding: 16px;\\n}\\n.album-form .form-title[data-v-1d54fb78] {\\n font-weight: bold;\\n}\\n.album-form .form-subtitle[data-v-1d54fb78] {\\n color: var(--color-text-lighter);\\n}\\n.album-form .form-inputs[data-v-1d54fb78] {\\n flex-grow: 1;\\n justify-items: flex-end;\\n}\\n.album-form .form-inputs input[data-v-1d54fb78] {\\n width: 100%;\\n}\\n.album-form .form-inputs label[data-v-1d54fb78] {\\n display: flex;\\n margin-top: 16px;\\n}\\n.album-form .form-inputs label[data-v-1d54fb78] svg {\\n margin-right: 12px;\\n}\\n.album-form .form-buttons[data-v-1d54fb78] {\\n display: flex;\\n justify-content: space-between;\\n}\\n.album-form .form-buttons .left-buttons[data-v-1d54fb78], .album-form .form-buttons .right-buttons[data-v-1d54fb78] {\\n display: flex;\\n}\\n.album-form .form-buttons .right-buttons[data-v-1d54fb78] {\\n justify-content: flex-end;\\n}\\n.album-form .form-buttons button[data-v-1d54fb78] {\\n margin-right: 16px;\\n}\\n.left-buttons[data-v-1d54fb78] {\\n flex-grow: 1;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".manage-collaborators[data-v-02023324] {\\n display: flex;\\n flex-direction: column;\\n padding: 20px;\\n height: 500px;\\n}\\n.manage-collaborators__title[data-v-02023324] {\\n font-weight: bold;\\n}\\n.manage-collaborators__subtitle[data-v-02023324] {\\n color: var(--color-text-lighter);\\n}\\n.manage-collaborators__public-link-button[data-v-02023324] {\\n margin: 4px 0;\\n}\\n.manage-collaborators__form[data-v-02023324] {\\n margin-top: 4px 0;\\n display: flex;\\n flex-direction: column;\\n}\\n.manage-collaborators__form__input[data-v-02023324] {\\n position: relative;\\n display: block;\\n}\\n.manage-collaborators__form__input input[data-v-02023324] {\\n width: 100%;\\n padding-left: 34px;\\n}\\n.manage-collaborators__form__input .loading-icon[data-v-02023324] {\\n position: absolute;\\n top: 8px;\\n right: 8px;\\n}\\n.manage-collaborators__form__list[data-v-02023324] {\\n padding: 8px;\\n}\\n.manage-collaborators__form__list__result[data-v-02023324] {\\n padding: 8px;\\n border-radius: 100px;\\n box-sizing: border-box;\\n}\\n.manage-collaborators__form__list__result[data-v-02023324], .manage-collaborators__form__list__result *[data-v-02023324] {\\n cursor: pointer !important;\\n}\\n.manage-collaborators__form__list__result[data-v-02023324]:hover {\\n background: var(--color-background-dark);\\n}\\n.manage-collaborators__selection[data-v-02023324] {\\n display: flex;\\n flex-direction: column;\\n margin-top: 8px;\\n flex-grow: 1;\\n}\\n.manage-collaborators__selection__item[data-v-02023324] {\\n border-radius: var(--border-radius-pill);\\n padding: 0 8px;\\n}\\n.manage-collaborators__selection__item[data-v-02023324]:hover {\\n background: var(--color-background-dark);\\n}\\n.manage-collaborators .actions[data-v-02023324] {\\n display: flex;\\n margin-top: 8px;\\n}\\n.manage-collaborators .actions__public-link[data-v-02023324] {\\n display: flex;\\n align-items: center;\\n}\\n.manage-collaborators .actions__slot[data-v-02023324] {\\n flex-grow: 1;\\n display: flex;\\n justify-content: flex-end;\\n align-items: center;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n import API from \"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./AlbumForm.vue?vue&type=style&index=0&id=1d54fb78&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./AlbumForm.vue?vue&type=style&index=0&id=1d54fb78&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","\n import API from \"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=02023324&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=02023324&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./AlbumForm.vue?vue&type=template&id=1d54fb78&scoped=true&\"\nimport script from \"./AlbumForm.vue?vue&type=script&lang=js&\"\nexport * from \"./AlbumForm.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AlbumForm.vue?vue&type=style&index=0&id=1d54fb78&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 \"1d54fb78\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/admin/Docker/apps2/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('1d54fb78')) {\n api.createRecord('1d54fb78', component.options)\n } else {\n api.reload('1d54fb78', component.options)\n }\n module.hot.accept(\"./AlbumForm.vue?vue&type=template&id=1d54fb78&scoped=true&\", function () {\n api.rerender('1d54fb78', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/Albums/AlbumForm.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./CollaboratorsSelectionForm.vue?vue&type=template&id=02023324&scoped=true&\"\nimport script from \"./CollaboratorsSelectionForm.vue?vue&type=script&lang=js&\"\nexport * from \"./CollaboratorsSelectionForm.vue?vue&type=script&lang=js&\"\nimport style0 from \"./CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=02023324&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 \"02023324\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/admin/Docker/apps2/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('02023324')) {\n api.createRecord('02023324', component.options)\n } else {\n api.reload('02023324', component.options)\n }\n module.hot.accept(\"./CollaboratorsSelectionForm.vue?vue&type=template&id=02023324&scoped=true&\", function () {\n api.rerender('02023324', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/Albums/CollaboratorsSelectionForm.vue\"\nexport default component.exports","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AlbumForm.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!./AlbumForm.vue?vue&type=script&lang=js&\"","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CollaboratorsSelectionForm.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!./CollaboratorsSelectionForm.vue?vue&type=script&lang=js&\"","export * from \"-!../../../node_modules/style-loader/dist/cjs.js!../../../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!./AlbumForm.vue?vue&type=style&index=0&id=1d54fb78&lang=scss&scoped=true&\"","export * from \"-!../../../node_modules/style-loader/dist/cjs.js!../../../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!./CollaboratorsSelectionForm.vue?vue&type=style&index=0&id=02023324&lang=scss&scoped=true&\"","export * from \"-!../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AlbumForm.vue?vue&type=template&id=1d54fb78&scoped=true&\"","export * from \"-!../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CollaboratorsSelectionForm.vue?vue&type=template&id=02023324&scoped=true&\"","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return !_vm.showCollaboratorView\n ? _c(\n \"form\",\n {\n staticClass: \"album-form\",\n on: {\n submit: function ($event) {\n $event.preventDefault()\n return _vm.submit.apply(null, arguments)\n },\n },\n },\n [\n _c(\n \"div\",\n { staticClass: \"form-inputs\" },\n [\n _c(\"NcTextField\", {\n ref: \"nameInput\",\n attrs: {\n value: _vm.albumName,\n type: \"text\",\n name: \"name\",\n required: true,\n autofocus: \"true\",\n placeholder: _vm.t(\"photos\", \"Name of the album\"),\n },\n on: {\n \"update:value\": function ($event) {\n _vm.albumName = $event\n },\n },\n }),\n _vm._v(\" \"),\n _c(\n \"label\",\n [\n _c(\"MapMarker\"),\n _c(\"NcTextField\", {\n attrs: {\n value: _vm.albumLocation,\n name: \"location\",\n type: \"text\",\n placeholder: _vm.t(\"photos\", \"Location of the album\"),\n },\n on: {\n \"update:value\": function ($event) {\n _vm.albumLocation = $event\n },\n },\n }),\n ],\n 1\n ),\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"form-buttons\" }, [\n _c(\n \"span\",\n { staticClass: \"left-buttons\" },\n [\n _vm.displayBackButton\n ? _c(\n \"NcButton\",\n {\n attrs: {\n \"aria-label\": _vm.t(\n \"photos\",\n \"Go back to the previous view.\"\n ),\n type: \"tertiary\",\n },\n on: { click: _vm.back },\n },\n [\n _vm._v(\n \"\\n\\t\\t\\t\\t\" +\n _vm._s(_vm.t(\"photos\", \"Back\")) +\n \"\\n\\t\\t\\t\"\n ),\n ]\n )\n : _vm._e(),\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"span\",\n { staticClass: \"right-buttons\" },\n [\n _vm.sharingEnabled && !_vm.editMode\n ? _c(\n \"NcButton\",\n {\n attrs: {\n \"aria-label\": _vm.t(\n \"photos\",\n \"Go to the add collaborators view.\"\n ),\n type: \"secondary\",\n disabled: _vm.albumName.trim() === \"\" || _vm.loading,\n },\n on: {\n click: function ($event) {\n _vm.showCollaboratorView = true\n },\n },\n scopedSlots: _vm._u(\n [\n {\n key: \"icon\",\n fn: function () {\n return [_c(\"AccountMultiplePlus\")]\n },\n proxy: true,\n },\n ],\n null,\n false,\n 1531126728\n ),\n },\n [\n _vm._v(\n \"\\n\\t\\t\\t\\t\" +\n _vm._s(_vm.t(\"photos\", \"Add collaborators\")) +\n \"\\n\\t\\t\\t\"\n ),\n ]\n )\n : _vm._e(),\n _vm._v(\" \"),\n _c(\n \"NcButton\",\n {\n attrs: {\n \"aria-label\": _vm.editMode\n ? _vm.t(\"photos\", \"Save.\")\n : _vm.t(\"photos\", \"Create the album.\"),\n type: \"primary\",\n disabled: _vm.albumName === \"\" || _vm.loading,\n },\n on: {\n click: function ($event) {\n return _vm.submit()\n },\n },\n scopedSlots: _vm._u(\n [\n {\n key: \"icon\",\n fn: function () {\n return [\n _vm.loading ? _c(\"NcLoadingIcon\") : _c(\"Send\"),\n ]\n },\n proxy: true,\n },\n ],\n null,\n false,\n 3914512768\n ),\n },\n [\n _vm._v(\n \"\\n\\t\\t\\t\\t\" +\n _vm._s(\n _vm.editMode\n ? _vm.t(\"photos\", \"Save\")\n : _vm.t(\"photos\", \"Create album\")\n ) +\n \"\\n\\t\\t\\t\"\n ),\n ]\n ),\n ],\n 1\n ),\n ]),\n ]\n )\n : _c(\"CollaboratorsSelectionForm\", {\n attrs: { \"album-name\": _vm.albumName, \"allow-public-link\": false },\n scopedSlots: _vm._u([\n {\n key: \"default\",\n fn: function (ref) {\n var collaborators = ref.collaborators\n return [\n _c(\n \"span\",\n { staticClass: \"left-buttons\" },\n [\n _c(\n \"NcButton\",\n {\n attrs: {\n \"aria-label\": _vm.t(\n \"photos\",\n \"Back to the new album form.\"\n ),\n type: \"tertiary\",\n },\n on: {\n click: function ($event) {\n _vm.showCollaboratorView = false\n },\n },\n },\n [\n _vm._v(\n \"\\n\\t\\t\\t\\t\" +\n _vm._s(_vm.t(\"photos\", \"Back\")) +\n \"\\n\\t\\t\\t\"\n ),\n ]\n ),\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"span\",\n { staticClass: \"right-buttons\" },\n [\n _c(\n \"NcButton\",\n {\n attrs: {\n \"aria-label\": _vm.editMode\n ? _vm.t(\"photos\", \"Save.\")\n : _vm.t(\"photos\", \"Create the album.\"),\n type: \"primary\",\n disabled: _vm.albumName.trim() === \"\" || _vm.loading,\n },\n on: {\n click: function ($event) {\n return _vm.submit(collaborators)\n },\n },\n scopedSlots: _vm._u(\n [\n {\n key: \"icon\",\n fn: function () {\n return [\n _vm.loading\n ? _c(\"NcLoadingIcon\")\n : _c(\"Send\"),\n ]\n },\n proxy: true,\n },\n ],\n null,\n true\n ),\n },\n [\n _vm._v(\n \"\\n\\t\\t\\t\\t\" +\n _vm._s(\n _vm.editMode\n ? _vm.t(\"photos\", \"Save\")\n : _vm.t(\"photos\", \"Create album\")\n ) +\n \"\\n\\t\\t\\t\"\n ),\n ]\n ),\n ],\n 1\n ),\n ]\n },\n },\n ]),\n })\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"div\", { staticClass: \"manage-collaborators\" }, [\n _c(\"h2\", { staticClass: \"manage-collaborators__title\" }, [\n _vm._v(\"\\n\\t\\t\" + _vm._s(_vm.t(\"photos\", \"Add collaborators\")) + \"\\n\\t\"),\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"manage-collaborators__subtitle\" }, [\n _vm._v(\n \"\\n\\t\\t\" +\n _vm._s(\n _vm.t(\"photos\", \"Add people or groups who can edit your album\")\n ) +\n \"\\n\\t\"\n ),\n ]),\n _vm._v(\" \"),\n _c(\n \"form\",\n {\n staticClass: \"manage-collaborators__form\",\n on: {\n submit: function ($event) {\n $event.preventDefault()\n },\n },\n },\n [\n _c(\n \"NcPopover\",\n { ref: \"popover\", attrs: { \"auto-size\": true, distance: 0 } },\n [\n _c(\n \"label\",\n {\n staticClass: \"manage-collaborators__form__input\",\n attrs: { slot: \"trigger\" },\n slot: \"trigger\",\n },\n [\n _c(\n \"NcTextField\",\n {\n attrs: {\n value: _vm.searchText,\n autocomplete: \"off\",\n type: \"search\",\n name: \"search\",\n \"aria-label\": _vm.t(\"photos\", \"Search for collaborators\"),\n \"aria-autocomplete\": \"list\",\n \"aria-controls\":\n \"manage-collaborators__form__selection-\" +\n _vm.randomId +\n \" manage-collaborators__form__list-\" +\n _vm.randomId,\n placeholder: _vm.t(\"photos\", \"Search people or groups\"),\n },\n on: {\n \"update:value\": function ($event) {\n _vm.searchText = $event\n },\n input: _vm.searchCollaborators,\n },\n },\n [_c(\"Magnify\", { attrs: { size: 16 } })],\n 1\n ),\n _vm._v(\" \"),\n _vm.loadingCollaborators ? _c(\"NcLoadingIcon\") : _vm._e(),\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"ul\",\n {\n staticClass: \"manage-collaborators__form__list\",\n attrs: {\n id: \"manage-collaborators__form__list-\" + _vm.randomId,\n },\n },\n _vm._l(_vm.searchResults, function (result) {\n return _c(\"li\", { key: result.key }, [\n _c(\n \"a\",\n [\n _c(\"NcListItemIcon\", {\n staticClass: \"manage-collaborators__form__list__result\",\n attrs: {\n id: _vm.availableCollaborators[result.key].id,\n title: _vm.availableCollaborators[result.key].id,\n search: _vm.searchText,\n \"display-name\":\n _vm.availableCollaborators[result.key].label,\n \"aria-label\": _vm.t(\n \"photos\",\n \"Add {collaboratorLabel} to the collaborators list\",\n {\n collaboratorLabel:\n _vm.availableCollaborators[result.key].label,\n }\n ),\n },\n on: {\n click: function ($event) {\n return _vm.selectEntity(result.key)\n },\n },\n }),\n ],\n 1\n ),\n ])\n }),\n 0\n ),\n ]\n ),\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"ul\",\n { staticClass: \"manage-collaborators__selection\" },\n _vm._l(_vm.selectedCollaboratorsKeys, function (collaboratorKey) {\n return _c(\n \"li\",\n {\n key: collaboratorKey,\n staticClass: \"manage-collaborators__selection__item\",\n },\n [\n _c(\n \"NcListItemIcon\",\n {\n attrs: {\n id: _vm.availableCollaborators[collaboratorKey].id,\n title: _vm.availableCollaborators[collaboratorKey].id,\n \"display-name\":\n _vm.availableCollaborators[collaboratorKey].label,\n \"aria-label\": _vm.t(\n \"photos\",\n \"Remove {collaboratorLabel} from the collaborators list\",\n {\n collaboratorLabel:\n _vm.availableCollaborators[collaboratorKey].label,\n }\n ),\n },\n },\n [\n _c(\n \"NcButton\",\n {\n attrs: {\n type: \"tertiary\",\n \"aria-label\": _vm.t(\n \"photos\",\n \"Remove {collaboratorLabel} from the collaborators list\",\n {\n collaboratorLabel:\n _vm.availableCollaborators[collaboratorKey].label,\n }\n ),\n },\n on: {\n click: function ($event) {\n return _vm.unselectEntity(collaboratorKey)\n },\n },\n },\n [\n _c(\"Close\", {\n attrs: { slot: \"icon\", size: 20 },\n slot: \"icon\",\n }),\n ],\n 1\n ),\n ],\n 1\n ),\n ],\n 1\n )\n }),\n 0\n ),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"actions\" }, [\n _vm.allowPublicLink\n ? _c(\n \"div\",\n { staticClass: \"actions__public-link\" },\n [\n _vm.publicLink\n ? [\n _c(\n \"NcButton\",\n {\n staticClass: \"manage-collaborators__public-link-button\",\n attrs: { type: \"tertiary-no-background\" },\n on: { click: _vm.copyPublicLink },\n scopedSlots: _vm._u(\n [\n {\n key: \"icon\",\n fn: function () {\n return [\n _vm.publicLinkCopied\n ? _c(\"Check\")\n : _c(\"ContentCopy\"),\n ]\n },\n proxy: true,\n },\n ],\n null,\n false,\n 845538853\n ),\n },\n [\n _vm.publicLinkCopied\n ? [\n _vm._v(\n \"\\n\\t\\t\\t\\t\\t\\t\" +\n _vm._s(\n _vm.t(\"photos\", \"Public link copied!\")\n ) +\n \"\\n\\t\\t\\t\\t\\t\"\n ),\n ]\n : [\n _vm._v(\n \"\\n\\t\\t\\t\\t\\t\\t\" +\n _vm._s(_vm.t(\"photos\", \"Copy public link\")) +\n \"\\n\\t\\t\\t\\t\\t\"\n ),\n ],\n ],\n 2\n ),\n _vm._v(\" \"),\n _c(\n \"NcButton\",\n { on: { click: _vm.deletePublicLink } },\n [_c(\"Close\", { attrs: { slot: \"icon\" }, slot: \"icon\" })],\n 1\n ),\n ]\n : _c(\n \"NcButton\",\n {\n staticClass: \"manage-collaborators__public-link-button\",\n attrs: { type: \"tertiary-no-background\" },\n on: { click: _vm.createPublicLinkForAlbum },\n },\n [\n _c(\"Earth\", { attrs: { slot: \"icon\" }, slot: \"icon\" }),\n _vm._v(\n \"\\n\\t\\t\\t\\t\" +\n _vm._s(_vm.t(\"photos\", \"Share via public link\")) +\n \"\\n\\t\\t\\t\"\n ),\n ],\n 1\n ),\n ],\n 2\n )\n : _vm._e(),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"actions__slot\" },\n [_vm._t(\"default\", null, { collaborators: _vm.selectedCollaborators })],\n 2\n ),\n ]),\n ])\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-src_mixins_FetchFilesMixin_js-src_components_FilesListViewer_vue.js b/js/photos-src_mixins_FetchFilesMixin_js-src_components_FilesListViewer_vue.js deleted file mode 100644 index d537635ee..000000000 --- a/js/photos-src_mixins_FetchFilesMixin_js-src_components_FilesListViewer_vue.js +++ /dev/null @@ -1,1495 +0,0 @@ -"use strict"; -(self["webpackChunkphotos"] = self["webpackChunkphotos"] || []).push([["src_mixins_FetchFilesMixin_js-src_components_FilesListViewer_vue"],{ - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FilesListViewer.vue?vue&type=script&lang=js&": -/*!*************************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FilesListViewer.vue?vue&type=script&lang=js& ***! - \*************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! vuex */ "./node_modules/vuex/dist/vuex.esm.js"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/vue */ "./node_modules/@nextcloud/vue/dist/ncvuecomponents.js"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _components_TiledLayout_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../components/TiledLayout.vue */ "./src/components/TiledLayout.vue"); -/* harmony import */ var _components_VirtualScrolling_vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../components/VirtualScrolling.vue */ "./src/components/VirtualScrolling.vue"); -/* harmony import */ var _components_Loader_vue__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../components/Loader.vue */ "./src/components/Loader.vue"); -/* harmony import */ var _assets_Illustrations_empty_svg__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../assets/Illustrations/empty.svg */ "./src/assets/Illustrations/empty.svg"); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - - - - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'FilesListViewer', - components: { - EmptyContent: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_0__.EmptyContent, - TiledLayout: _components_TiledLayout_vue__WEBPACK_IMPORTED_MODULE_1__["default"], - VirtualScrolling: _components_VirtualScrolling_vue__WEBPACK_IMPORTED_MODULE_2__["default"], - Loader: _components_Loader_vue__WEBPACK_IMPORTED_MODULE_3__["default"] - }, - props: { - // Array of file ids that should be rendered. - fileIds: { - type: Array, - default: undefined - }, - // An object mapping a list of section to a list of fileIds. - fileIdsBySection: { - type: Object, - default: undefined - }, - // The list of sorted sections. - sections: { - type: Array, - default: undefined - }, - // Whether we should display a loading indicator. - loading: { - type: Boolean, - required: true - }, - // Message to display when there is no files. - emptyMessage: { - type: String, - default: '' - }, - // The base height to forward to TileLayout. - baseHeight: { - type: Number, - default: 200 - }, - // The height to use for section headers. - sectionHeaderHeight: { - type: Number, - default: 75 - }, - // Instruct VirtualScrolling to scroll to the given section id. - scrollToSection: { - type: String, - default: '' - }, - // The containerElement props to forward to TileLayout. - containerElement: { - type: HTMLElement, - default: null - }, - // The useWindow props to forward to TileLayout. - useWindow: { - type: Boolean, - default: false - } - }, - - data() { - return { - EmptyBox: _assets_Illustrations_empty_svg__WEBPACK_IMPORTED_MODULE_4__ - }; - }, - - computed: { ...(0,vuex__WEBPACK_IMPORTED_MODULE_5__.mapGetters)(['files']), - - /** - * @return {object[]} The list of items to pass to TiledLayout. - */ - fileIdsToItems() { - if (this.fileIds === undefined) { - return []; - } - - return this.fileIds.map(this.mapFileToItem); - }, - - /** - * @return {object[]} The list of items separated by sections to pass to TiledLayout. - */ - sectionsToItems() { - if (this.sections === undefined) { - return []; - } - - return this.sections.flatMap(sectionId => { - return [{ - id: sectionId, - sectionHeader: true, - height: this.sectionHeaderHeight - }, ...this.fileIdsBySection[sectionId].map(this.mapFileToItem)]; - }); - }, - - /** - * @return {object[]} The list of items to pass to TiledLayout. - */ - items() { - if (this.fileIds !== undefined) { - return this.fileIdsToItems; - } - - if (this.sections !== undefined) { - return this.sectionsToItems; - } - - return []; - } - - }, - methods: { - // Ask the parent for more content. - needContent() { - this.$emit('need-content'); - }, - - mapFileToItem(fileId) { - const file = this.files[fileId]; - return { - id: file.fileid, - width: file.fileMetadataSizeParsed.width, - height: file.fileMetadataSizeParsed.height, - ratio: file.fileMetadataSizeParsed.width / file.fileMetadataSizeParsed.height - }; - } - - } -}); - -/***/ }), - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/TiledLayout.vue?vue&type=script&lang=js&": -/*!*********************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/TiledLayout.vue?vue&type=script&lang=js& ***! - \*********************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _services_logger_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../services/logger.js */ "./src/services/logger.js"); -/* harmony import */ var _services_TiledLayout_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../services/TiledLayout.js */ "./src/services/TiledLayout.js"); -/* harmony import */ var _TiledRows_vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./TiledRows.vue */ "./src/components/TiledRows.vue"); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'TiledLayout', - components: { - TiledRows: _TiledRows_vue__WEBPACK_IMPORTED_MODULE_2__["default"] - }, - props: { - items: { - type: Array, - required: true - }, - baseHeight: { - type: Number, - default: 200 - } - }, - - data() { - return { - containerWidth: 0, - - /** @type {ResizeObserver} */ - resizeObserver: null - }; - }, - - computed: { - /** @return {import('../services/TiledLayout.js').TiledRow[]} */ - rows() { - _services_logger_js__WEBPACK_IMPORTED_MODULE_0__["default"].debug('[TiledLayout] Computing rows', this.items); - return (0,_services_TiledLayout_js__WEBPACK_IMPORTED_MODULE_1__.splitItemsInRows)(this.items, this.containerWidth, this.baseHeight); - } - - }, - - mounted() { - this.resizeObserver = new ResizeObserver(entries => { - for (const entry of entries) { - const cr = entry.contentRect; - - if (entry.target.classList.contains('tiled-container')) { - this.containerWidth = cr.width; - } - } - }); - this.resizeObserver.observe(this.$refs.tiledLayoutContainer); - }, - - beforeDestroy() { - this.resizeObserver.disconnect(); - } - -}); - -/***/ }), - -/***/ "./src/mixins/FetchFilesMixin.js": -/*!***************************************!*\ - !*** ./src/mixins/FetchFilesMixin.js ***! - \***************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _services_logger_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../services/logger.js */ "./src/services/logger.js"); -/* harmony import */ var _services_PhotoSearch_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../services/PhotoSearch.js */ "./src/services/PhotoSearch.js"); -/* harmony import */ var _utils_CancelableRequest_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils/CancelableRequest.js */ "./src/utils/CancelableRequest.js"); -/* harmony import */ var _utils_semaphoreWithPriority_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../utils/semaphoreWithPriority.js */ "./src/utils/semaphoreWithPriority.js"); -/** - * @copyright Copyright (c) 2022 Louis Chemineau - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ - - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'FetchFilesMixin', - - data() { - return { - errorFetchingFiles: null, - loadingFiles: false, - doneFetchingFiles: false, - cancelFilesRequest: () => {}, - semaphore: new _utils_semaphoreWithPriority_js__WEBPACK_IMPORTED_MODULE_3__["default"](30), - fetchSemaphore: new _utils_semaphoreWithPriority_js__WEBPACK_IMPORTED_MODULE_3__["default"](1), - semaphoreSymbol: null, - fetchedFileIds: [] - }; - }, - - beforeDestroy() { - if (this.cancelFilesRequest) { - this.cancelFilesRequest('Changed view'); - } - }, - - beforeRouteLeave(from, to, next) { - if (this.cancelFilesRequest) { - this.cancelFilesRequest('Changed view'); - } - - return next(); - }, - - watch: { - $route() { - this.resetFetchFilesState(); - } - - }, - methods: { - /** - * @param {string} path - Path to pass to getPhotos. - * @param {object} options - Options to pass to getPhotos. - * @param {string[]} [blacklist=[]] - Array of ids to filter out. - * @return {Promise} - The next batch of data depending on global offset. - */ - async fetchFiles() { - let path = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : ''; - let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; - let blacklist = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : []; - - if (this.doneFetchingFiles || this.loadingFiles) { - return []; - } - - const semaphoreSymbol = await this.semaphore.acquire(() => 0, 'fetchFiles'); - const fetchSemaphoreSymbol = await this.fetchSemaphore.acquire(); - - try { - this.errorFetchingFiles = null; - this.loadingFiles = true; - this.semaphoreSymbol = semaphoreSymbol; - const { - request, - cancel - } = (0,_utils_CancelableRequest_js__WEBPACK_IMPORTED_MODULE_2__["default"])(_services_PhotoSearch_js__WEBPACK_IMPORTED_MODULE_1__["default"]); - this.cancelFilesRequest = cancel; - const numberOfImagesPerBatch = 1000; // Load next batch of images - - const fetchedFiles = await request(path, { - firstResult: this.fetchedFileIds.length, - nbResults: numberOfImagesPerBatch, - ...options - }); // If we get less files than requested that means we got to the end - - if (fetchedFiles.length !== numberOfImagesPerBatch) { - this.doneFetchingFiles = true; - } - - const fileIds = fetchedFiles.map(file => file.fileid).filter(fileId => !this.fetchedFileIds.includes(fileId)); // Filter to prevent duplicate fileIds. - - this.fetchedFileIds.push(...fileIds.map(fileId => fileId.toString()).filter(fileId => !blacklist.includes(fileId))); - this.$store.dispatch('appendFiles', fetchedFiles); - _services_logger_js__WEBPACK_IMPORTED_MODULE_0__["default"].debug(`[FetchFilesMixin] Fetched ${fileIds.length} new files: `, fileIds); - return fileIds; - } catch (error) { - if (error.response?.status === 404) { - this.errorFetchingFiles = 404; - } else if (error.code === 'ERR_CANCELED') { - return []; - } else { - this.errorFetchingFiles = error; - } // cancelled request, moving on... - - - _services_logger_js__WEBPACK_IMPORTED_MODULE_0__["default"].error('Error fetching files', error); - } finally { - this.loadingFiles = false; - - this.cancelFilesRequest = () => {}; - - this.semaphore.release(semaphoreSymbol); - this.fetchSemaphore.release(fetchSemaphoreSymbol); - } - - return []; - }, - - resetFetchFilesState() { - this.doneFetchingFiles = false; - this.errorFetchingFiles = null; - this.loadingFiles = false; - this.fetchedFileIds = []; - - this.cancelFilesRequest = () => {}; - } - - } -}); - -/***/ }), - -/***/ "./src/services/PhotoSearch.js": -/*!*************************************!*\ - !*** ./src/services/PhotoSearch.js ***! - \*************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* export default binding */ __WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _utils_fileUtils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils/fileUtils.js */ "./src/utils/fileUtils.js"); -/* harmony import */ var _nextcloud_auth__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/auth */ "./node_modules/@nextcloud/auth/dist/index.js"); -/* harmony import */ var _AllowedMimes_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./AllowedMimes.js */ "./src/services/AllowedMimes.js"); -/* harmony import */ var _DavClient_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./DavClient.js */ "./src/services/DavClient.js"); -/* harmony import */ var _DavRequest_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./DavRequest.js */ "./src/services/DavRequest.js"); -/* harmony import */ var _nextcloud_moment__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @nextcloud/moment */ "./node_modules/@nextcloud/moment/dist/index.js"); -/* harmony import */ var _nextcloud_moment__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_moment__WEBPACK_IMPORTED_MODULE_5__); -/** - * @copyright Copyright (c) 2019 John Molakvoæ - * - * @author John Molakvoæ - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ - - - - - - -/** - * List files from a folder and filter out unwanted mimes - * - * @param {object} path the lookup path - * @param {object} [options] used for the cancellable requests - * @param {number} [options.firstResult=0] Index of the first result that we want (starts at 0) - * @param {number} [options.nbResults=200] The number of file to fetch - * @param {string[]} [options.mimesType=allMimes] Mime type of the files - * @param {boolean} [options.full=false] get full data of the files - * @param {boolean} [options.onThisDay=false] get only items from this day of year - * @param {boolean} [options.onlyFavorites=false] get only favorite items - * @return {Promise} the file list - */ - -/* harmony default export */ async function __WEBPACK_DEFAULT_EXPORT__() { - let path = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : ''; - let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; - // default function options - options = { - firstResult: 0, - nbResults: 200, - mimesType: _AllowedMimes_js__WEBPACK_IMPORTED_MODULE_2__.allMimes, - onThisDay: false, - onlyFavorites: false, - ...options - }; - const prefixPath = `/files/${(0,_nextcloud_auth__WEBPACK_IMPORTED_MODULE_1__.getCurrentUser)().uid}`; // generating the search or condition - // based on the allowed mimetypes - - const orMime = options.mimesType.reduce((str, mime) => `${str} - - - - - ${mime} - - `, ''); - const eqFavorites = options.onlyFavorites ? ` - - - - 1 - ` : ''; - const onThisDay = options.onThisDay ? `${Array(20).fill(1).map((_, years) => { - const start = _nextcloud_moment__WEBPACK_IMPORTED_MODULE_5___default()(Date.now()).startOf('day').subtract(3, 'd').subtract(years + 1, 'y'); - const end = _nextcloud_moment__WEBPACK_IMPORTED_MODULE_5___default()(Date.now()).endOf('day').add(3, 'd').subtract(years + 1, 'y'); - return ` - - - - - ${start.format((_nextcloud_moment__WEBPACK_IMPORTED_MODULE_5___default().defaultFormatUtc))} - - - - - - ${end.format((_nextcloud_moment__WEBPACK_IMPORTED_MODULE_5___default().defaultFormatUtc))} - - `; - }).join('\n')}` : ''; - options = Object.assign({ - method: 'SEARCH', - headers: { - 'content-Type': 'text/xml' - }, - data: ` - - - - - ${_DavRequest_js__WEBPACK_IMPORTED_MODULE_4__.props} - - - - - ${prefixPath}/${path} - infinity - - - - - - ${orMime} - - ${eqFavorites} - ${onThisDay} - - - - - - - - - - ${options.nbResults} - ${options.firstResult} - - - `, - deep: true, - details: true - }, options); - const response = await _DavClient_js__WEBPACK_IMPORTED_MODULE_3__["default"].getDirectoryContents('', options); - return response.data.map(data => (0,_utils_fileUtils_js__WEBPACK_IMPORTED_MODULE_0__.genFileInfo)(data)) // remove prefix path from full file path - .map(data => ({ ...data, - filename: data.filename.replace(prefixPath, '') - })); -} - -/***/ }), - -/***/ "./src/services/TiledLayout.js": -/*!*************************************!*\ - !*** ./src/services/TiledLayout.js ***! - \*************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "splitItemsInRows": () => (/* binding */ splitItemsInRows) -/* harmony export */ }); -/** - * @copyright Copyright (c) 2022 Louis Chemineau - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ - -/** - * @typedef {object} TiledItem - * @property {string} id - * @property {number} [width] Real width of the item. - * @property {number} height Real height of the item. - * @property {number} [ratio] The aspect ratio of the item. - * @property {boolean} [sectionHeader] Whether this row is a section header. - */ - -/** - * @typedef {object} TiledRow - * @property {TiledItem[]} items - - * @property {number} height - - * @property {string} key - - */ - -/** - * Split items in rows of equal width. - * The last row will not be forced to match containerWidth. - * - * @param {TiledItem[]} items The list of item to split in row of equal width. - * @param {number} containerWidth The width of a row. - * @param {number} baseHeight The base height of the rows. - * @return {TiledRow[]} - */ -function splitItemsInRows(items, containerWidth) { - let baseHeight = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 200; - - if (containerWidth === 0) { - return []; - } - - const rows = []; - let rowNumber = 0; - let currentItem = 0; - - while (currentItem < items.length) { - /** @type { TiledItem[] } */ - const rowItems = []; // Fill the row with new items as long as the width is less than containerWidth. - - do { - // @ts-ignore - We know that items.shift() is not undefined as we always check that items.length > 0. - rowItems.push(items[currentItem++]); - } while (currentItem < items.length && !items[currentItem - 1].sectionHeader && !items[currentItem].sectionHeader && computeRowWidth([...rowItems, items[currentItem]], baseHeight) <= containerWidth); - - rows[rowNumber] = { - items: rowItems, - height: computeRowHeight(rowItems, containerWidth, items.length === currentItem || items[currentItem].sectionHeader === true, baseHeight), - // Key to help vue to keep track of the row in VirtualScrolling. - key: rowItems.map(item => item.id).join('-') - }; - rowNumber += 1; - } - - return rows; -} -/** - * - * @param {TiledItem[]} items The list of items in the row. - * @param {number} baseHeight The base height of the rows. - * @return {number} The width of the row - */ - -function computeRowWidth(items, baseHeight) { - return items.map(item => baseHeight * item.ratio).reduce((sum, itemWidth) => sum + itemWidth); -} -/** - * Compute the row height based on its items and on the container's width. - * - * Math time ! - * With Rn the aspect ratio of item n - * Wn the width of item n - * Hn the height of item n - * Wc the width of the container - * Hr the height of the row - * For n items we want: Wc = W1 + W2 + ... + Wn - * We know Rn = Wn / Hn - * So Wn = Rn * Hn - * So Wc = (R1 * H1) + (R2 * H2) + ... + (Rn * Hn) - * But we also want Hr === H1 === H2 === ... === Hn - * So Wc = (R1 * Hr) + (R2 * Hr) + ... + (Rn * Hr) - * So Wc = Hr * (R1 + R2 + ... + Rn) - * So Hr = Wc / (R1 + R2 + ... + Rn) - * - * @param {TiledItem[]} items The list of items in the row. - * @param {number} containerWidth The width of the row. - * @param {boolean} isLastRow Whether we are computing the height for the last row. - * @param {number} baseHeight The base height of the rows. - * @return {number} The height of the row - */ - - -function computeRowHeight(items, containerWidth, isLastRow, baseHeight) { - // Exception 1: there is only one item and its width it is a sectionHeader, meaning take the full width. - if (items.length === 1 && items[0].sectionHeader) { - return items[0].height; - } - - const sumOfItemsRatio = items.map(item => item.ratio).reduce((sum, itemRatio) => sum + itemRatio); - let rowHeight = containerWidth / sumOfItemsRatio; // Exception 2: there is only one item which is larger than containerWidth. - // Limit its height so that itemWidth === containerWidth - - if (items.length === 1 && items[0].width > containerWidth) { - rowHeight = containerWidth / items[0].ratio; - } // Exception 3: we reached the last row. - // Force the items width to match containerWidth, and limit their heigh to baseHeight + 20. - - - if (isLastRow) { - rowHeight = Math.min(baseHeight + 20, rowHeight); - } - - return rowHeight; -} - -/***/ }), - -/***/ "./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!./src/components/FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true&": -/*!*************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/components/FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true& ***! - \*************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".files-list-viewer[data-v-3ebf26b2] {\n height: 100%;\n position: relative;\n}\n.files-list-viewer[data-v-3ebf26b2] .empty-content__icon {\n width: 200px;\n height: 200px;\n}\n.files-list-viewer[data-v-3ebf26b2] .empty-content__icon .empty-content-illustration svg {\n width: 200px;\n height: 200px;\n}\n.files-list-viewer .tiled-row[data-v-3ebf26b2] {\n display: flex;\n}\n.files-list-viewer__section-header[data-v-3ebf26b2] {\n position: sticky;\n top: 0;\n z-index: 3;\n background: var(--color-main-background);\n}\n.files-list-viewer__loader[data-v-3ebf26b2] {\n margin: 50px 0;\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./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!./src/components/TiledLayout.vue?vue&type=style&index=0&id=aaf5cf80&scoped=true&lang=scss&": -/*!*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/components/TiledLayout.vue?vue&type=style&index=0&id=aaf5cf80&scoped=true&lang=scss& ***! - \*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".tiled-container[data-v-aaf5cf80] {\n height: 100%;\n}\n.tiled-container .tiled-row[data-v-aaf5cf80] {\n display: flex;\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./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!./src/components/TiledRows.vue?vue&type=style&index=0&id=332876ef&lang=scss&scoped=true&": -/*!*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/components/TiledRows.vue?vue&type=style&index=0&id=332876ef&lang=scss&scoped=true& ***! - \*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".tiled-row[data-v-332876ef] {\n display: flex;\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true&": -/*!*****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/components/FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true& ***! - \*****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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_FilesListViewer_vue_vue_type_style_index_0_id_3ebf26b2_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../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!./FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true& */ "./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!./src/components/FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_FilesListViewer_vue_vue_type_style_index_0_id_3ebf26b2_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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_FilesListViewer_vue_vue_type_style_index_0_id_3ebf26b2_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_FilesListViewer_vue_vue_type_style_index_0_id_3ebf26b2_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_FilesListViewer_vue_vue_type_style_index_0_id_3ebf26b2_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/TiledLayout.vue?vue&type=style&index=0&id=aaf5cf80&scoped=true&lang=scss&": -/*!*************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/components/TiledLayout.vue?vue&type=style&index=0&id=aaf5cf80&scoped=true&lang=scss& ***! - \*************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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_TiledLayout_vue_vue_type_style_index_0_id_aaf5cf80_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../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!./TiledLayout.vue?vue&type=style&index=0&id=aaf5cf80&scoped=true&lang=scss& */ "./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!./src/components/TiledLayout.vue?vue&type=style&index=0&id=aaf5cf80&scoped=true&lang=scss&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_TiledLayout_vue_vue_type_style_index_0_id_aaf5cf80_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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_TiledLayout_vue_vue_type_style_index_0_id_aaf5cf80_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_TiledLayout_vue_vue_type_style_index_0_id_aaf5cf80_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_TiledLayout_vue_vue_type_style_index_0_id_aaf5cf80_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/TiledRows.vue?vue&type=style&index=0&id=332876ef&lang=scss&scoped=true&": -/*!***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/components/TiledRows.vue?vue&type=style&index=0&id=332876ef&lang=scss&scoped=true& ***! - \***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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_TiledRows_vue_vue_type_style_index_0_id_332876ef_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../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!./TiledRows.vue?vue&type=style&index=0&id=332876ef&lang=scss&scoped=true& */ "./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!./src/components/TiledRows.vue?vue&type=style&index=0&id=332876ef&lang=scss&scoped=true&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_TiledRows_vue_vue_type_style_index_0_id_332876ef_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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_TiledRows_vue_vue_type_style_index_0_id_332876ef_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_TiledRows_vue_vue_type_style_index_0_id_332876ef_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_TiledRows_vue_vue_type_style_index_0_id_332876ef_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./src/components/FilesListViewer.vue": -/*!********************************************!*\ - !*** ./src/components/FilesListViewer.vue ***! - \********************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _FilesListViewer_vue_vue_type_template_id_3ebf26b2_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./FilesListViewer.vue?vue&type=template&id=3ebf26b2&scoped=true& */ "./src/components/FilesListViewer.vue?vue&type=template&id=3ebf26b2&scoped=true&"); -/* harmony import */ var _FilesListViewer_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./FilesListViewer.vue?vue&type=script&lang=js& */ "./src/components/FilesListViewer.vue?vue&type=script&lang=js&"); -/* harmony import */ var _FilesListViewer_vue_vue_type_style_index_0_id_3ebf26b2_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true& */ "./src/components/FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( - _FilesListViewer_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _FilesListViewer_vue_vue_type_template_id_3ebf26b2_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render, - _FilesListViewer_vue_vue_type_template_id_3ebf26b2_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - "3ebf26b2", - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/FilesListViewer.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/TiledLayout.vue": -/*!****************************************!*\ - !*** ./src/components/TiledLayout.vue ***! - \****************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _TiledLayout_vue_vue_type_template_id_aaf5cf80_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./TiledLayout.vue?vue&type=template&id=aaf5cf80&scoped=true& */ "./src/components/TiledLayout.vue?vue&type=template&id=aaf5cf80&scoped=true&"); -/* harmony import */ var _TiledLayout_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./TiledLayout.vue?vue&type=script&lang=js& */ "./src/components/TiledLayout.vue?vue&type=script&lang=js&"); -/* harmony import */ var _TiledLayout_vue_vue_type_style_index_0_id_aaf5cf80_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./TiledLayout.vue?vue&type=style&index=0&id=aaf5cf80&scoped=true&lang=scss& */ "./src/components/TiledLayout.vue?vue&type=style&index=0&id=aaf5cf80&scoped=true&lang=scss&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( - _TiledLayout_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _TiledLayout_vue_vue_type_template_id_aaf5cf80_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render, - _TiledLayout_vue_vue_type_template_id_aaf5cf80_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - "aaf5cf80", - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/TiledLayout.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/TiledRows.vue": -/*!**************************************!*\ - !*** ./src/components/TiledRows.vue ***! - \**************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _TiledRows_vue_vue_type_template_id_332876ef_scoped_true_functional_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./TiledRows.vue?vue&type=template&id=332876ef&scoped=true&functional=true& */ "./src/components/TiledRows.vue?vue&type=template&id=332876ef&scoped=true&functional=true&"); -/* harmony import */ var _TiledRows_vue_vue_type_style_index_0_id_332876ef_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./TiledRows.vue?vue&type=style&index=0&id=332876ef&lang=scss&scoped=true& */ "./src/components/TiledRows.vue?vue&type=style&index=0&id=332876ef&lang=scss&scoped=true&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - -var script = {} -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])( - script, - _TiledRows_vue_vue_type_template_id_332876ef_scoped_true_functional_true___WEBPACK_IMPORTED_MODULE_0__.render, - _TiledRows_vue_vue_type_template_id_332876ef_scoped_true_functional_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - true, - null, - "332876ef", - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/TiledRows.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/FilesListViewer.vue?vue&type=script&lang=js&": -/*!*********************************************************************!*\ - !*** ./src/components/FilesListViewer.vue?vue&type=script&lang=js& ***! - \*********************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListViewer_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListViewer.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FilesListViewer.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListViewer_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/components/TiledLayout.vue?vue&type=script&lang=js&": -/*!*****************************************************************!*\ - !*** ./src/components/TiledLayout.vue?vue&type=script&lang=js& ***! - \*****************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_TiledLayout_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TiledLayout.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/TiledLayout.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_TiledLayout_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/components/FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true&": -/*!******************************************************************************************************!*\ - !*** ./src/components/FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true& ***! - \******************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_FilesListViewer_vue_vue_type_style_index_0_id_3ebf26b2_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/style-loader/dist/cjs.js!../../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!./FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true&"); - - -/***/ }), - -/***/ "./src/components/TiledLayout.vue?vue&type=style&index=0&id=aaf5cf80&scoped=true&lang=scss&": -/*!**************************************************************************************************!*\ - !*** ./src/components/TiledLayout.vue?vue&type=style&index=0&id=aaf5cf80&scoped=true&lang=scss& ***! - \**************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_TiledLayout_vue_vue_type_style_index_0_id_aaf5cf80_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/style-loader/dist/cjs.js!../../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!./TiledLayout.vue?vue&type=style&index=0&id=aaf5cf80&scoped=true&lang=scss& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/TiledLayout.vue?vue&type=style&index=0&id=aaf5cf80&scoped=true&lang=scss&"); - - -/***/ }), - -/***/ "./src/components/TiledRows.vue?vue&type=style&index=0&id=332876ef&lang=scss&scoped=true&": -/*!************************************************************************************************!*\ - !*** ./src/components/TiledRows.vue?vue&type=style&index=0&id=332876ef&lang=scss&scoped=true& ***! - \************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_TiledRows_vue_vue_type_style_index_0_id_332876ef_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/style-loader/dist/cjs.js!../../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!./TiledRows.vue?vue&type=style&index=0&id=332876ef&lang=scss&scoped=true& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/TiledRows.vue?vue&type=style&index=0&id=332876ef&lang=scss&scoped=true&"); - - -/***/ }), - -/***/ "./src/components/FilesListViewer.vue?vue&type=template&id=3ebf26b2&scoped=true&": -/*!***************************************************************************************!*\ - !*** ./src/components/FilesListViewer.vue?vue&type=template&id=3ebf26b2&scoped=true& ***! - \***************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListViewer_vue_vue_type_template_id_3ebf26b2_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListViewer_vue_vue_type_template_id_3ebf26b2_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListViewer_vue_vue_type_template_id_3ebf26b2_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListViewer.vue?vue&type=template&id=3ebf26b2&scoped=true& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FilesListViewer.vue?vue&type=template&id=3ebf26b2&scoped=true&"); - - -/***/ }), - -/***/ "./src/components/TiledLayout.vue?vue&type=template&id=aaf5cf80&scoped=true&": -/*!***********************************************************************************!*\ - !*** ./src/components/TiledLayout.vue?vue&type=template&id=aaf5cf80&scoped=true& ***! - \***********************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_TiledLayout_vue_vue_type_template_id_aaf5cf80_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_TiledLayout_vue_vue_type_template_id_aaf5cf80_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_TiledLayout_vue_vue_type_template_id_aaf5cf80_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TiledLayout.vue?vue&type=template&id=aaf5cf80&scoped=true& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/TiledLayout.vue?vue&type=template&id=aaf5cf80&scoped=true&"); - - -/***/ }), - -/***/ "./src/components/TiledRows.vue?vue&type=template&id=332876ef&scoped=true&functional=true&": -/*!*************************************************************************************************!*\ - !*** ./src/components/TiledRows.vue?vue&type=template&id=332876ef&scoped=true&functional=true& ***! - \*************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_TiledRows_vue_vue_type_template_id_332876ef_scoped_true_functional_true___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_TiledRows_vue_vue_type_template_id_332876ef_scoped_true_functional_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_TiledRows_vue_vue_type_template_id_332876ef_scoped_true_functional_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TiledRows.vue?vue&type=template&id=332876ef&scoped=true&functional=true& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/TiledRows.vue?vue&type=template&id=332876ef&scoped=true&functional=true&"); - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FilesListViewer.vue?vue&type=template&id=3ebf26b2&scoped=true&": -/*!******************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FilesListViewer.vue?vue&type=template&id=3ebf26b2&scoped=true& ***! - \******************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c( - "div", - { staticClass: "files-list-viewer" }, - [ - _vm.emptyMessage !== "" && _vm.items.length === 0 && !_vm.loading - ? _c( - "EmptyContent", - { - key: "emptycontent", - scopedSlots: _vm._u( - [ - { - key: "icon", - fn: function () { - return [ - _c("span", { - staticClass: "empty-content-illustration", - domProps: { innerHTML: _vm._s(_vm.EmptyBox) }, - }), - ] - }, - proxy: true, - }, - ], - null, - false, - 3410044941 - ), - }, - [_vm._v("\n\t\t" + _vm._s(_vm.emptyMessage) + "\n\t")] - ) - : _vm._e(), - _vm._v(" "), - _c("TiledLayout", { - attrs: { "base-height": _vm.baseHeight, items: _vm.items }, - scopedSlots: _vm._u([ - { - key: "default", - fn: function (ref) { - var rows = ref.rows - return _c("VirtualScrolling", { - attrs: { - "use-window": _vm.useWindow, - rows: rows, - "scroll-to-key": _vm.scrollToSection, - }, - on: { "need-content": _vm.needContent }, - scopedSlots: _vm._u( - [ - { - key: "default", - fn: function (ref) { - var renderedRows = ref.renderedRows - return _c( - "ul", - {}, - _vm._l(renderedRows, function (row) { - return _c( - "div", - { - key: row.key, - staticClass: "tiled-row", - class: { - "files-list-viewer__section-header": - row.items[0].sectionHeader, - }, - style: { height: row.height + "px" }, - }, - _vm._l(row.items, function (item) { - return _c( - "li", - { - key: item.id, - style: { - width: item.ratio - ? row.height * item.ratio + "px" - : "100%", - height: row.height + "px", - }, - }, - [ - _vm._t("default", null, { - file: item, - visibility: row.visibility, - }), - ], - 2 - ) - }), - 0 - ) - }), - 0 - ) - }, - }, - _vm.loading - ? { - key: "loader", - fn: function () { - return [ - _c("Loader", { - staticClass: "files-list-viewer__loader", - }), - ] - }, - proxy: true, - } - : null, - ], - null, - true - ), - }) - }, - }, - ]), - }), - ], - 1 - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/TiledLayout.vue?vue&type=template&id=aaf5cf80&scoped=true&": -/*!**************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/TiledLayout.vue?vue&type=template&id=aaf5cf80&scoped=true& ***! - \**************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c( - "div", - { ref: "tiledLayoutContainer", staticClass: "tiled-container" }, - [ - _vm._t( - "default", - function () { - return [_c("TiledRows", { attrs: { rows: _vm.rows } })] - }, - { rows: _vm.rows } - ), - ], - 2 - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/TiledRows.vue?vue&type=template&id=332876ef&scoped=true&functional=true&": -/*!****************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/TiledRows.vue?vue&type=template&id=332876ef&scoped=true&functional=true& ***! - \****************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function (_h, _vm) { - var _c = _vm._c - return _c( - "ul", - _vm._l(_vm.props.rows, function (row) { - return _c( - "div", - { - key: row.key, - staticClass: "tiled-row", - style: { height: row.height + "px" }, - }, - _vm._l(row.items, function (item) { - return _c( - "li", - { - key: item.id, - style: { - width: item.ratio ? row.height * item.ratio + "px" : "100%", - height: row.height + "px", - }, - }, - [_vm._t("default", null, { row: row, item: item })], - 2 - ) - }), - 0 - ) - }), - 0 - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }) - -}]); -//# sourceMappingURL=photos-src_mixins_FetchFilesMixin_js-src_components_FilesListViewer_vue.js.map?v=aa5758430faaa17a274b \ No newline at end of file diff --git a/js/photos-src_mixins_FetchFilesMixin_js-src_components_FilesListViewer_vue.js.map b/js/photos-src_mixins_FetchFilesMixin_js-src_components_FilesListViewer_vue.js.map deleted file mode 100644 index 27279d62c..000000000 --- a/js/photos-src_mixins_FetchFilesMixin_js-src_components_FilesListViewer_vue.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-src_mixins_FetchFilesMixin_js-src_components_FilesListViewer_vue.js?v=aa5758430faaa17a274b","mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;AClMA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;ACvFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;AC5IA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;AC5IA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;ACvIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;;;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;ACtCA;;;;;;;;;;;;;;;ACAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;AChIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;ACrBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sources":["webpack:///photos/src/components/FilesListViewer.vue?vue&type=script&lang=js&","webpack:///photos/src/components/TiledLayout.vue?vue&type=script&lang=js&","webpack:///photos/src/mixins/FetchFilesMixin.js","webpack:///photos/src/services/PhotoSearch.js","webpack:///photos/src/services/TiledLayout.js","webpack:///photos/src/components/FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true&","webpack:///photos/src/components/TiledLayout.vue?vue&type=style&index=0&id=aaf5cf80&scoped=true&lang=scss&","webpack:///photos/src/components/TiledRows.vue?vue&type=style&index=0&id=332876ef&lang=scss&scoped=true&","webpack://photos/./src/components/FilesListViewer.vue?9de2","webpack://photos/./src/components/TiledLayout.vue?f1f1","webpack://photos/./src/components/TiledRows.vue?bc7e","webpack:///photos/src/components/FilesListViewer.vue","webpack:///photos/src/components/TiledLayout.vue","webpack:///photos/src/components/TiledRows.vue","webpack://photos/./src/components/FilesListViewer.vue?6af5","webpack://photos/./src/components/TiledLayout.vue?ba00","webpack:///photos/src/components/FilesListViewer.vue?vue&type=template&id=3ebf26b2&scoped=true&","webpack:///photos/src/components/TiledLayout.vue?vue&type=template&id=aaf5cf80&scoped=true&","webpack:///photos/src/components/TiledRows.vue?vue&type=template&id=332876ef&scoped=true&functional=true&"],"sourcesContent":["//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport { mapGetters } from 'vuex';\nimport { EmptyContent } from '@nextcloud/vue';\nimport TiledLayout from '../components/TiledLayout.vue';\nimport VirtualScrolling from '../components/VirtualScrolling.vue';\nimport Loader from '../components/Loader.vue';\nimport EmptyBox from '../assets/Illustrations/empty.svg';\nexport default {\n name: 'FilesListViewer',\n components: {\n EmptyContent,\n TiledLayout,\n VirtualScrolling,\n Loader\n },\n props: {\n // Array of file ids that should be rendered.\n fileIds: {\n type: Array,\n default: undefined\n },\n // An object mapping a list of section to a list of fileIds.\n fileIdsBySection: {\n type: Object,\n default: undefined\n },\n // The list of sorted sections.\n sections: {\n type: Array,\n default: undefined\n },\n // Whether we should display a loading indicator.\n loading: {\n type: Boolean,\n required: true\n },\n // Message to display when there is no files.\n emptyMessage: {\n type: String,\n default: ''\n },\n // The base height to forward to TileLayout.\n baseHeight: {\n type: Number,\n default: 200\n },\n // The height to use for section headers.\n sectionHeaderHeight: {\n type: Number,\n default: 75\n },\n // Instruct VirtualScrolling to scroll to the given section id.\n scrollToSection: {\n type: String,\n default: ''\n },\n // The containerElement props to forward to TileLayout.\n containerElement: {\n type: HTMLElement,\n default: null\n },\n // The useWindow props to forward to TileLayout.\n useWindow: {\n type: Boolean,\n default: false\n }\n },\n\n data() {\n return {\n EmptyBox\n };\n },\n\n computed: { ...mapGetters(['files']),\n\n /**\n * @return {object[]} The list of items to pass to TiledLayout.\n */\n fileIdsToItems() {\n if (this.fileIds === undefined) {\n return [];\n }\n\n return this.fileIds.map(this.mapFileToItem);\n },\n\n /**\n * @return {object[]} The list of items separated by sections to pass to TiledLayout.\n */\n sectionsToItems() {\n if (this.sections === undefined) {\n return [];\n }\n\n return this.sections.flatMap(sectionId => {\n return [{\n id: sectionId,\n sectionHeader: true,\n height: this.sectionHeaderHeight\n }, ...this.fileIdsBySection[sectionId].map(this.mapFileToItem)];\n });\n },\n\n /**\n * @return {object[]} The list of items to pass to TiledLayout.\n */\n items() {\n if (this.fileIds !== undefined) {\n return this.fileIdsToItems;\n }\n\n if (this.sections !== undefined) {\n return this.sectionsToItems;\n }\n\n return [];\n }\n\n },\n methods: {\n // Ask the parent for more content.\n needContent() {\n this.$emit('need-content');\n },\n\n mapFileToItem(fileId) {\n const file = this.files[fileId];\n return {\n id: file.fileid,\n width: file.fileMetadataSizeParsed.width,\n height: file.fileMetadataSizeParsed.height,\n ratio: file.fileMetadataSizeParsed.width / file.fileMetadataSizeParsed.height\n };\n }\n\n }\n};","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport logger from '../services/logger.js';\nimport { splitItemsInRows } from '../services/TiledLayout.js';\nimport TiledRows from './TiledRows.vue';\nexport default {\n name: 'TiledLayout',\n components: {\n TiledRows\n },\n props: {\n items: {\n type: Array,\n required: true\n },\n baseHeight: {\n type: Number,\n default: 200\n }\n },\n\n data() {\n return {\n containerWidth: 0,\n\n /** @type {ResizeObserver} */\n resizeObserver: null\n };\n },\n\n computed: {\n /** @return {import('../services/TiledLayout.js').TiledRow[]} */\n rows() {\n logger.debug('[TiledLayout] Computing rows', this.items);\n return splitItemsInRows(this.items, this.containerWidth, this.baseHeight);\n }\n\n },\n\n mounted() {\n this.resizeObserver = new ResizeObserver(entries => {\n for (const entry of entries) {\n const cr = entry.contentRect;\n\n if (entry.target.classList.contains('tiled-container')) {\n this.containerWidth = cr.width;\n }\n }\n });\n this.resizeObserver.observe(this.$refs.tiledLayoutContainer);\n },\n\n beforeDestroy() {\n this.resizeObserver.disconnect();\n }\n\n};","/**\n * @copyright Copyright (c) 2022 Louis Chemineau \n *\n * @author Louis Chemineau \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 .\n *\n */\nimport logger from '../services/logger.js';\nimport getPhotos from '../services/PhotoSearch.js';\nimport cancelableRequest from '../utils/CancelableRequest.js';\nimport SemaphoreWithPriority from '../utils/semaphoreWithPriority.js';\nexport default {\n name: 'FetchFilesMixin',\n\n data() {\n return {\n errorFetchingFiles: null,\n loadingFiles: false,\n doneFetchingFiles: false,\n cancelFilesRequest: () => {},\n semaphore: new SemaphoreWithPriority(30),\n fetchSemaphore: new SemaphoreWithPriority(1),\n semaphoreSymbol: null,\n fetchedFileIds: []\n };\n },\n\n beforeDestroy() {\n if (this.cancelFilesRequest) {\n this.cancelFilesRequest('Changed view');\n }\n },\n\n beforeRouteLeave(from, to, next) {\n if (this.cancelFilesRequest) {\n this.cancelFilesRequest('Changed view');\n }\n\n return next();\n },\n\n watch: {\n $route() {\n this.resetFetchFilesState();\n }\n\n },\n methods: {\n /**\n * @param {string} path - Path to pass to getPhotos.\n * @param {object} options - Options to pass to getPhotos.\n * @param {string[]} [blacklist=[]] - Array of ids to filter out.\n * @return {Promise} - The next batch of data depending on global offset.\n */\n async fetchFiles() {\n let path = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n let blacklist = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];\n\n if (this.doneFetchingFiles || this.loadingFiles) {\n return [];\n }\n\n const semaphoreSymbol = await this.semaphore.acquire(() => 0, 'fetchFiles');\n const fetchSemaphoreSymbol = await this.fetchSemaphore.acquire();\n\n try {\n this.errorFetchingFiles = null;\n this.loadingFiles = true;\n this.semaphoreSymbol = semaphoreSymbol;\n const {\n request,\n cancel\n } = cancelableRequest(getPhotos);\n this.cancelFilesRequest = cancel;\n const numberOfImagesPerBatch = 1000; // Load next batch of images\n\n const fetchedFiles = await request(path, {\n firstResult: this.fetchedFileIds.length,\n nbResults: numberOfImagesPerBatch,\n ...options\n }); // If we get less files than requested that means we got to the end\n\n if (fetchedFiles.length !== numberOfImagesPerBatch) {\n this.doneFetchingFiles = true;\n }\n\n const fileIds = fetchedFiles.map(file => file.fileid).filter(fileId => !this.fetchedFileIds.includes(fileId)); // Filter to prevent duplicate fileIds.\n\n this.fetchedFileIds.push(...fileIds.map(fileId => fileId.toString()).filter(fileId => !blacklist.includes(fileId)));\n this.$store.dispatch('appendFiles', fetchedFiles);\n logger.debug(`[FetchFilesMixin] Fetched ${fileIds.length} new files: `, fileIds);\n return fileIds;\n } catch (error) {\n if (error.response?.status === 404) {\n this.errorFetchingFiles = 404;\n } else if (error.code === 'ERR_CANCELED') {\n return [];\n } else {\n this.errorFetchingFiles = error;\n } // cancelled request, moving on...\n\n\n logger.error('Error fetching files', error);\n } finally {\n this.loadingFiles = false;\n\n this.cancelFilesRequest = () => {};\n\n this.semaphore.release(semaphoreSymbol);\n this.fetchSemaphore.release(fetchSemaphoreSymbol);\n }\n\n return [];\n },\n\n resetFetchFilesState() {\n this.doneFetchingFiles = false;\n this.errorFetchingFiles = null;\n this.loadingFiles = false;\n this.fetchedFileIds = [];\n\n this.cancelFilesRequest = () => {};\n }\n\n }\n};","/**\n * @copyright Copyright (c) 2019 John Molakvoæ \n *\n * @author John Molakvoæ \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 .\n *\n */\nimport { genFileInfo } from '../utils/fileUtils.js';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport { allMimes } from './AllowedMimes.js';\nimport client from './DavClient.js';\nimport { props } from './DavRequest.js';\nimport moment from '@nextcloud/moment';\n/**\n * List files from a folder and filter out unwanted mimes\n *\n * @param {object} path the lookup path\n * @param {object} [options] used for the cancellable requests\n * @param {number} [options.firstResult=0] Index of the first result that we want (starts at 0)\n * @param {number} [options.nbResults=200] The number of file to fetch\n * @param {string[]} [options.mimesType=allMimes] Mime type of the files\n * @param {boolean} [options.full=false] get full data of the files\n * @param {boolean} [options.onThisDay=false] get only items from this day of year\n * @param {boolean} [options.onlyFavorites=false] get only favorite items\n * @return {Promise} the file list\n */\n\nexport default async function () {\n let path = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n // default function options\n options = {\n firstResult: 0,\n nbResults: 200,\n mimesType: allMimes,\n onThisDay: false,\n onlyFavorites: false,\n ...options\n };\n const prefixPath = `/files/${getCurrentUser().uid}`; // generating the search or condition\n // based on the allowed mimetypes\n\n const orMime = options.mimesType.reduce((str, mime) => `${str}\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t${mime}\n\t\t\n\t`, '');\n const eqFavorites = options.onlyFavorites ? `\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t1\n\t\t\t` : '';\n const onThisDay = options.onThisDay ? `${Array(20).fill(1).map((_, years) => {\n const start = moment(Date.now()).startOf('day').subtract(3, 'd').subtract(years + 1, 'y');\n const end = moment(Date.now()).endOf('day').add(3, 'd').subtract(years + 1, 'y');\n return `\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t${start.format(moment.defaultFormatUtc)}\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t${end.format(moment.defaultFormatUtc)}\n\t\t\t\t\n\t\t\t`;\n }).join('\\n')}` : '';\n options = Object.assign({\n method: 'SEARCH',\n headers: {\n 'content-Type': 'text/xml'\n },\n data: `\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t${props}\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t${prefixPath}/${path}\n\t\t\t\t\t\t\tinfinity\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t${orMime}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t${eqFavorites}\n\t\t\t\t\t\t\t${onThisDay}\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t${options.nbResults}\n\t\t\t\t\t\t${options.firstResult}\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t`,\n deep: true,\n details: true\n }, options);\n const response = await client.getDirectoryContents('', options);\n return response.data.map(data => genFileInfo(data)) // remove prefix path from full file path\n .map(data => ({ ...data,\n filename: data.filename.replace(prefixPath, '')\n }));\n}","/**\n * @copyright Copyright (c) 2022 Louis Chemineau \n *\n * @author Louis Chemineau \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 .\n *\n */\n\n/**\n * @typedef {object} TiledItem\n * @property {string} id\n * @property {number} [width] Real width of the item.\n * @property {number} height Real height of the item.\n * @property {number} [ratio] The aspect ratio of the item.\n * @property {boolean} [sectionHeader] Whether this row is a section header.\n */\n\n/**\n * @typedef {object} TiledRow\n * @property {TiledItem[]} items -\n * @property {number} height -\n * @property {string} key -\n */\n\n/**\n * Split items in rows of equal width.\n * The last row will not be forced to match containerWidth.\n *\n * @param {TiledItem[]} items The list of item to split in row of equal width.\n * @param {number} containerWidth The width of a row.\n * @param {number} baseHeight The base height of the rows.\n * @return {TiledRow[]}\n */\nexport function splitItemsInRows(items, containerWidth) {\n let baseHeight = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 200;\n\n if (containerWidth === 0) {\n return [];\n }\n\n const rows = [];\n let rowNumber = 0;\n let currentItem = 0;\n\n while (currentItem < items.length) {\n /** @type { TiledItem[] } */\n const rowItems = []; // Fill the row with new items as long as the width is less than containerWidth.\n\n do {\n // @ts-ignore - We know that items.shift() is not undefined as we always check that items.length > 0.\n rowItems.push(items[currentItem++]);\n } while (currentItem < items.length && !items[currentItem - 1].sectionHeader && !items[currentItem].sectionHeader && computeRowWidth([...rowItems, items[currentItem]], baseHeight) <= containerWidth);\n\n rows[rowNumber] = {\n items: rowItems,\n height: computeRowHeight(rowItems, containerWidth, items.length === currentItem || items[currentItem].sectionHeader === true, baseHeight),\n // Key to help vue to keep track of the row in VirtualScrolling.\n key: rowItems.map(item => item.id).join('-')\n };\n rowNumber += 1;\n }\n\n return rows;\n}\n/**\n *\n * @param {TiledItem[]} items The list of items in the row.\n * @param {number} baseHeight The base height of the rows.\n * @return {number} The width of the row\n */\n\nfunction computeRowWidth(items, baseHeight) {\n return items.map(item => baseHeight * item.ratio).reduce((sum, itemWidth) => sum + itemWidth);\n}\n/**\n * Compute the row height based on its items and on the container's width.\n *\n * Math time !\n * With Rn the aspect ratio of item n\n * Wn the width of item n\n * Hn the height of item n\n * Wc the width of the container\n * Hr the height of the row\n * For n items we want: Wc = W1 + W2 + ... + Wn\n * We know Rn = Wn / Hn\n * So Wn = Rn * Hn\n * So Wc = (R1 * H1) + (R2 * H2) + ... + (Rn * Hn)\n * But we also want Hr === H1 === H2 === ... === Hn\n * So Wc = (R1 * Hr) + (R2 * Hr) + ... + (Rn * Hr)\n * So Wc = Hr * (R1 + R2 + ... + Rn)\n * So Hr = Wc / (R1 + R2 + ... + Rn)\n *\n * @param {TiledItem[]} items The list of items in the row.\n * @param {number} containerWidth The width of the row.\n * @param {boolean} isLastRow Whether we are computing the height for the last row.\n * @param {number} baseHeight The base height of the rows.\n * @return {number} The height of the row\n */\n\n\nfunction computeRowHeight(items, containerWidth, isLastRow, baseHeight) {\n // Exception 1: there is only one item and its width it is a sectionHeader, meaning take the full width.\n if (items.length === 1 && items[0].sectionHeader) {\n return items[0].height;\n }\n\n const sumOfItemsRatio = items.map(item => item.ratio).reduce((sum, itemRatio) => sum + itemRatio);\n let rowHeight = containerWidth / sumOfItemsRatio; // Exception 2: there is only one item which is larger than containerWidth.\n // Limit its height so that itemWidth === containerWidth\n\n if (items.length === 1 && items[0].width > containerWidth) {\n rowHeight = containerWidth / items[0].ratio;\n } // Exception 3: we reached the last row.\n // Force the items width to match containerWidth, and limit their heigh to baseHeight + 20.\n\n\n if (isLastRow) {\n rowHeight = Math.min(baseHeight + 20, rowHeight);\n }\n\n return rowHeight;\n}","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".files-list-viewer[data-v-3ebf26b2] {\\n height: 100%;\\n position: relative;\\n}\\n.files-list-viewer[data-v-3ebf26b2] .empty-content__icon {\\n width: 200px;\\n height: 200px;\\n}\\n.files-list-viewer[data-v-3ebf26b2] .empty-content__icon .empty-content-illustration svg {\\n width: 200px;\\n height: 200px;\\n}\\n.files-list-viewer .tiled-row[data-v-3ebf26b2] {\\n display: flex;\\n}\\n.files-list-viewer__section-header[data-v-3ebf26b2] {\\n position: sticky;\\n top: 0;\\n z-index: 3;\\n background: var(--color-main-background);\\n}\\n.files-list-viewer__loader[data-v-3ebf26b2] {\\n margin: 50px 0;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".tiled-container[data-v-aaf5cf80] {\\n height: 100%;\\n}\\n.tiled-container .tiled-row[data-v-aaf5cf80] {\\n display: flex;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".tiled-row[data-v-332876ef] {\\n display: flex;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./TiledLayout.vue?vue&type=style&index=0&id=aaf5cf80&scoped=true&lang=scss&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./TiledLayout.vue?vue&type=style&index=0&id=aaf5cf80&scoped=true&lang=scss&\";\n export default content && content.locals ? content.locals : undefined;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./TiledRows.vue?vue&type=style&index=0&id=332876ef&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./TiledRows.vue?vue&type=style&index=0&id=332876ef&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesListViewer.vue?vue&type=template&id=3ebf26b2&scoped=true&\"\nimport script from \"./FilesListViewer.vue?vue&type=script&lang=js&\"\nexport * from \"./FilesListViewer.vue?vue&type=script&lang=js&\"\nimport style0 from \"./FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&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 \"3ebf26b2\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/louis/workspace/nextcloud/apps/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('3ebf26b2')) {\n api.createRecord('3ebf26b2', component.options)\n } else {\n api.reload('3ebf26b2', component.options)\n }\n module.hot.accept(\"./FilesListViewer.vue?vue&type=template&id=3ebf26b2&scoped=true&\", function () {\n api.rerender('3ebf26b2', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/FilesListViewer.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./TiledLayout.vue?vue&type=template&id=aaf5cf80&scoped=true&\"\nimport script from \"./TiledLayout.vue?vue&type=script&lang=js&\"\nexport * from \"./TiledLayout.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TiledLayout.vue?vue&type=style&index=0&id=aaf5cf80&scoped=true&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 \"aaf5cf80\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/louis/workspace/nextcloud/apps/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('aaf5cf80')) {\n api.createRecord('aaf5cf80', component.options)\n } else {\n api.reload('aaf5cf80', component.options)\n }\n module.hot.accept(\"./TiledLayout.vue?vue&type=template&id=aaf5cf80&scoped=true&\", function () {\n api.rerender('aaf5cf80', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/TiledLayout.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./TiledRows.vue?vue&type=template&id=332876ef&scoped=true&functional=true&\"\nvar script = {}\nimport style0 from \"./TiledRows.vue?vue&type=style&index=0&id=332876ef&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 true,\n null,\n \"332876ef\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/louis/workspace/nextcloud/apps/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('332876ef')) {\n api.createRecord('332876ef', component.options)\n } else {\n api.rerender('332876ef', component.options)\n }\n module.hot.accept(\"./TiledRows.vue?vue&type=template&id=332876ef&scoped=true&functional=true&\", function () {\n api.rerender('332876ef', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/TiledRows.vue\"\nexport default component.exports","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListViewer.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!./FilesListViewer.vue?vue&type=script&lang=js&\"","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TiledLayout.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!./TiledLayout.vue?vue&type=script&lang=js&\"","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { staticClass: \"files-list-viewer\" },\n [\n _vm.emptyMessage !== \"\" && _vm.items.length === 0 && !_vm.loading\n ? _c(\n \"EmptyContent\",\n {\n key: \"emptycontent\",\n scopedSlots: _vm._u(\n [\n {\n key: \"icon\",\n fn: function () {\n return [\n _c(\"span\", {\n staticClass: \"empty-content-illustration\",\n domProps: { innerHTML: _vm._s(_vm.EmptyBox) },\n }),\n ]\n },\n proxy: true,\n },\n ],\n null,\n false,\n 3410044941\n ),\n },\n [_vm._v(\"\\n\\t\\t\" + _vm._s(_vm.emptyMessage) + \"\\n\\t\")]\n )\n : _vm._e(),\n _vm._v(\" \"),\n _c(\"TiledLayout\", {\n attrs: { \"base-height\": _vm.baseHeight, items: _vm.items },\n scopedSlots: _vm._u([\n {\n key: \"default\",\n fn: function (ref) {\n var rows = ref.rows\n return _c(\"VirtualScrolling\", {\n attrs: {\n \"use-window\": _vm.useWindow,\n rows: rows,\n \"scroll-to-key\": _vm.scrollToSection,\n },\n on: { \"need-content\": _vm.needContent },\n scopedSlots: _vm._u(\n [\n {\n key: \"default\",\n fn: function (ref) {\n var renderedRows = ref.renderedRows\n return _c(\n \"ul\",\n {},\n _vm._l(renderedRows, function (row) {\n return _c(\n \"div\",\n {\n key: row.key,\n staticClass: \"tiled-row\",\n class: {\n \"files-list-viewer__section-header\":\n row.items[0].sectionHeader,\n },\n style: { height: row.height + \"px\" },\n },\n _vm._l(row.items, function (item) {\n return _c(\n \"li\",\n {\n key: item.id,\n style: {\n width: item.ratio\n ? row.height * item.ratio + \"px\"\n : \"100%\",\n height: row.height + \"px\",\n },\n },\n [\n _vm._t(\"default\", null, {\n file: item,\n visibility: row.visibility,\n }),\n ],\n 2\n )\n }),\n 0\n )\n }),\n 0\n )\n },\n },\n _vm.loading\n ? {\n key: \"loader\",\n fn: function () {\n return [\n _c(\"Loader\", {\n staticClass: \"files-list-viewer__loader\",\n }),\n ]\n },\n proxy: true,\n }\n : null,\n ],\n null,\n true\n ),\n })\n },\n },\n ]),\n }),\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { ref: \"tiledLayoutContainer\", staticClass: \"tiled-container\" },\n [\n _vm._t(\n \"default\",\n function () {\n return [_c(\"TiledRows\", { attrs: { rows: _vm.rows } })]\n },\n { rows: _vm.rows }\n ),\n ],\n 2\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function (_h, _vm) {\n var _c = _vm._c\n return _c(\n \"ul\",\n _vm._l(_vm.props.rows, function (row) {\n return _c(\n \"div\",\n {\n key: row.key,\n staticClass: \"tiled-row\",\n style: { height: row.height + \"px\" },\n },\n _vm._l(row.items, function (item) {\n return _c(\n \"li\",\n {\n key: item.id,\n style: {\n width: item.ratio ? row.height * item.ratio + \"px\" : \"100%\",\n height: row.height + \"px\",\n },\n },\n [_vm._t(\"default\", null, { row: row, item: item })],\n 2\n )\n }),\n 0\n )\n }),\n 0\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesByMonthMixin_js-node_modules_vue-material-desig-ab9ff7.js b/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesByMonthMixin_js-node_modules_vue-material-desig-ab9ff7.js deleted file mode 100644 index 5d87b64a7..000000000 --- a/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesByMonthMixin_js-node_modules_vue-material-desig-ab9ff7.js +++ /dev/null @@ -1,3 +0,0 @@ -/*! For license information please see photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesByMonthMixin_js-node_modules_vue-material-desig-ab9ff7.js.LICENSE.txt */ -"use strict";(self.webpackChunkphotos=self.webpackChunkphotos||[]).push([["src_mixins_FetchFilesMixin_js-src_mixins_FilesByMonthMixin_js-node_modules_vue-material-desig-ab9ff7"],{66951:(t,e,n)=>{n.d(e,{Z:()=>A});var r=n(59537),i=n(94236),o=n(45994),a=n(3301),s=n(81067),c=n(2161),l=n(80351),u=n.n(l);function d(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function f(t){for(var e=1;e0&&void 0!==m[0]?m[0]:"",n=m.length>1&&void 0!==m[1]?m[1]:{},n=f({firstResult:0,nbResults:200,mimesType:a.Oj,onThisDay:!1,onlyFavorites:!1},n),r="/files/".concat((0,o.ts)().uid),l=n.mimesType.reduce((function(t,e){return"".concat(t,"\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t").concat(e,"\n\t\t\n\t")}),""),d=n.onlyFavorites?"\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t1\n\t\t\t":"",p=n.onThisDay?"".concat(Array(20).fill(1).map((function(t,e){var n=u()(Date.now()).startOf("day").subtract(3,"d").subtract(e+1,"y"),r=u()(Date.now()).endOf("day").add(3,"d").subtract(e+1,"y");return"\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t".concat(n.format(u().defaultFormatUtc),"\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t").concat(r.format(u().defaultFormatUtc),"\n\t\t\t\t\n\t\t\t")})).join("\n"),""):"",n=Object.assign({method:"SEARCH",headers:{"content-Type":"text/xml"},data:'\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t'.concat(c.N,"\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t").concat(r,"/").concat(e,"\n\t\t\t\t\t\t\tinfinity\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t").concat(l,"\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t").concat(d,"\n\t\t\t\t\t\t\t").concat(p,"\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t").concat(n.nbResults,"\n\t\t\t\t\t\t").concat(n.firstResult,"\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t"),deep:!0,details:!0},n),t.next=10,s.Z.getDirectoryContents("",n);case 10:return h=t.sent,t.abrupt("return",h.data.map((function(t){return(0,i.AX)(t)})).map((function(t){return f(f({},t),{},{filename:t.filename.replace(r,"")})})));case 12:case"end":return t.stop()}}),t)}))),b.apply(this,arguments)}var g=n(32114),v=n(69363),F=n(25108);function w(t){return function(t){if(Array.isArray(t))return O(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||function(t,e){if(!t)return;if("string"==typeof t)return O(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);"Object"===n&&t.constructor&&(n=t.constructor.name);if("Map"===n||"Set"===n)return Array.from(t);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return O(t,e)}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function O(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n0&&void 0!==t[0]?t[0]:"",o=t.length>1&&void 0!==t[1]?t[1]:{},a=t.length>2&&void 0!==t[2]?t[2]:[],!e.doneFetchingFiles&&!e.loadingFiles){n.next=5;break}return n.abrupt("return",[]);case 5:return n.next=7,e.semaphore.acquire((function(){return 0}),"fetchFiles");case 7:return s=n.sent,n.next=10,e.fetchSemaphore.acquire();case 10:return c=n.sent,n.prev=11,e.errorFetchingFiles=null,e.loadingFiles=!0,e.semaphoreSymbol=s,u=200,n.next=18,y(i,x(x({firstResult:e.fetchedFileIds.length,nbResults:u},o),{},{signal:e.abortController.signal}));case 18:return(d=n.sent).length!==u&&(e.doneFetchingFiles=!0),f=d.map((function(t){return t.fileid})).filter((function(t){return!e.fetchedFileIds.includes(t)})),(l=e.fetchedFileIds).push.apply(l,w(f.map((function(t){return t.toString()})).filter((function(t){return!a.includes(t)})))),e.$store.dispatch("appendFiles",d),r.Z.debug("[FetchFilesMixin] Fetched ".concat(f.length," new files: "),f),n.abrupt("return",f);case 27:if(n.prev=27,n.t0=n.catch(11),404!==(null===(p=n.t0.response)||void 0===p?void 0:p.status)){n.next=33;break}e.errorFetchingFiles=404,n.next=38;break;case 33:if("ERR_CANCELED"!==n.t0.code){n.next=37;break}return n.abrupt("return",[]);case 37:e.errorFetchingFiles=n.t0;case 38:r.Z.error("Error fetching files",n.t0),F.error(n.t0);case 40:return n.prev=40,e.loadingFiles=!1,e.semaphore.release(s),e.fetchSemaphore.release(c),n.finish(40);case 45:return n.abrupt("return",[]);case 46:case"end":return n.stop()}}),n,null,[[11,27,40,45]])})))()},resetFetchFilesState:function(){this.doneFetchingFiles=!1,this.errorFetchingFiles=null,this.loadingFiles=!1,this.fetchedFileIds=[]}}}},28391:(t,e,n)=>{function r(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=function(t,e){if(!t)return;if("string"==typeof t)return i(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);"Object"===n&&t.constructor&&(n=t.constructor.name);if("Map"===n||"Set"===n)return Array.from(t);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return i(t,e)}(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var r=0,o=function(){};return{s:o,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,s=!0,c=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return s=t.done,t},e:function(t){c=!0,a=t},f:function(){try{s||null==n.return||n.return()}finally{if(c)throw a}}}}function i(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);no});const o={name:"FilesByMonthMixin",computed:{fileIdsByMonth:function(){var t,e=this,n={},i=r(this.fetchedFileIds);try{for(i.s();!(t=i.n()).done;){var o,a=t.value,s=this.files[a];n[s.month]=null!==(o=n[s.month])&&void 0!==o?o:[],n[s.month].push(s.fileid)}}catch(t){i.e(t)}finally{i.f()}return Object.keys(n).forEach((function(t){return n[t].sort(e.sortFilesByTimestamp)})),n},monthsList:function(){return Object.keys(this.fileIdsByMonth).sort((function(t,e){return t>e?-1:1}))}}}},33691:(t,e,n)=>{n.d(e,{Z:()=>i});const r={name:"DeleteIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const i=(0,n(51900).Z)(r,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("span",t._b({staticClass:"material-design-icon delete-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[n("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[n("path",{attrs:{d:"M19,4H15.5L14.5,3H9.5L8.5,4H5V6H19M6,19A2,2 0 0,0 8,21H16A2,2 0 0,0 18,19V7H6V19Z"}},[t.title?n("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports},2470:(t,e,n)=>{n.d(e,{Z:()=>i});const r={name:"DownloadIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const i=(0,n(51900).Z)(r,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("span",t._b({staticClass:"material-design-icon download-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[n("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[n("path",{attrs:{d:"M5,20H19V18H5M19,9H15V3H9V9H5L12,16L19,9Z"}},[t.title?n("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports}}]); -//# sourceMappingURL=photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesByMonthMixin_js-node_modules_vue-material-desig-ab9ff7.js.map?v=6b039821627ae8ce4bf1 \ No newline at end of file diff --git a/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesByMonthMixin_js-node_modules_vue-material-desig-ab9ff7.js.LICENSE.txt b/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesByMonthMixin_js-node_modules_vue-material-desig-ab9ff7.js.LICENSE.txt deleted file mode 100644 index 3edd37b78..000000000 --- a/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesByMonthMixin_js-node_modules_vue-material-desig-ab9ff7.js.LICENSE.txt +++ /dev/null @@ -1,43 +0,0 @@ -/** - * @copyright Copyright (c) 2019 John Molakvoæ - * - * @author John Molakvoæ - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ - -/** - * @copyright Copyright (c) 2022 Louis Chemineau - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ diff --git a/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesByMonthMixin_js-node_modules_vue-material-desig-ab9ff7.js.map b/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesByMonthMixin_js-node_modules_vue-material-desig-ab9ff7.js.map deleted file mode 100644 index fd93b093e..000000000 --- a/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesByMonthMixin_js-node_modules_vue-material-desig-ab9ff7.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesByMonthMixin_js-node_modules_vue-material-desig-ab9ff7.js?v=6b039821627ae8ce4bf1","mappings":";+xCA0Ce,aAAf,gFAAe,kIAAeA,EAAf,+BAAsB,GAAIC,EAA1B,+BAAoC,CAAC,EAEnDA,EAAU,EAAH,CACNC,YAAa,EACbC,UAAW,IACXC,UAAWC,EAAAA,GACXC,WAAW,EACXC,eAAe,GACZN,GAGEO,EAXQ,kBAWeC,EAAAA,EAAAA,MAAiBC,KAIxCC,EAASV,EAAQG,UAAUQ,QAAO,SAACC,EAAKC,GAAN,gBAAkBD,EAAlB,wGAKzBC,EALyB,mCAOrC,IAEGC,EAAcd,EAAQM,cAAR,yHAOjB,GAEGD,EAAYL,EAAQK,UAAR,gBACNU,MAAM,IAAIC,KAAK,GACxBC,KAAI,SAACC,EAAGC,GACR,IAAMC,EAAQC,IAAOC,KAAKC,OAAOC,QAAQ,OAAOC,SAAS,EAAG,KAAKA,SAASN,EAAQ,EAAG,KAC/EO,EAAML,IAAOC,KAAKC,OAAOI,MAAM,OAAOC,IAAI,EAAG,KAAKH,SAASN,EAAQ,EAAG,KAC5E,MAAO,6HAAP,OAKcC,EAAMS,OAAOR,IAAAA,kBAL3B,2JAWcK,EAAIG,OAAOR,IAAAA,kBAXzB,gDAcA,IAAES,KAAK,MAnBQ,WAoBf,GAEH9B,EAAU+B,OAAOC,OAAO,CACvBC,OAAQ,SACRC,QAAS,CACR,eAAgB,YAEjBC,KAAM,4XAAF,OASGC,EAAAA,EATH,4HAcW7B,EAdX,YAcyBR,EAdzB,8LAqBIW,EArBJ,kDAuBGI,EAvBH,2BAwBGT,EAxBH,wRAkCcL,EAAQE,UAlCtB,sDAmCkBF,EAAQC,YAnC1B,+FAuCJoC,MAAM,EACNC,SAAS,GACPtC,GArGW,UAuGSuC,EAAAA,EAAAA,qBAA4B,GAAIvC,GAvGzC,eAuGRwC,EAvGQ,yBAyGPA,EAASL,KACdlB,KAAI,SAAAkB,GAAI,OAAIM,EAAAA,EAAAA,IAAYN,EAAhB,IAERlB,KAAI,SAAAkB,GAAI,cAAUA,GAAV,IAAgBO,SAAUP,EAAKO,SAASC,QAAQpC,EAAY,KAA5D,KA5GI,y1DCff,SACCqC,KAAM,kBAENC,OAAQ,CACPC,EAAAA,GAGDX,KAPc,WAQb,MAAO,CACNY,mBAAoB,KACpBC,cAAc,EACdC,mBAAmB,EACnBC,UAAW,IAAIC,EAAAA,EAAsB,IACrCC,eAAgB,IAAID,EAAAA,EAAsB,GAC1CE,gBAAiB,KACjBC,eAAgB,GAEjB,EAEDC,MAAO,CACNC,OADM,WAELC,KAAKC,sBACL,GAGFC,QAAS,CAOFC,WAPE,WAOkD,iLAAzC7D,EAAyC,+BAAlC,GAAIC,EAA8B,+BAApB,CAAC,EAAG6D,EAAgB,+BAAJ,IACjD,EAAKZ,oBAAqB,EAAKD,aADsB,yCAEjD,IAFiD,uBAK3B,EAAKE,UAAUY,SAAQ,kBAAM,CAAN,GAAS,cALL,cAKnDT,EALmD,iBAMtB,EAAKD,eAAeU,UANE,eAMnDC,EANmD,iBASxD,EAAKhB,mBAAqB,KAC1B,EAAKC,cAAe,EACpB,EAAKK,gBAAkBA,EAEjBW,EAAyB,IAbyB,UAgB7BC,EAAUlE,EAAD,EAAC,GACpCE,YAAa,EAAKqD,eAAeY,OACjChE,UAAW8D,GACRhE,GAHgC,IAInCmE,OAAQ,EAAKC,gBAAgBD,UApB0B,eAgBlDE,EAhBkD,QAwBvCH,SAAWF,IAC3B,EAAKf,mBAAoB,GAGpBqB,EAAUD,EACdpD,KAAI,SAAAsD,GAAI,OAAIA,EAAKC,MAAT,IACRC,QAAO,SAAAC,GAAM,OAAK,EAAKpB,eAAeqB,SAASD,EAAlC,KAEf,IAAKpB,gBAAesB,KAApB,UACIN,EACDrD,KAAI,SAACyD,GAAD,OAAYA,EAAOG,UAAnB,IACJJ,QAAO,SAACC,GAAD,OAAab,EAAUc,SAASD,EAAhC,MAGV,EAAKI,OAAOC,SAAS,cAAeV,GAEpCW,EAAAA,EAAAA,MAAA,oCAA0CV,EAAQJ,OAAlD,gBAAwEI,GAxChB,kBA0CjDA,GA1CiD,sCA4CzB,OAA3B,eAAM9B,gBAAN,eAAgByC,QA5CoC,iBA6CvD,EAAKlC,mBAAqB,IA7C6B,2BA8C9B,iBAAf,KAAMmC,KA9CuC,0CA+ChD,IA/CgD,QAiDvD,EAAKnC,mBAAL,KAjDuD,QAqDxDiC,EAAAA,EAAAA,MAAa,uBAAb,MACAG,EAAQC,MAAR,MAtDwD,yBAwDxD,EAAKpC,cAAe,EACpB,EAAKE,UAAUmC,QAAQhC,GACvB,EAAKD,eAAeiC,QAAQtB,GA1D4B,8CA6DlD,IA7DkD,kEA8DzD,EAEDL,qBAvEQ,WAwEPD,KAAKR,mBAAoB,EACzBQ,KAAKV,mBAAqB,KAC1BU,KAAKT,cAAe,EACpBS,KAAKH,eAAiB,EACtB,0jCC1GH,SACCV,KAAM,oBAEN0C,SAAU,CAITC,eAJS,WAIQ,aACVC,EAAe,CAAC,EADN,IAEK/B,KAAKH,gBAFV,IAEhB,IAAK,EAAL,qBAA0C,OAA/BoB,EAA+B,QACnCH,EAAOd,KAAKgC,MAAMf,GACxBc,EAAajB,EAAKmB,OAAlB,UAA2BF,EAAajB,EAAKmB,cAA7C,QAAuD,GACvDF,EAAajB,EAAKmB,OAAOd,KAAKL,EAAKC,OACnC,CANe,+BAYhB,OAHAzC,OAAO4D,KAAKH,GACVI,SAAQ,SAAAF,GAAK,OAAIF,EAAaE,GAAOG,KAAK,EAAKC,qBAAlC,IAERN,CACP,EAKDO,WAtBS,WAuBR,OAAOhE,OACL4D,KAAKlC,KAAK8B,gBACVM,MAAK,SAACG,EAAQC,GAAT,OAAoBD,EAASC,GAAU,EAAI,CAA3C,GACP,sCC/BH,MCpB0G,EDoB1G,CACErD,KAAM,aACNsD,MAAO,CAAC,SACR9D,MAAO,CACL+D,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,cACd,GCRW,WAAa,IAAIG,EAAIjD,KAASkD,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOH,EAAIK,GAAG,CAACC,YAAY,mCAAmCC,MAAM,CAAC,eAAeP,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOe,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOT,EAAIU,MAAM,QAASD,EAAO,IAAI,OAAOT,EAAIW,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOP,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACK,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,sFAAsF,CAAEP,EAAS,MAAEG,EAAG,QAAQ,CAACH,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIP,UAAUO,EAAIc,UAAU,GACrmB,IDUpB,EACA,KACA,KACA,MAI8B,yCEEhC,MCpB4G,EDoB5G,CACE5E,KAAM,eACNsD,MAAO,CAAC,SACR9D,MAAO,CACL+D,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,cACd,GCRW,WAAa,IAAIG,EAAIjD,KAASkD,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOH,EAAIK,GAAG,CAACC,YAAY,qCAAqCC,MAAM,CAAC,eAAeP,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOe,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOT,EAAIU,MAAM,QAASD,EAAO,IAAI,OAAOT,EAAIW,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOP,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACK,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,8CAA8C,CAAEP,EAAS,MAAEG,EAAG,QAAQ,CAACH,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIP,UAAUO,EAAIc,UAAU,GAC/jB,IDUpB,EACA,KACA,KACA,MAI8B","sources":["webpack:///photos/src/services/PhotoSearch.js","webpack:///photos/src/mixins/FetchFilesMixin.js","webpack:///photos/src/mixins/FilesByMonthMixin.js","webpack:///photos/node_modules/vue-material-design-icons/Delete.vue","webpack:///photos/node_modules/vue-material-design-icons/Delete.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/Delete.vue?92e1","webpack:///photos/node_modules/vue-material-design-icons/Delete.vue?vue&type=template&id=458c7ecb&","webpack:///photos/node_modules/vue-material-design-icons/Download.vue","webpack:///photos/node_modules/vue-material-design-icons/Download.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/Download.vue?b226","webpack:///photos/node_modules/vue-material-design-icons/Download.vue?vue&type=template&id=67aea606&"],"sourcesContent":["/**\n * @copyright Copyright (c) 2019 John Molakvoæ \n *\n * @author John Molakvoæ \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 .\n *\n */\n\nimport { genFileInfo } from '../utils/fileUtils.js'\nimport { getCurrentUser } from '@nextcloud/auth'\nimport { allMimes } from './AllowedMimes.js'\nimport client from './DavClient.js'\nimport { props } from './DavRequest.js'\nimport moment from '@nextcloud/moment'\n\n/**\n * List files from a folder and filter out unwanted mimes\n *\n * @param {object} path the lookup path\n * @param {object} [options] used for the cancellable requests\n * @param {number} [options.firstResult=0] Index of the first result that we want (starts at 0)\n * @param {number} [options.nbResults=200] The number of file to fetch\n * @param {string[]} [options.mimesType=allMimes] Mime type of the files\n * @param {boolean} [options.full=false] get full data of the files\n * @param {boolean} [options.onThisDay=false] get only items from this day of year\n * @param {boolean} [options.onlyFavorites=false] get only favorite items\n * @return {Promise} the file list\n */\nexport default async function(path = '', options = {}) {\n\t// default function options\n\toptions = {\n\t\tfirstResult: 0,\n\t\tnbResults: 200,\n\t\tmimesType: allMimes,\n\t\tonThisDay: false,\n\t\tonlyFavorites: false,\n\t\t...options,\n\t}\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\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t${mime}\n\t\t\n\t`, '')\n\n\tconst eqFavorites = options.onlyFavorites\n\t\t? `\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t1\n\t\t\t`\n\t\t: ''\n\n\tconst onThisDay = options.onThisDay\n\t\t? `${Array(20).fill(1)\n\t\t\t.map((_, years) => {\n\t\t\t\tconst start = moment(Date.now()).startOf('day').subtract(3, 'd').subtract(years + 1, 'y')\n\t\t\t\tconst end = moment(Date.now()).endOf('day').add(3, 'd').subtract(years + 1, 'y')\n\t\t\t\treturn `\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t${start.format(moment.defaultFormatUtc)}\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t${end.format(moment.defaultFormatUtc)}\n\t\t\t\t\n\t\t\t`\n\t\t\t}).join('\\n')}`\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: `\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t${props}\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t${prefixPath}/${path}\n\t\t\t\t\t\t\tinfinity\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t${orMime}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t${eqFavorites}\n\t\t\t\t\t\t\t${onThisDay}\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t${options.nbResults}\n\t\t\t\t\t\t${options.firstResult}\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t`,\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 => ({ ...data, filename: data.filename.replace(prefixPath, '') }))\n\n}\n","/**\n * @copyright Copyright (c) 2022 Louis Chemineau \n *\n * @author Louis Chemineau \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 .\n *\n */\n\nimport logger from '../services/logger.js'\nimport getPhotos from '../services/PhotoSearch.js'\nimport SemaphoreWithPriority from '../utils/semaphoreWithPriority.js'\nimport AbortControllerMixin from './AbortControllerMixin.js'\n\nexport default {\n\tname: 'FetchFilesMixin',\n\n\tmixins: [\n\t\tAbortControllerMixin,\n\t],\n\n\tdata() {\n\t\treturn {\n\t\t\terrorFetchingFiles: null,\n\t\t\tloadingFiles: false,\n\t\t\tdoneFetchingFiles: false,\n\t\t\tsemaphore: new SemaphoreWithPriority(30),\n\t\t\tfetchSemaphore: new SemaphoreWithPriority(1),\n\t\t\tsemaphoreSymbol: null,\n\t\t\tfetchedFileIds: [],\n\t\t}\n\t},\n\n\twatch: {\n\t\t$route() {\n\t\t\tthis.resetFetchFilesState()\n\t\t},\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * @param {string} path - Path to pass to getPhotos.\n\t\t * @param {object} options - Options to pass to getPhotos.\n\t\t * @param {string[]} [blacklist=[]] - Array of ids to filter out.\n\t\t * @return {Promise} - The next batch of data depending on global offset.\n\t\t */\n\t\tasync fetchFiles(path = '', options = {}, blacklist = []) {\n\t\t\tif (this.doneFetchingFiles || this.loadingFiles) {\n\t\t\t\treturn []\n\t\t\t}\n\n\t\t\tconst semaphoreSymbol = await this.semaphore.acquire(() => 0, 'fetchFiles')\n\t\t\tconst fetchSemaphoreSymbol = await this.fetchSemaphore.acquire()\n\n\t\t\ttry {\n\t\t\t\tthis.errorFetchingFiles = null\n\t\t\t\tthis.loadingFiles = true\n\t\t\t\tthis.semaphoreSymbol = semaphoreSymbol\n\n\t\t\t\tconst numberOfImagesPerBatch = 200\n\n\t\t\t\t// Load next batch of images\n\t\t\t\tconst fetchedFiles = await getPhotos(path, {\n\t\t\t\t\tfirstResult: this.fetchedFileIds.length,\n\t\t\t\t\tnbResults: numberOfImagesPerBatch,\n\t\t\t\t\t...options,\n\t\t\t\t\tsignal: this.abortController.signal,\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 (fetchedFiles.length !== numberOfImagesPerBatch) {\n\t\t\t\t\tthis.doneFetchingFiles = true\n\t\t\t\t}\n\n\t\t\t\tconst fileIds = fetchedFiles\n\t\t\t\t\t.map(file => file.fileid)\n\t\t\t\t\t.filter(fileId => !this.fetchedFileIds.includes(fileId)) // Filter to prevent duplicate fileIds.\n\n\t\t\t\tthis.fetchedFileIds.push(\n\t\t\t\t\t...fileIds\n\t\t\t\t\t\t.map((fileId) => fileId.toString())\n\t\t\t\t\t\t.filter((fileId) => !blacklist.includes(fileId))\n\t\t\t\t)\n\n\t\t\t\tthis.$store.dispatch('appendFiles', fetchedFiles)\n\n\t\t\t\tlogger.debug(`[FetchFilesMixin] Fetched ${fileIds.length} new files: `, fileIds)\n\n\t\t\t\treturn fileIds\n\t\t\t} catch (error) {\n\t\t\t\tif (error.response?.status === 404) {\n\t\t\t\t\tthis.errorFetchingFiles = 404\n\t\t\t\t} else if (error.code === 'ERR_CANCELED') {\n\t\t\t\t\treturn []\n\t\t\t\t} else {\n\t\t\t\t\tthis.errorFetchingFiles = error\n\t\t\t\t}\n\n\t\t\t\t// cancelled request, moving on...\n\t\t\t\tlogger.error('Error fetching files', error)\n\t\t\t\tconsole.error(error)\n\t\t\t} finally {\n\t\t\t\tthis.loadingFiles = false\n\t\t\t\tthis.semaphore.release(semaphoreSymbol)\n\t\t\t\tthis.fetchSemaphore.release(fetchSemaphoreSymbol)\n\t\t\t}\n\n\t\t\treturn []\n\t\t},\n\n\t\tresetFetchFilesState() {\n\t\t\tthis.doneFetchingFiles = false\n\t\t\tthis.errorFetchingFiles = null\n\t\t\tthis.loadingFiles = false\n\t\t\tthis.fetchedFileIds = []\n\t\t},\n\t},\n}\n","/**\n * @copyright Copyright (c) 2022 Louis Chemineau \n *\n * @author Louis Chemineau \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 .\n *\n */\n\nexport default {\n\tname: 'FilesByMonthMixin',\n\n\tcomputed: {\n\t\t/**\n\t\t * @return {object}\n\t\t */\n\t\tfileIdsByMonth() {\n\t\t\tconst filesByMonth = {}\n\t\t\tfor (const fileId of this.fetchedFileIds) {\n\t\t\t\tconst file = this.files[fileId]\n\t\t\t\tfilesByMonth[file.month] = filesByMonth[file.month] ?? []\n\t\t\t\tfilesByMonth[file.month].push(file.fileid)\n\t\t\t}\n\n\t\t\t// Sort files in sections.\n\t\t\tObject.keys(filesByMonth)\n\t\t\t\t.forEach(month => filesByMonth[month].sort(this.sortFilesByTimestamp))\n\n\t\t\treturn filesByMonth\n\t\t},\n\n\t\t/**\n\t\t * @return {string[]}\n\t\t */\n\t\tmonthsList() {\n\t\t\treturn Object\n\t\t\t\t.keys(this.fileIdsByMonth)\n\t\t\t\t.sort((month1, month2) => month1 > month2 ? -1 : 1)\n\t\t},\n\t},\n}\n","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Delete.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Delete.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Delete.vue?vue&type=template&id=458c7ecb&\"\nimport script from \"./Delete.vue?vue&type=script&lang=js&\"\nexport * from \"./Delete.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon delete-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M19,4H15.5L14.5,3H9.5L8.5,4H5V6H19M6,19A2,2 0 0,0 8,21H16A2,2 0 0,0 18,19V7H6V19Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Download.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Download.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Download.vue?vue&type=template&id=67aea606&\"\nimport script from \"./Download.vue?vue&type=script&lang=js&\"\nexport * from \"./Download.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon download-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M5,20H19V18H5M19,9H15V3H9V9H5L12,16L19,9Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }"],"names":["path","options","firstResult","nbResults","mimesType","allMimes","onThisDay","onlyFavorites","prefixPath","getCurrentUser","uid","orMime","reduce","str","mime","eqFavorites","Array","fill","map","_","years","start","moment","Date","now","startOf","subtract","end","endOf","add","format","join","Object","assign","method","headers","data","props","deep","details","client","response","genFileInfo","filename","replace","name","mixins","AbortControllerMixin","errorFetchingFiles","loadingFiles","doneFetchingFiles","semaphore","SemaphoreWithPriority","fetchSemaphore","semaphoreSymbol","fetchedFileIds","watch","$route","this","resetFetchFilesState","methods","fetchFiles","blacklist","acquire","fetchSemaphoreSymbol","numberOfImagesPerBatch","getPhotos","length","signal","abortController","fetchedFiles","fileIds","file","fileid","filter","fileId","includes","push","toString","$store","dispatch","logger","status","code","console","error","release","computed","fileIdsByMonth","filesByMonth","files","month","keys","forEach","sort","sortFilesByTimestamp","monthsList","month1","month2","emits","title","type","String","fillColor","default","size","Number","_vm","_h","$createElement","_c","_self","_b","staticClass","attrs","on","$event","$emit","$attrs","_v","_s","_e"],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesByMonthMixin_js-node_modules_vue-material-desig-cf825a.js b/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesByMonthMixin_js-node_modules_vue-material-desig-cf825a.js deleted file mode 100644 index 0a0cadfc2..000000000 --- a/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesByMonthMixin_js-node_modules_vue-material-desig-cf825a.js +++ /dev/null @@ -1,3 +0,0 @@ -/*! For license information please see photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesByMonthMixin_js-node_modules_vue-material-desig-cf825a.js.LICENSE.txt */ -"use strict";(self.webpackChunkphotos=self.webpackChunkphotos||[]).push([["src_mixins_FetchFilesMixin_js-src_mixins_FilesByMonthMixin_js-node_modules_vue-material-desig-cf825a"],{66951:(t,e,n)=>{n.d(e,{Z:()=>k});var r=n(59537),i=n(94236),o=n(45994),c=n(3301),a=n(81067),l=n(2161),s=n(80351),u=n.n(s),d=n(79753);function f(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function p(t){for(var e=1;e0&&void 0!==y[0]?y[0]:"",n=y.length>1&&void 0!==y[1]?y[1]:{},n=p({firstResult:0,nbResults:200,mimesType:c.Oj,onThisDay:!1,onlyFavorites:!1},n),r="/files/".concat((0,o.ts)().uid),s=n.mimesType.reduce((function(t,e){return"".concat(t,"\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t").concat(e,"\n\t\t\n\t")}),""),f=n.onlyFavorites?"\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t1\n\t\t\t":"",h=n.onThisDay?"".concat(Array(20).fill(1).map((function(t,e){var n=u()(Date.now()).startOf("day").subtract(3,"d").subtract(e+1,"y"),r=u()(Date.now()).endOf("day").add(3,"d").subtract(e+1,"y");return"\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t".concat(n.format(u().defaultFormatUtc),"\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t").concat(r.format(u().defaultFormatUtc),"\n\t\t\t\t\n\t\t\t")})).join("\n"),""):"",n=Object.assign({method:"SEARCH",headers:{"content-Type":"text/xml"},data:'\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t'.concat(l.N,"\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t").concat(r,"/").concat(e,"\n\t\t\t\t\t\t\tinfinity\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t").concat(s,"\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t").concat(f,"\n\t\t\t\t\t\t\t").concat(h,"\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t").concat(n.nbResults,"\n\t\t\t\t\t\t").concat(n.firstResult,"\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t"),deep:!0,details:!0},n),t.next=10,a.Z.getDirectoryContents("",n);case 10:return m=t.sent,t.abrupt("return",m.data.map((function(t){return(0,i.AX)(t)})).map((function(t){return p(p({},t),{},{source:(0,d.generateRemoteUrl)("dav".concat(t.filename))})})));case 12:case"end":return t.stop()}}),t)}))),g.apply(this,arguments)}var v=n(32114),O=n(69363),w=n(25108);function F(t){return function(t){if(Array.isArray(t))return j(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||function(t,e){if(!t)return;if("string"==typeof t)return j(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);"Object"===n&&t.constructor&&(n=t.constructor.name);if("Map"===n||"Set"===n)return Array.from(t);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return j(t,e)}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function j(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n0&&void 0!==t[0]?t[0]:"",o=t.length>1&&void 0!==t[1]?t[1]:{},c=t.length>2&&void 0!==t[2]?t[2]:[],!e.doneFetchingFiles&&!e.loadingFiles){n.next=5;break}return n.abrupt("return",[]);case 5:return n.next=7,e.semaphore.acquire((function(){return 0}),"fetchFiles");case 7:return a=n.sent,n.next=10,e.fetchSemaphore.acquire();case 10:return l=n.sent,n.prev=11,e.errorFetchingFiles=null,e.loadingFiles=!0,e.semaphoreSymbol=a,u=200,n.next=18,b(i,S(S({firstResult:e.fetchedFileIds.length,nbResults:u},o),{},{signal:e.abortController.signal}));case 18:return(d=n.sent).length!==u&&(e.doneFetchingFiles=!0),f=d.map((function(t){return t.fileid})).filter((function(t){return!e.fetchedFileIds.includes(t)})),(s=e.fetchedFileIds).push.apply(s,F(f.map((function(t){return t.toString()})).filter((function(t){return!c.includes(t)})))),e.$store.dispatch("appendFiles",d),r.Z.debug("[FetchFilesMixin] Fetched ".concat(f.length," new files: "),f),n.abrupt("return",f);case 27:if(n.prev=27,n.t0=n.catch(11),404!==(null===(p=n.t0.response)||void 0===p?void 0:p.status)){n.next=33;break}e.errorFetchingFiles=404,n.next=38;break;case 33:if("ERR_CANCELED"!==n.t0.code){n.next=37;break}return n.abrupt("return",[]);case 37:e.errorFetchingFiles=n.t0;case 38:r.Z.error("Error fetching files",n.t0),w.error(n.t0);case 40:return n.prev=40,e.loadingFiles=!1,e.semaphore.release(a),e.fetchSemaphore.release(l),n.finish(40);case 45:return n.abrupt("return",[]);case 46:case"end":return n.stop()}}),n,null,[[11,27,40,45]])})))()},resetFetchFilesState:function(){this.doneFetchingFiles=!1,this.errorFetchingFiles=null,this.loadingFiles=!1,this.fetchedFileIds=[]}}}},28391:(t,e,n)=>{function r(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=function(t,e){if(!t)return;if("string"==typeof t)return i(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);"Object"===n&&t.constructor&&(n=t.constructor.name);if("Map"===n||"Set"===n)return Array.from(t);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return i(t,e)}(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var r=0,o=function(){};return{s:o,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var c,a=!0,l=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return a=t.done,t},e:function(t){l=!0,c=t},f:function(){try{a||null==n.return||n.return()}finally{if(l)throw c}}}}function i(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);no});const o={name:"FilesByMonthMixin",computed:{fileIdsByMonth:function(){var t,e=this,n={},i=r(this.fetchedFileIds);try{for(i.s();!(t=i.n()).done;){var o,c=t.value,a=this.files[c];n[a.month]=null!==(o=n[a.month])&&void 0!==o?o:[],n[a.month].push(a.fileid)}}catch(t){i.e(t)}finally{i.f()}return Object.keys(n).forEach((function(t){return n[t].sort(e.sortFilesByTimestamp)})),n},monthsList:function(){return Object.keys(this.fileIdsByMonth).sort((function(t,e){return t>e?-1:1}))}}}},33691:(t,e,n)=>{n.d(e,{Z:()=>i});const r={name:"DeleteIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const i=(0,n(51900).Z)(r,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("span",t._b({staticClass:"material-design-icon delete-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[n("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[n("path",{attrs:{d:"M19,4H15.5L14.5,3H9.5L8.5,4H5V6H19M6,19A2,2 0 0,0 8,21H16A2,2 0 0,0 18,19V7H6V19Z"}},[t.title?n("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports},2470:(t,e,n)=>{n.d(e,{Z:()=>i});const r={name:"DownloadIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const i=(0,n(51900).Z)(r,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("span",t._b({staticClass:"material-design-icon download-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[n("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[n("path",{attrs:{d:"M5,20H19V18H5M19,9H15V3H9V9H5L12,16L19,9Z"}},[t.title?n("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports},17288:(t,e,n)=>{n.d(e,{Z:()=>s});var r=n(20629),i=n(79753);function o(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function c(t){for(var e=1;e - * - * @author John Molakvoæ - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ - -/** - * @copyright Copyright (c) 2022 Louis Chemineau - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ diff --git a/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesByMonthMixin_js-node_modules_vue-material-desig-cf825a.js.map b/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesByMonthMixin_js-node_modules_vue-material-desig-cf825a.js.map deleted file mode 100644 index 9d9f7d6b7..000000000 --- a/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesByMonthMixin_js-node_modules_vue-material-desig-cf825a.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesByMonthMixin_js-node_modules_vue-material-desig-cf825a.js?v=5f9b28ecb79fd08336ec","mappings":";0yCA2Ce,aAAf,gFAAe,kIAAeA,EAAf,+BAAsB,GAAIC,EAA1B,+BAAoC,CAAC,EAEnDA,EAAU,EAAH,CACNC,YAAa,EACbC,UAAW,IACXC,UAAWC,EAAAA,GACXC,WAAW,EACXC,eAAe,GACZN,GAGEO,EAXQ,kBAWeC,EAAAA,EAAAA,MAAiBC,KAIxCC,EAASV,EAAQG,UAAUQ,QAAO,SAACC,EAAKC,GAAN,gBAAkBD,EAAlB,wGAKzBC,EALyB,mCAOrC,IAEGC,EAAcd,EAAQM,cAAR,yHAOjB,GAEGD,EAAYL,EAAQK,UAAR,gBACNU,MAAM,IAAIC,KAAK,GACxBC,KAAI,SAACC,EAAGC,GACR,IAAMC,EAAQC,IAAOC,KAAKC,OAAOC,QAAQ,OAAOC,SAAS,EAAG,KAAKA,SAASN,EAAQ,EAAG,KAC/EO,EAAML,IAAOC,KAAKC,OAAOI,MAAM,OAAOC,IAAI,EAAG,KAAKH,SAASN,EAAQ,EAAG,KAC5E,MAAO,6HAAP,OAKcC,EAAMS,OAAOR,IAAAA,kBAL3B,2JAWcK,EAAIG,OAAOR,IAAAA,kBAXzB,gDAcA,IAAES,KAAK,MAnBQ,WAoBf,GAEH9B,EAAU+B,OAAOC,OAAO,CACvBC,OAAQ,SACRC,QAAS,CACR,eAAgB,YAEjBC,KAAM,4XAAF,OASGC,EAAAA,EATH,4HAcW7B,EAdX,YAcyBR,EAdzB,8LAqBIW,EArBJ,kDAuBGI,EAvBH,2BAwBGT,EAxBH,wRAkCcL,EAAQE,UAlCtB,sDAmCkBF,EAAQC,YAnC1B,+FAuCJoC,MAAM,EACNC,SAAS,GACPtC,GArGW,UAuGSuC,EAAAA,EAAAA,qBAA4B,GAAIvC,GAvGzC,eAuGRwC,EAvGQ,yBAyGPA,EAASL,KAAKlB,KAAI,SAAAkB,GAAI,OAAIM,EAAAA,EAAAA,IAAYN,EAAhB,IAC3BlB,KAAI,SAAAyB,GAAI,cAAUA,GAAV,IAAgBC,QAAQC,EAAAA,EAAAA,mBAAkB,MAAD,OAAOF,EAAKG,YAArD,KA1GI,y1DChBf,SACCC,KAAM,kBAENC,OAAQ,CACPC,EAAAA,GAGDb,KAPc,WAQb,MAAO,CACNc,mBAAoB,KACpBC,cAAc,EACdC,mBAAmB,EACnBC,UAAW,IAAIC,EAAAA,EAAsB,IACrCC,eAAgB,IAAID,EAAAA,EAAsB,GAC1CE,gBAAiB,KACjBC,eAAgB,GAEjB,EAEDC,MAAO,CACNC,OADM,WAELC,KAAKC,sBACL,GAGFC,QAAS,CAOFC,WAPE,WAOkD,iLAAzC/D,EAAyC,+BAAlC,GAAIC,EAA8B,+BAApB,CAAC,EAAG+D,EAAgB,+BAAJ,IACjD,EAAKZ,oBAAqB,EAAKD,aADsB,yCAEjD,IAFiD,uBAK3B,EAAKE,UAAUY,SAAQ,kBAAM,CAAN,GAAS,cALL,cAKnDT,EALmD,iBAMtB,EAAKD,eAAeU,UANE,eAMnDC,EANmD,iBASxD,EAAKhB,mBAAqB,KAC1B,EAAKC,cAAe,EACpB,EAAKK,gBAAkBA,EAEjBW,EAAyB,IAbyB,UAgB7BC,EAAUpE,EAAD,EAAC,GACpCE,YAAa,EAAKuD,eAAeY,OACjClE,UAAWgE,GACRlE,GAHgC,IAInCqE,OAAQ,EAAKC,gBAAgBD,UApB0B,eAgBlDE,EAhBkD,QAwBvCH,SAAWF,IAC3B,EAAKf,mBAAoB,GAGpBqB,EAAUD,EACdtD,KAAI,SAAAyB,GAAI,OAAIA,EAAK+B,MAAT,IACRC,QAAO,SAAAC,GAAM,OAAK,EAAKnB,eAAeoB,SAASD,EAAlC,KAEf,IAAKnB,gBAAeqB,KAApB,UACIL,EACDvD,KAAI,SAAC0D,GAAD,OAAYA,EAAOG,UAAnB,IACJJ,QAAO,SAACC,GAAD,OAAaZ,EAAUa,SAASD,EAAhC,MAGV,EAAKI,OAAOC,SAAS,cAAeT,GAEpCU,EAAAA,EAAAA,MAAA,oCAA0CT,EAAQJ,OAAlD,gBAAwEI,GAxChB,kBA0CjDA,GA1CiD,sCA4CzB,OAA3B,eAAMhC,gBAAN,eAAgB0C,QA5CoC,iBA6CvD,EAAKjC,mBAAqB,IA7C6B,2BA8C9B,iBAAf,KAAMkC,KA9CuC,0CA+ChD,IA/CgD,QAiDvD,EAAKlC,mBAAL,KAjDuD,QAqDxDgC,EAAAA,EAAAA,MAAa,uBAAb,MACAG,EAAQC,MAAR,MAtDwD,yBAwDxD,EAAKnC,cAAe,EACpB,EAAKE,UAAUkC,QAAQ/B,GACvB,EAAKD,eAAegC,QAAQrB,GA1D4B,8CA6DlD,IA7DkD,kEA8DzD,EAEDL,qBAvEQ,WAwEPD,KAAKR,mBAAoB,EACzBQ,KAAKV,mBAAqB,KAC1BU,KAAKT,cAAe,EACpBS,KAAKH,eAAiB,EACtB,0jCC1GH,SACCV,KAAM,oBAENyC,SAAU,CAITC,eAJS,WAIQ,aACVC,EAAe,CAAC,EADN,IAEK9B,KAAKH,gBAFV,IAEhB,IAAK,EAAL,qBAA0C,OAA/BmB,EAA+B,QACnCjC,EAAOiB,KAAK+B,MAAMf,GACxBc,EAAa/C,EAAKiD,OAAlB,UAA2BF,EAAa/C,EAAKiD,cAA7C,QAAuD,GACvDF,EAAa/C,EAAKiD,OAAOd,KAAKnC,EAAK+B,OACnC,CANe,+BAYhB,OAHA1C,OAAO6D,KAAKH,GACVI,SAAQ,SAAAF,GAAK,OAAIF,EAAaE,GAAOG,KAAK,EAAKC,qBAAlC,IAERN,CACP,EAKDO,WAtBS,WAuBR,OAAOjE,OACL6D,KAAKjC,KAAK6B,gBACVM,MAAK,SAACG,EAAQC,GAAT,OAAoBD,EAASC,GAAU,EAAI,CAA3C,GACP,sCC/BH,MCpB0G,EDoB1G,CACEpD,KAAM,aACNqD,MAAO,CAAC,SACR/D,MAAO,CACLgE,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,cACd,GCRW,WAAa,IAAIG,EAAIhD,KAASiD,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOH,EAAIK,GAAG,CAACC,YAAY,mCAAmCC,MAAM,CAAC,eAAeP,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOe,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOT,EAAIU,MAAM,QAASD,EAAO,IAAI,OAAOT,EAAIW,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOP,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACK,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,sFAAsF,CAAEP,EAAS,MAAEG,EAAG,QAAQ,CAACH,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIP,UAAUO,EAAIc,UAAU,GACrmB,IDUpB,EACA,KACA,KACA,MAI8B,yCEEhC,MCpB4G,EDoB5G,CACE3E,KAAM,eACNqD,MAAO,CAAC,SACR/D,MAAO,CACLgE,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,cACd,GCRW,WAAa,IAAIG,EAAIhD,KAASiD,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOH,EAAIK,GAAG,CAACC,YAAY,qCAAqCC,MAAM,CAAC,eAAeP,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOe,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOT,EAAIU,MAAM,QAASD,EAAO,IAAI,OAAOT,EAAIW,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOP,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACK,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,8CAA8C,CAAEP,EAAS,MAAEG,EAAG,QAAQ,CAACH,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIP,UAAUO,EAAIc,UAAU,GAC/jB,IDUpB,EACA,KACA,KACA,MAI8B,0CElBhC,itBCqCA,MCrCqL,EDqCrL,CACA,sBAEA,YACA,oCAGA,OACA,OACA,YACA,aAGA,iBACA,WACA,cAIA,iBACA,SACA,WAFA,IAKA,YALA,WAMA,0BAGA,OAFA,kDAEA,4DACA,EAEA,UAZA,WAYA,WACA,0EACA,KEpDA,SAXgB,cACd,GHRW,WAAa,IAAId,EAAIhD,KAASiD,EAAGD,EAAIE,eAAuC,OAAjBF,EAAII,MAAMD,IAAIF,GAAa,eAAe,CAACM,MAAM,CAAC,qBAAoB,EAAK,KAAOP,EAAIe,YAAY,SAAWf,EAAIe,YAAY,aAAaf,EAAIP,QAAQ,CAACO,EAAIY,GAAG,OAAOZ,EAAIa,GAAGb,EAAIP,OAAO,QAAQO,EAAIgB,GAAG,OAAO,KAAK,CAAC,KAAO,UAAU,EAAE,GACxR,IGUpB,EACA,KACA,KACA,MAI8B","sources":["webpack:///photos/src/services/PhotoSearch.js","webpack:///photos/src/mixins/FetchFilesMixin.js","webpack:///photos/src/mixins/FilesByMonthMixin.js","webpack:///photos/node_modules/vue-material-design-icons/Delete.vue","webpack:///photos/node_modules/vue-material-design-icons/Delete.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/Delete.vue?92e1","webpack:///photos/node_modules/vue-material-design-icons/Delete.vue?vue&type=template&id=458c7ecb&","webpack:///photos/node_modules/vue-material-design-icons/Download.vue","webpack:///photos/node_modules/vue-material-design-icons/Download.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/Download.vue?b226","webpack:///photos/node_modules/vue-material-design-icons/Download.vue?vue&type=template&id=67aea606&","webpack:///photos/src/components/Actions/ActionDownload.vue?vue&type=template&id=446e0e60&","webpack:///photos/src/components/Actions/ActionDownload.vue","webpack:///photos/src/components/Actions/ActionDownload.vue?vue&type=script&lang=js&","webpack://photos/./src/components/Actions/ActionDownload.vue?3d40"],"sourcesContent":["/**\n * @copyright Copyright (c) 2019 John Molakvoæ \n *\n * @author John Molakvoæ \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 .\n *\n */\n\nimport { genFileInfo } from '../utils/fileUtils.js'\nimport { getCurrentUser } from '@nextcloud/auth'\nimport { allMimes } from './AllowedMimes.js'\nimport client from './DavClient.js'\nimport { props } from './DavRequest.js'\nimport moment from '@nextcloud/moment'\nimport { generateRemoteUrl } from '@nextcloud/router'\n\n/**\n * List files from a folder and filter out unwanted mimes\n *\n * @param {object} path the lookup path\n * @param {object} [options] used for the cancellable requests\n * @param {number} [options.firstResult=0] Index of the first result that we want (starts at 0)\n * @param {number} [options.nbResults=200] The number of file to fetch\n * @param {string[]} [options.mimesType=allMimes] Mime type of the files\n * @param {boolean} [options.full=false] get full data of the files\n * @param {boolean} [options.onThisDay=false] get only items from this day of year\n * @param {boolean} [options.onlyFavorites=false] get only favorite items\n * @return {Promise} the file list\n */\nexport default async function(path = '', options = {}) {\n\t// default function options\n\toptions = {\n\t\tfirstResult: 0,\n\t\tnbResults: 200,\n\t\tmimesType: allMimes,\n\t\tonThisDay: false,\n\t\tonlyFavorites: false,\n\t\t...options,\n\t}\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\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t${mime}\n\t\t\n\t`, '')\n\n\tconst eqFavorites = options.onlyFavorites\n\t\t? `\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t1\n\t\t\t`\n\t\t: ''\n\n\tconst onThisDay = options.onThisDay\n\t\t? `${Array(20).fill(1)\n\t\t\t.map((_, years) => {\n\t\t\t\tconst start = moment(Date.now()).startOf('day').subtract(3, 'd').subtract(years + 1, 'y')\n\t\t\t\tconst end = moment(Date.now()).endOf('day').add(3, 'd').subtract(years + 1, 'y')\n\t\t\t\treturn `\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t${start.format(moment.defaultFormatUtc)}\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t${end.format(moment.defaultFormatUtc)}\n\t\t\t\t\n\t\t\t`\n\t\t\t}).join('\\n')}`\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: `\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t${props}\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t${prefixPath}/${path}\n\t\t\t\t\t\t\tinfinity\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t${orMime}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t${eqFavorites}\n\t\t\t\t\t\t\t${onThisDay}\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t${options.nbResults}\n\t\t\t\t\t\t${options.firstResult}\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t`,\n\t\tdeep: true,\n\t\tdetails: true,\n\t}, options)\n\n\tconst response = await client.getDirectoryContents('', options)\n\n\treturn response.data.map(data => genFileInfo(data))\n\t\t.map(file => ({ ...file, source: generateRemoteUrl(`dav${file.filename}`) }))\n\n}\n","/**\n * @copyright Copyright (c) 2022 Louis Chemineau \n *\n * @author Louis Chemineau \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 .\n *\n */\n\nimport logger from '../services/logger.js'\nimport getPhotos from '../services/PhotoSearch.js'\nimport SemaphoreWithPriority from '../utils/semaphoreWithPriority.js'\nimport AbortControllerMixin from './AbortControllerMixin.js'\n\nexport default {\n\tname: 'FetchFilesMixin',\n\n\tmixins: [\n\t\tAbortControllerMixin,\n\t],\n\n\tdata() {\n\t\treturn {\n\t\t\terrorFetchingFiles: null,\n\t\t\tloadingFiles: false,\n\t\t\tdoneFetchingFiles: false,\n\t\t\tsemaphore: new SemaphoreWithPriority(30),\n\t\t\tfetchSemaphore: new SemaphoreWithPriority(1),\n\t\t\tsemaphoreSymbol: null,\n\t\t\tfetchedFileIds: [],\n\t\t}\n\t},\n\n\twatch: {\n\t\t$route() {\n\t\t\tthis.resetFetchFilesState()\n\t\t},\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * @param {string} path - Path to pass to getPhotos.\n\t\t * @param {object} options - Options to pass to getPhotos.\n\t\t * @param {string[]} [blacklist=[]] - Array of ids to filter out.\n\t\t * @return {Promise} - The next batch of data depending on global offset.\n\t\t */\n\t\tasync fetchFiles(path = '', options = {}, blacklist = []) {\n\t\t\tif (this.doneFetchingFiles || this.loadingFiles) {\n\t\t\t\treturn []\n\t\t\t}\n\n\t\t\tconst semaphoreSymbol = await this.semaphore.acquire(() => 0, 'fetchFiles')\n\t\t\tconst fetchSemaphoreSymbol = await this.fetchSemaphore.acquire()\n\n\t\t\ttry {\n\t\t\t\tthis.errorFetchingFiles = null\n\t\t\t\tthis.loadingFiles = true\n\t\t\t\tthis.semaphoreSymbol = semaphoreSymbol\n\n\t\t\t\tconst numberOfImagesPerBatch = 200\n\n\t\t\t\t// Load next batch of images\n\t\t\t\tconst fetchedFiles = await getPhotos(path, {\n\t\t\t\t\tfirstResult: this.fetchedFileIds.length,\n\t\t\t\t\tnbResults: numberOfImagesPerBatch,\n\t\t\t\t\t...options,\n\t\t\t\t\tsignal: this.abortController.signal,\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 (fetchedFiles.length !== numberOfImagesPerBatch) {\n\t\t\t\t\tthis.doneFetchingFiles = true\n\t\t\t\t}\n\n\t\t\t\tconst fileIds = fetchedFiles\n\t\t\t\t\t.map(file => file.fileid)\n\t\t\t\t\t.filter(fileId => !this.fetchedFileIds.includes(fileId)) // Filter to prevent duplicate fileIds.\n\n\t\t\t\tthis.fetchedFileIds.push(\n\t\t\t\t\t...fileIds\n\t\t\t\t\t\t.map((fileId) => fileId.toString())\n\t\t\t\t\t\t.filter((fileId) => !blacklist.includes(fileId))\n\t\t\t\t)\n\n\t\t\t\tthis.$store.dispatch('appendFiles', fetchedFiles)\n\n\t\t\t\tlogger.debug(`[FetchFilesMixin] Fetched ${fileIds.length} new files: `, fileIds)\n\n\t\t\t\treturn fileIds\n\t\t\t} catch (error) {\n\t\t\t\tif (error.response?.status === 404) {\n\t\t\t\t\tthis.errorFetchingFiles = 404\n\t\t\t\t} else if (error.code === 'ERR_CANCELED') {\n\t\t\t\t\treturn []\n\t\t\t\t} else {\n\t\t\t\t\tthis.errorFetchingFiles = error\n\t\t\t\t}\n\n\t\t\t\t// cancelled request, moving on...\n\t\t\t\tlogger.error('Error fetching files', error)\n\t\t\t\tconsole.error(error)\n\t\t\t} finally {\n\t\t\t\tthis.loadingFiles = false\n\t\t\t\tthis.semaphore.release(semaphoreSymbol)\n\t\t\t\tthis.fetchSemaphore.release(fetchSemaphoreSymbol)\n\t\t\t}\n\n\t\t\treturn []\n\t\t},\n\n\t\tresetFetchFilesState() {\n\t\t\tthis.doneFetchingFiles = false\n\t\t\tthis.errorFetchingFiles = null\n\t\t\tthis.loadingFiles = false\n\t\t\tthis.fetchedFileIds = []\n\t\t},\n\t},\n}\n","/**\n * @copyright Copyright (c) 2022 Louis Chemineau \n *\n * @author Louis Chemineau \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 .\n *\n */\n\nexport default {\n\tname: 'FilesByMonthMixin',\n\n\tcomputed: {\n\t\t/**\n\t\t * @return {object}\n\t\t */\n\t\tfileIdsByMonth() {\n\t\t\tconst filesByMonth = {}\n\t\t\tfor (const fileId of this.fetchedFileIds) {\n\t\t\t\tconst file = this.files[fileId]\n\t\t\t\tfilesByMonth[file.month] = filesByMonth[file.month] ?? []\n\t\t\t\tfilesByMonth[file.month].push(file.fileid)\n\t\t\t}\n\n\t\t\t// Sort files in sections.\n\t\t\tObject.keys(filesByMonth)\n\t\t\t\t.forEach(month => filesByMonth[month].sort(this.sortFilesByTimestamp))\n\n\t\t\treturn filesByMonth\n\t\t},\n\n\t\t/**\n\t\t * @return {string[]}\n\t\t */\n\t\tmonthsList() {\n\t\t\treturn Object\n\t\t\t\t.keys(this.fileIdsByMonth)\n\t\t\t\t.sort((month1, month2) => month1 > month2 ? -1 : 1)\n\t\t},\n\t},\n}\n","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Delete.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Delete.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Delete.vue?vue&type=template&id=458c7ecb&\"\nimport script from \"./Delete.vue?vue&type=script&lang=js&\"\nexport * from \"./Delete.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon delete-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M19,4H15.5L14.5,3H9.5L8.5,4H5V6H19M6,19A2,2 0 0,0 8,21H16A2,2 0 0,0 18,19V7H6V19Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Download.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Download.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Download.vue?vue&type=template&id=67aea606&\"\nimport script from \"./Download.vue?vue&type=script&lang=js&\"\nexport * from \"./Download.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon download-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M5,20H19V18H5M19,9H15V3H9V9H5L12,16L19,9Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('NcActionLink',{attrs:{\"close-after-click\":true,\"href\":_vm.downloadUrl,\"download\":_vm.downloadUrl,\"aria-label\":_vm.title}},[_vm._v(\"\\n\\t\"+_vm._s(_vm.title)+\"\\n\\t\"),_vm._t(\"icon\",null,{\"slot\":\"icon\"})],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActionDownload.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!./ActionDownload.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ActionDownload.vue?vue&type=template&id=446e0e60&\"\nimport script from \"./ActionDownload.vue?vue&type=script&lang=js&\"\nexport * from \"./ActionDownload.vue?vue&type=script&lang=js&\"\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"],"names":["path","options","firstResult","nbResults","mimesType","allMimes","onThisDay","onlyFavorites","prefixPath","getCurrentUser","uid","orMime","reduce","str","mime","eqFavorites","Array","fill","map","_","years","start","moment","Date","now","startOf","subtract","end","endOf","add","format","join","Object","assign","method","headers","data","props","deep","details","client","response","genFileInfo","file","source","generateRemoteUrl","filename","name","mixins","AbortControllerMixin","errorFetchingFiles","loadingFiles","doneFetchingFiles","semaphore","SemaphoreWithPriority","fetchSemaphore","semaphoreSymbol","fetchedFileIds","watch","$route","this","resetFetchFilesState","methods","fetchFiles","blacklist","acquire","fetchSemaphoreSymbol","numberOfImagesPerBatch","getPhotos","length","signal","abortController","fetchedFiles","fileIds","fileid","filter","fileId","includes","push","toString","$store","dispatch","logger","status","code","console","error","release","computed","fileIdsByMonth","filesByMonth","files","month","keys","forEach","sort","sortFilesByTimestamp","monthsList","month1","month2","emits","title","type","String","fillColor","default","size","Number","_vm","_h","$createElement","_c","_self","_b","staticClass","attrs","on","$event","$emit","$attrs","_v","_s","_e","downloadUrl","_t"],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesByMonthMixin_js-src_components_Actions_ActionDo-a6eb03.js b/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesByMonthMixin_js-src_components_Actions_ActionDo-a6eb03.js deleted file mode 100644 index 5b56646b5..000000000 --- a/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesByMonthMixin_js-src_components_Actions_ActionDo-a6eb03.js +++ /dev/null @@ -1,555 +0,0 @@ -"use strict"; -(self["webpackChunkphotos"] = self["webpackChunkphotos"] || []).push([["src_mixins_FetchFilesMixin_js-src_mixins_FilesByMonthMixin_js-src_components_Actions_ActionDo-a6eb03"],{ - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Actions/ActionDownload.vue?vue&type=script&lang=js&": -/*!********************************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Actions/ActionDownload.vue?vue&type=script&lang=js& ***! - \********************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! vuex */ "./node_modules/vuex/dist/vuex.esm.js"); -/* harmony import */ var _nextcloud_router__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/router */ "./node_modules/@nextcloud/router/dist/index.js"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/vue */ "./node_modules/@nextcloud/vue/dist/ncvuecomponents.js"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue__WEBPACK_IMPORTED_MODULE_1__); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'ActionDownload', - components: { - NcActionLink: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_1__.NcActionLink - }, - props: { - title: { - type: String, - required: true - }, - selectedFileIds: { - type: Array, - required: true - } - }, - computed: { ...(0,vuex__WEBPACK_IMPORTED_MODULE_2__.mapGetters)(['files']), - - downloadUrl() { - const params = new URLSearchParams(); - params.append('files', JSON.stringify(this.fileNames)); - return (0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_0__.generateUrl)(`/apps/files/ajax/download.php?${params}`); - }, - - fileNames() { - return this.selectedFileIds.map(fileId => this.files[fileId].filename); - } - - } -}); - -/***/ }), - -/***/ "./src/mixins/FetchFilesMixin.js": -/*!***************************************!*\ - !*** ./src/mixins/FetchFilesMixin.js ***! - \***************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _services_logger_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../services/logger.js */ "./src/services/logger.js"); -/* harmony import */ var _services_PhotoSearch_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../services/PhotoSearch.js */ "./src/services/PhotoSearch.js"); -/* harmony import */ var _utils_semaphoreWithPriority_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils/semaphoreWithPriority.js */ "./src/utils/semaphoreWithPriority.js"); -/* harmony import */ var _AbortControllerMixin_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./AbortControllerMixin.js */ "./src/mixins/AbortControllerMixin.js"); -/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js"); -/** - * @copyright Copyright (c) 2022 Louis Chemineau - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ - - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'FetchFilesMixin', - mixins: [_AbortControllerMixin_js__WEBPACK_IMPORTED_MODULE_3__["default"]], - - data() { - return { - errorFetchingFiles: null, - loadingFiles: false, - doneFetchingFiles: false, - semaphore: new _utils_semaphoreWithPriority_js__WEBPACK_IMPORTED_MODULE_2__["default"](30), - fetchSemaphore: new _utils_semaphoreWithPriority_js__WEBPACK_IMPORTED_MODULE_2__["default"](1), - semaphoreSymbol: null, - fetchedFileIds: [] - }; - }, - - watch: { - $route() { - this.resetFetchFilesState(); - } - - }, - methods: { - /** - * @param {string} path - Path to pass to getPhotos. - * @param {object} options - Options to pass to getPhotos. - * @param {string[]} [blacklist=[]] - Array of ids to filter out. - * @return {Promise} - The next batch of data depending on global offset. - */ - async fetchFiles() { - let path = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : ''; - let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; - let blacklist = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : []; - - if (this.doneFetchingFiles || this.loadingFiles) { - return []; - } - - const semaphoreSymbol = await this.semaphore.acquire(() => 0, 'fetchFiles'); - const fetchSemaphoreSymbol = await this.fetchSemaphore.acquire(); - - try { - this.errorFetchingFiles = null; - this.loadingFiles = true; - this.semaphoreSymbol = semaphoreSymbol; - const numberOfImagesPerBatch = 200; // Load next batch of images - - const fetchedFiles = await (0,_services_PhotoSearch_js__WEBPACK_IMPORTED_MODULE_1__["default"])(path, { - firstResult: this.fetchedFileIds.length, - nbResults: numberOfImagesPerBatch, - ...options, - signal: this.abortController.signal - }); // If we get less files than requested that means we got to the end - - if (fetchedFiles.length !== numberOfImagesPerBatch) { - this.doneFetchingFiles = true; - } - - const fileIds = fetchedFiles.map(file => file.fileid).filter(fileId => !this.fetchedFileIds.includes(fileId)); // Filter to prevent duplicate fileIds. - - this.fetchedFileIds.push(...fileIds.map(fileId => fileId.toString()).filter(fileId => !blacklist.includes(fileId))); - this.$store.dispatch('appendFiles', fetchedFiles); - _services_logger_js__WEBPACK_IMPORTED_MODULE_0__["default"].debug(`[FetchFilesMixin] Fetched ${fileIds.length} new files: `, fileIds); - return fileIds; - } catch (error) { - if (error.response?.status === 404) { - this.errorFetchingFiles = 404; - } else if (error.code === 'ERR_CANCELED') { - return []; - } else { - this.errorFetchingFiles = error; - } // cancelled request, moving on... - - - _services_logger_js__WEBPACK_IMPORTED_MODULE_0__["default"].error('Error fetching files', error); - console.error(error); - } finally { - this.loadingFiles = false; - this.semaphore.release(semaphoreSymbol); - this.fetchSemaphore.release(fetchSemaphoreSymbol); - } - - return []; - }, - - resetFetchFilesState() { - this.doneFetchingFiles = false; - this.errorFetchingFiles = null; - this.loadingFiles = false; - this.fetchedFileIds = []; - } - - } -}); - -/***/ }), - -/***/ "./src/mixins/FilesByMonthMixin.js": -/*!*****************************************!*\ - !*** ./src/mixins/FilesByMonthMixin.js ***! - \*****************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/** - * @copyright Copyright (c) 2022 Louis Chemineau - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'FilesByMonthMixin', - computed: { - /** - * @return {object} - */ - fileIdsByMonth() { - const filesByMonth = {}; - - for (const fileId of this.fetchedFileIds) { - const file = this.files[fileId]; - filesByMonth[file.month] = filesByMonth[file.month] ?? []; - filesByMonth[file.month].push(file.fileid); - } // Sort files in sections. - - - Object.keys(filesByMonth).forEach(month => filesByMonth[month].sort(this.sortFilesByTimestamp)); - return filesByMonth; - }, - - /** - * @return {string[]} - */ - monthsList() { - return Object.keys(this.fileIdsByMonth).sort((month1, month2) => month1 > month2 ? -1 : 1); - } - - } -}); - -/***/ }), - -/***/ "./src/services/PhotoSearch.js": -/*!*************************************!*\ - !*** ./src/services/PhotoSearch.js ***! - \*************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* export default binding */ __WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _utils_fileUtils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils/fileUtils.js */ "./src/utils/fileUtils.js"); -/* harmony import */ var _nextcloud_auth__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/auth */ "./node_modules/@nextcloud/auth/dist/index.esm.js"); -/* harmony import */ var _AllowedMimes_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./AllowedMimes.js */ "./src/services/AllowedMimes.js"); -/* harmony import */ var _DavClient_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./DavClient.js */ "./src/services/DavClient.js"); -/* harmony import */ var _DavRequest_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./DavRequest.js */ "./src/services/DavRequest.js"); -/* harmony import */ var _nextcloud_moment__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @nextcloud/moment */ "./node_modules/@nextcloud/moment/dist/index.js"); -/* harmony import */ var _nextcloud_moment__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_moment__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _nextcloud_router__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @nextcloud/router */ "./node_modules/@nextcloud/router/dist/index.js"); -/** - * @copyright Copyright (c) 2019 John Molakvoæ - * - * @author John Molakvoæ - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ - - - - - - - -/** - * List files from a folder and filter out unwanted mimes - * - * @param {object} path the lookup path - * @param {object} [options] used for the cancellable requests - * @param {number} [options.firstResult=0] Index of the first result that we want (starts at 0) - * @param {number} [options.nbResults=200] The number of file to fetch - * @param {string[]} [options.mimesType=allMimes] Mime type of the files - * @param {boolean} [options.full=false] get full data of the files - * @param {boolean} [options.onThisDay=false] get only items from this day of year - * @param {boolean} [options.onlyFavorites=false] get only favorite items - * @return {Promise} the file list - */ - -/* harmony default export */ async function __WEBPACK_DEFAULT_EXPORT__() { - let path = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : ''; - let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; - // default function options - options = { - firstResult: 0, - nbResults: 200, - mimesType: _AllowedMimes_js__WEBPACK_IMPORTED_MODULE_2__.allMimes, - onThisDay: false, - onlyFavorites: false, - ...options - }; - const prefixPath = `/files/${(0,_nextcloud_auth__WEBPACK_IMPORTED_MODULE_1__.getCurrentUser)().uid}`; // generating the search or condition - // based on the allowed mimetypes - - const orMime = options.mimesType.reduce((str, mime) => `${str} - - - - - ${mime} - - `, ''); - const eqFavorites = options.onlyFavorites ? ` - - - - 1 - ` : ''; - const onThisDay = options.onThisDay ? `${Array(20).fill(1).map((_, years) => { - const start = _nextcloud_moment__WEBPACK_IMPORTED_MODULE_5___default()(Date.now()).startOf('day').subtract(3, 'd').subtract(years + 1, 'y'); - const end = _nextcloud_moment__WEBPACK_IMPORTED_MODULE_5___default()(Date.now()).endOf('day').add(3, 'd').subtract(years + 1, 'y'); - return ` - - - - - ${start.format((_nextcloud_moment__WEBPACK_IMPORTED_MODULE_5___default().defaultFormatUtc))} - - - - - - ${end.format((_nextcloud_moment__WEBPACK_IMPORTED_MODULE_5___default().defaultFormatUtc))} - - `; - }).join('\n')}` : ''; - options = Object.assign({ - method: 'SEARCH', - headers: { - 'content-Type': 'text/xml' - }, - data: ` - - - - - ${_DavRequest_js__WEBPACK_IMPORTED_MODULE_4__.props} - - - - - ${prefixPath}/${path} - infinity - - - - - - ${orMime} - - ${eqFavorites} - ${onThisDay} - - - - - - - - - - ${options.nbResults} - ${options.firstResult} - - - `, - deep: true, - details: true - }, options); - const response = await _DavClient_js__WEBPACK_IMPORTED_MODULE_3__["default"].getDirectoryContents('', options); - return response.data.map(data => (0,_utils_fileUtils_js__WEBPACK_IMPORTED_MODULE_0__.genFileInfo)(data)).map(file => ({ ...file, - source: (0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_6__.generateRemoteUrl)(`dav${file.filename}`) - })); -} - -/***/ }), - -/***/ "./src/components/Actions/ActionDownload.vue": -/*!***************************************************!*\ - !*** ./src/components/Actions/ActionDownload.vue ***! - \***************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _ActionDownload_vue_vue_type_template_id_1aefa300___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./ActionDownload.vue?vue&type=template&id=1aefa300& */ "./src/components/Actions/ActionDownload.vue?vue&type=template&id=1aefa300&"); -/* harmony import */ var _ActionDownload_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./ActionDownload.vue?vue&type=script&lang=js& */ "./src/components/Actions/ActionDownload.vue?vue&type=script&lang=js&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - - - -/* normalize component */ -; -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])( - _ActionDownload_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _ActionDownload_vue_vue_type_template_id_1aefa300___WEBPACK_IMPORTED_MODULE_0__.render, - _ActionDownload_vue_vue_type_template_id_1aefa300___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - null, - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/Actions/ActionDownload.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/Actions/ActionDownload.vue?vue&type=script&lang=js&": -/*!****************************************************************************!*\ - !*** ./src/components/Actions/ActionDownload.vue?vue&type=script&lang=js& ***! - \****************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_ActionDownload_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActionDownload.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Actions/ActionDownload.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_ActionDownload_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/components/Actions/ActionDownload.vue?vue&type=template&id=1aefa300&": -/*!**********************************************************************************!*\ - !*** ./src/components/Actions/ActionDownload.vue?vue&type=template&id=1aefa300& ***! - \**********************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_ActionDownload_vue_vue_type_template_id_1aefa300___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_ActionDownload_vue_vue_type_template_id_1aefa300___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_ActionDownload_vue_vue_type_template_id_1aefa300___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActionDownload.vue?vue&type=template&id=1aefa300& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Actions/ActionDownload.vue?vue&type=template&id=1aefa300&"); - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Actions/ActionDownload.vue?vue&type=template&id=1aefa300&": -/*!*************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Actions/ActionDownload.vue?vue&type=template&id=1aefa300& ***! - \*************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c( - "NcActionLink", - { - attrs: { - "close-after-click": true, - href: _vm.downloadUrl, - download: _vm.downloadUrl, - "aria-label": _vm.title, - }, - }, - [ - _vm._v("\n\t" + _vm._s(_vm.title) + "\n\t"), - _vm._t("icon", null, { slot: "icon" }), - ], - 2 - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }) - -}]); -//# sourceMappingURL=photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesByMonthMixin_js-src_components_Actions_ActionDo-a6eb03.js.map?v=c553c993a1b81dc8447c \ No newline at end of file diff --git a/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesByMonthMixin_js-src_components_Actions_ActionDo-a6eb03.js.LICENSE.txt b/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesByMonthMixin_js-src_components_Actions_ActionDo-a6eb03.js.LICENSE.txt deleted file mode 100644 index 3edd37b78..000000000 --- a/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesByMonthMixin_js-src_components_Actions_ActionDo-a6eb03.js.LICENSE.txt +++ /dev/null @@ -1,43 +0,0 @@ -/** - * @copyright Copyright (c) 2019 John Molakvoæ - * - * @author John Molakvoæ - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ - -/** - * @copyright Copyright (c) 2022 Louis Chemineau - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ diff --git a/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesByMonthMixin_js-src_components_Actions_ActionDo-a6eb03.js.map b/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesByMonthMixin_js-src_components_Actions_ActionDo-a6eb03.js.map deleted file mode 100644 index 1d4f93bc3..000000000 --- a/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesByMonthMixin_js-src_components_Actions_ActionDo-a6eb03.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesByMonthMixin_js-src_components_Actions_ActionDo-a6eb03.js?v=c553c993a1b81dc8447c","mappings":";;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;AC9DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;ACtHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;ACjDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;AC5IA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;ACtCA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AEAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sources":["webpack:///photos/src/components/Actions/ActionDownload.vue?vue&type=script&lang=js&","webpack:///photos/src/mixins/FetchFilesMixin.js","webpack:///photos/src/mixins/FilesByMonthMixin.js","webpack:///photos/src/services/PhotoSearch.js","webpack:///photos/src/components/Actions/ActionDownload.vue","webpack://photos/./src/components/Actions/ActionDownload.vue?56d1","webpack:///photos/src/components/Actions/ActionDownload.vue?vue&type=template&id=1aefa300&","webpack://photos/./src/components/Actions/ActionDownload.vue?9b4a"],"sourcesContent":["//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport { mapGetters } from 'vuex';\nimport { generateUrl } from '@nextcloud/router';\nimport { NcActionLink } from '@nextcloud/vue';\nexport default {\n name: 'ActionDownload',\n components: {\n NcActionLink\n },\n props: {\n title: {\n type: String,\n required: true\n },\n selectedFileIds: {\n type: Array,\n required: true\n }\n },\n computed: { ...mapGetters(['files']),\n\n downloadUrl() {\n const params = new URLSearchParams();\n params.append('files', JSON.stringify(this.fileNames));\n return generateUrl(`/apps/files/ajax/download.php?${params}`);\n },\n\n fileNames() {\n return this.selectedFileIds.map(fileId => this.files[fileId].filename);\n }\n\n }\n};","/**\n * @copyright Copyright (c) 2022 Louis Chemineau \n *\n * @author Louis Chemineau \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 .\n *\n */\nimport logger from '../services/logger.js';\nimport getPhotos from '../services/PhotoSearch.js';\nimport SemaphoreWithPriority from '../utils/semaphoreWithPriority.js';\nimport AbortControllerMixin from './AbortControllerMixin.js';\nexport default {\n name: 'FetchFilesMixin',\n mixins: [AbortControllerMixin],\n\n data() {\n return {\n errorFetchingFiles: null,\n loadingFiles: false,\n doneFetchingFiles: false,\n semaphore: new SemaphoreWithPriority(30),\n fetchSemaphore: new SemaphoreWithPriority(1),\n semaphoreSymbol: null,\n fetchedFileIds: []\n };\n },\n\n watch: {\n $route() {\n this.resetFetchFilesState();\n }\n\n },\n methods: {\n /**\n * @param {string} path - Path to pass to getPhotos.\n * @param {object} options - Options to pass to getPhotos.\n * @param {string[]} [blacklist=[]] - Array of ids to filter out.\n * @return {Promise} - The next batch of data depending on global offset.\n */\n async fetchFiles() {\n let path = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n let blacklist = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];\n\n if (this.doneFetchingFiles || this.loadingFiles) {\n return [];\n }\n\n const semaphoreSymbol = await this.semaphore.acquire(() => 0, 'fetchFiles');\n const fetchSemaphoreSymbol = await this.fetchSemaphore.acquire();\n\n try {\n this.errorFetchingFiles = null;\n this.loadingFiles = true;\n this.semaphoreSymbol = semaphoreSymbol;\n const numberOfImagesPerBatch = 200; // Load next batch of images\n\n const fetchedFiles = await getPhotos(path, {\n firstResult: this.fetchedFileIds.length,\n nbResults: numberOfImagesPerBatch,\n ...options,\n signal: this.abortController.signal\n }); // If we get less files than requested that means we got to the end\n\n if (fetchedFiles.length !== numberOfImagesPerBatch) {\n this.doneFetchingFiles = true;\n }\n\n const fileIds = fetchedFiles.map(file => file.fileid).filter(fileId => !this.fetchedFileIds.includes(fileId)); // Filter to prevent duplicate fileIds.\n\n this.fetchedFileIds.push(...fileIds.map(fileId => fileId.toString()).filter(fileId => !blacklist.includes(fileId)));\n this.$store.dispatch('appendFiles', fetchedFiles);\n logger.debug(`[FetchFilesMixin] Fetched ${fileIds.length} new files: `, fileIds);\n return fileIds;\n } catch (error) {\n if (error.response?.status === 404) {\n this.errorFetchingFiles = 404;\n } else if (error.code === 'ERR_CANCELED') {\n return [];\n } else {\n this.errorFetchingFiles = error;\n } // cancelled request, moving on...\n\n\n logger.error('Error fetching files', error);\n console.error(error);\n } finally {\n this.loadingFiles = false;\n this.semaphore.release(semaphoreSymbol);\n this.fetchSemaphore.release(fetchSemaphoreSymbol);\n }\n\n return [];\n },\n\n resetFetchFilesState() {\n this.doneFetchingFiles = false;\n this.errorFetchingFiles = null;\n this.loadingFiles = false;\n this.fetchedFileIds = [];\n }\n\n }\n};","/**\n * @copyright Copyright (c) 2022 Louis Chemineau \n *\n * @author Louis Chemineau \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 .\n *\n */\nexport default {\n name: 'FilesByMonthMixin',\n computed: {\n /**\n * @return {object}\n */\n fileIdsByMonth() {\n const filesByMonth = {};\n\n for (const fileId of this.fetchedFileIds) {\n const file = this.files[fileId];\n filesByMonth[file.month] = filesByMonth[file.month] ?? [];\n filesByMonth[file.month].push(file.fileid);\n } // Sort files in sections.\n\n\n Object.keys(filesByMonth).forEach(month => filesByMonth[month].sort(this.sortFilesByTimestamp));\n return filesByMonth;\n },\n\n /**\n * @return {string[]}\n */\n monthsList() {\n return Object.keys(this.fileIdsByMonth).sort((month1, month2) => month1 > month2 ? -1 : 1);\n }\n\n }\n};","/**\n * @copyright Copyright (c) 2019 John Molakvoæ \n *\n * @author John Molakvoæ \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 .\n *\n */\nimport { genFileInfo } from '../utils/fileUtils.js';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport { allMimes } from './AllowedMimes.js';\nimport client from './DavClient.js';\nimport { props } from './DavRequest.js';\nimport moment from '@nextcloud/moment';\nimport { generateRemoteUrl } from '@nextcloud/router';\n/**\n * List files from a folder and filter out unwanted mimes\n *\n * @param {object} path the lookup path\n * @param {object} [options] used for the cancellable requests\n * @param {number} [options.firstResult=0] Index of the first result that we want (starts at 0)\n * @param {number} [options.nbResults=200] The number of file to fetch\n * @param {string[]} [options.mimesType=allMimes] Mime type of the files\n * @param {boolean} [options.full=false] get full data of the files\n * @param {boolean} [options.onThisDay=false] get only items from this day of year\n * @param {boolean} [options.onlyFavorites=false] get only favorite items\n * @return {Promise} the file list\n */\n\nexport default async function () {\n let path = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n // default function options\n options = {\n firstResult: 0,\n nbResults: 200,\n mimesType: allMimes,\n onThisDay: false,\n onlyFavorites: false,\n ...options\n };\n const prefixPath = `/files/${getCurrentUser().uid}`; // generating the search or condition\n // based on the allowed mimetypes\n\n const orMime = options.mimesType.reduce((str, mime) => `${str}\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t${mime}\n\t\t\n\t`, '');\n const eqFavorites = options.onlyFavorites ? `\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t1\n\t\t\t` : '';\n const onThisDay = options.onThisDay ? `${Array(20).fill(1).map((_, years) => {\n const start = moment(Date.now()).startOf('day').subtract(3, 'd').subtract(years + 1, 'y');\n const end = moment(Date.now()).endOf('day').add(3, 'd').subtract(years + 1, 'y');\n return `\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t${start.format(moment.defaultFormatUtc)}\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t${end.format(moment.defaultFormatUtc)}\n\t\t\t\t\n\t\t\t`;\n }).join('\\n')}` : '';\n options = Object.assign({\n method: 'SEARCH',\n headers: {\n 'content-Type': 'text/xml'\n },\n data: `\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t${props}\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t${prefixPath}/${path}\n\t\t\t\t\t\t\tinfinity\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t${orMime}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t${eqFavorites}\n\t\t\t\t\t\t\t${onThisDay}\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t${options.nbResults}\n\t\t\t\t\t\t${options.firstResult}\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t`,\n deep: true,\n details: true\n }, options);\n const response = await client.getDirectoryContents('', options);\n return response.data.map(data => genFileInfo(data)).map(file => ({ ...file,\n source: generateRemoteUrl(`dav${file.filename}`)\n }));\n}","import { render, staticRenderFns } from \"./ActionDownload.vue?vue&type=template&id=1aefa300&\"\nimport script from \"./ActionDownload.vue?vue&type=script&lang=js&\"\nexport * from \"./ActionDownload.vue?vue&type=script&lang=js&\"\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\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/louis/workspace/nextcloud/apps/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('1aefa300')) {\n api.createRecord('1aefa300', component.options)\n } else {\n api.reload('1aefa300', component.options)\n }\n module.hot.accept(\"./ActionDownload.vue?vue&type=template&id=1aefa300&\", function () {\n api.rerender('1aefa300', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/Actions/ActionDownload.vue\"\nexport default component.exports","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActionDownload.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!./ActionDownload.vue?vue&type=script&lang=js&\"","export * from \"-!../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActionDownload.vue?vue&type=template&id=1aefa300&\"","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"NcActionLink\",\n {\n attrs: {\n \"close-after-click\": true,\n href: _vm.downloadUrl,\n download: _vm.downloadUrl,\n \"aria-label\": _vm.title,\n },\n },\n [\n _vm._v(\"\\n\\t\" + _vm._s(_vm.title) + \"\\n\\t\"),\n _vm._t(\"icon\", null, { slot: \"icon\" }),\n ],\n 2\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesByMonthMixin_js.js b/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesByMonthMixin_js.js deleted file mode 100644 index a8a8e5402..000000000 --- a/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesByMonthMixin_js.js +++ /dev/null @@ -1,366 +0,0 @@ -"use strict"; -(self["webpackChunkphotos"] = self["webpackChunkphotos"] || []).push([["src_mixins_FetchFilesMixin_js-src_mixins_FilesByMonthMixin_js"],{ - -/***/ "./src/mixins/FetchFilesMixin.js": -/*!***************************************!*\ - !*** ./src/mixins/FetchFilesMixin.js ***! - \***************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _services_logger_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../services/logger.js */ "./src/services/logger.js"); -/* harmony import */ var _services_PhotoSearch_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../services/PhotoSearch.js */ "./src/services/PhotoSearch.js"); -/* harmony import */ var _utils_semaphoreWithPriority_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils/semaphoreWithPriority.js */ "./src/utils/semaphoreWithPriority.js"); -/* harmony import */ var _AbortControllerMixin__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./AbortControllerMixin */ "./src/mixins/AbortControllerMixin.js"); -/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js"); -/** - * @copyright Copyright (c) 2022 Louis Chemineau - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ - - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'FetchFilesMixin', - mixins: [_AbortControllerMixin__WEBPACK_IMPORTED_MODULE_3__["default"]], - - data() { - return { - errorFetchingFiles: null, - loadingFiles: false, - doneFetchingFiles: false, - semaphore: new _utils_semaphoreWithPriority_js__WEBPACK_IMPORTED_MODULE_2__["default"](30), - fetchSemaphore: new _utils_semaphoreWithPriority_js__WEBPACK_IMPORTED_MODULE_2__["default"](1), - semaphoreSymbol: null, - fetchedFileIds: [] - }; - }, - - watch: { - $route() { - this.resetFetchFilesState(); - } - - }, - methods: { - /** - * @param {string} path - Path to pass to getPhotos. - * @param {object} options - Options to pass to getPhotos. - * @param {string[]} [blacklist=[]] - Array of ids to filter out. - * @return {Promise} - The next batch of data depending on global offset. - */ - async fetchFiles() { - let path = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : ''; - let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; - let blacklist = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : []; - - if (this.doneFetchingFiles || this.loadingFiles) { - return []; - } - - const semaphoreSymbol = await this.semaphore.acquire(() => 0, 'fetchFiles'); - const fetchSemaphoreSymbol = await this.fetchSemaphore.acquire(); - - try { - this.errorFetchingFiles = null; - this.loadingFiles = true; - this.semaphoreSymbol = semaphoreSymbol; - const numberOfImagesPerBatch = 1000; // Load next batch of images - - const fetchedFiles = await (0,_services_PhotoSearch_js__WEBPACK_IMPORTED_MODULE_1__["default"])(path, { - firstResult: this.fetchedFileIds.length, - nbResults: numberOfImagesPerBatch, - ...options, - signal: this.abortController.signal - }); // If we get less files than requested that means we got to the end - - if (fetchedFiles.length !== numberOfImagesPerBatch) { - this.doneFetchingFiles = true; - } - - const fileIds = fetchedFiles.map(file => file.fileid).filter(fileId => !this.fetchedFileIds.includes(fileId)); // Filter to prevent duplicate fileIds. - - this.fetchedFileIds.push(...fileIds.map(fileId => fileId.toString()).filter(fileId => !blacklist.includes(fileId))); - this.$store.dispatch('appendFiles', fetchedFiles); - _services_logger_js__WEBPACK_IMPORTED_MODULE_0__["default"].debug(`[FetchFilesMixin] Fetched ${fileIds.length} new files: `, fileIds); - return fileIds; - } catch (error) { - if (error.response?.status === 404) { - this.errorFetchingFiles = 404; - } else if (error.code === 'ERR_CANCELED') { - return []; - } else { - this.errorFetchingFiles = error; - } // cancelled request, moving on... - - - _services_logger_js__WEBPACK_IMPORTED_MODULE_0__["default"].error('Error fetching files', error); - console.error(error); - } finally { - this.loadingFiles = false; - this.semaphore.release(semaphoreSymbol); - this.fetchSemaphore.release(fetchSemaphoreSymbol); - } - - return []; - }, - - resetFetchFilesState() { - this.doneFetchingFiles = false; - this.errorFetchingFiles = null; - this.loadingFiles = false; - this.fetchedFileIds = []; - } - - } -}); - -/***/ }), - -/***/ "./src/mixins/FilesByMonthMixin.js": -/*!*****************************************!*\ - !*** ./src/mixins/FilesByMonthMixin.js ***! - \*****************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/** - * @copyright Copyright (c) 2022 Louis Chemineau - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'FilesByMonthMixin', - computed: { - /** - * @return {object} - */ - fileIdsByMonth() { - const filesByMonth = {}; - - for (const fileId of this.fetchedFileIds) { - const file = this.files[fileId]; - filesByMonth[file.month] = filesByMonth[file.month] ?? []; - filesByMonth[file.month].push(file.fileid); - } // Sort files in sections. - - - Object.keys(filesByMonth).forEach(month => filesByMonth[month].sort(this.sortFilesByTimestamp)); - return filesByMonth; - }, - - /** - * @return {string[]} - */ - monthsList() { - return Object.keys(this.fileIdsByMonth).sort((month1, month2) => month1 > month2 ? -1 : 1); - } - - } -}); - -/***/ }), - -/***/ "./src/services/PhotoSearch.js": -/*!*************************************!*\ - !*** ./src/services/PhotoSearch.js ***! - \*************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* export default binding */ __WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _utils_fileUtils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils/fileUtils.js */ "./src/utils/fileUtils.js"); -/* harmony import */ var _nextcloud_auth__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/auth */ "./node_modules/@nextcloud/auth/dist/index.esm.js"); -/* harmony import */ var _AllowedMimes_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./AllowedMimes.js */ "./src/services/AllowedMimes.js"); -/* harmony import */ var _DavClient_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./DavClient.js */ "./src/services/DavClient.js"); -/* harmony import */ var _DavRequest_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./DavRequest.js */ "./src/services/DavRequest.js"); -/* harmony import */ var _nextcloud_moment__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @nextcloud/moment */ "./node_modules/@nextcloud/moment/dist/index.js"); -/* harmony import */ var _nextcloud_moment__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_moment__WEBPACK_IMPORTED_MODULE_5__); -/** - * @copyright Copyright (c) 2019 John Molakvoæ - * - * @author John Molakvoæ - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ - - - - - - -/** - * List files from a folder and filter out unwanted mimes - * - * @param {object} path the lookup path - * @param {object} [options] used for the cancellable requests - * @param {number} [options.firstResult=0] Index of the first result that we want (starts at 0) - * @param {number} [options.nbResults=200] The number of file to fetch - * @param {string[]} [options.mimesType=allMimes] Mime type of the files - * @param {boolean} [options.full=false] get full data of the files - * @param {boolean} [options.onThisDay=false] get only items from this day of year - * @param {boolean} [options.onlyFavorites=false] get only favorite items - * @return {Promise} the file list - */ - -/* harmony default export */ async function __WEBPACK_DEFAULT_EXPORT__() { - let path = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : ''; - let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; - // default function options - options = { - firstResult: 0, - nbResults: 200, - mimesType: _AllowedMimes_js__WEBPACK_IMPORTED_MODULE_2__.allMimes, - onThisDay: false, - onlyFavorites: false, - ...options - }; - const prefixPath = `/files/${(0,_nextcloud_auth__WEBPACK_IMPORTED_MODULE_1__.getCurrentUser)().uid}`; // generating the search or condition - // based on the allowed mimetypes - - const orMime = options.mimesType.reduce((str, mime) => `${str} - - - - - ${mime} - - `, ''); - const eqFavorites = options.onlyFavorites ? ` - - - - 1 - ` : ''; - const onThisDay = options.onThisDay ? `${Array(20).fill(1).map((_, years) => { - const start = _nextcloud_moment__WEBPACK_IMPORTED_MODULE_5___default()(Date.now()).startOf('day').subtract(3, 'd').subtract(years + 1, 'y'); - const end = _nextcloud_moment__WEBPACK_IMPORTED_MODULE_5___default()(Date.now()).endOf('day').add(3, 'd').subtract(years + 1, 'y'); - return ` - - - - - ${start.format((_nextcloud_moment__WEBPACK_IMPORTED_MODULE_5___default().defaultFormatUtc))} - - - - - - ${end.format((_nextcloud_moment__WEBPACK_IMPORTED_MODULE_5___default().defaultFormatUtc))} - - `; - }).join('\n')}` : ''; - options = Object.assign({ - method: 'SEARCH', - headers: { - 'content-Type': 'text/xml' - }, - data: ` - - - - - ${_DavRequest_js__WEBPACK_IMPORTED_MODULE_4__.props} - - - - - ${prefixPath}/${path} - infinity - - - - - - ${orMime} - - ${eqFavorites} - ${onThisDay} - - - - - - - - - - ${options.nbResults} - ${options.firstResult} - - - `, - deep: true, - details: true - }, options); - const response = await _DavClient_js__WEBPACK_IMPORTED_MODULE_3__["default"].getDirectoryContents('', options); - return response.data.map(data => (0,_utils_fileUtils_js__WEBPACK_IMPORTED_MODULE_0__.genFileInfo)(data)) // remove prefix path from full file path - .map(data => ({ ...data, - filename: data.filename.replace(prefixPath, '') - })); -} - -/***/ }) - -}]); -//# sourceMappingURL=photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesByMonthMixin_js.js.map?v=e21efac55b8f589fa3b2 \ No newline at end of file diff --git a/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesByMonthMixin_js.js.map b/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesByMonthMixin_js.js.map deleted file mode 100644 index 50a8fd0ed..000000000 --- a/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesByMonthMixin_js.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesByMonthMixin_js.js?v=e21efac55b8f589fa3b2","mappings":";;;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;ACtHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;ACjDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sources":["webpack:///photos/src/mixins/FetchFilesMixin.js","webpack:///photos/src/mixins/FilesByMonthMixin.js","webpack:///photos/src/services/PhotoSearch.js"],"sourcesContent":["/**\n * @copyright Copyright (c) 2022 Louis Chemineau \n *\n * @author Louis Chemineau \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 .\n *\n */\nimport logger from '../services/logger.js';\nimport getPhotos from '../services/PhotoSearch.js';\nimport SemaphoreWithPriority from '../utils/semaphoreWithPriority.js';\nimport AbortControllerMixin from './AbortControllerMixin';\nexport default {\n name: 'FetchFilesMixin',\n mixins: [AbortControllerMixin],\n\n data() {\n return {\n errorFetchingFiles: null,\n loadingFiles: false,\n doneFetchingFiles: false,\n semaphore: new SemaphoreWithPriority(30),\n fetchSemaphore: new SemaphoreWithPriority(1),\n semaphoreSymbol: null,\n fetchedFileIds: []\n };\n },\n\n watch: {\n $route() {\n this.resetFetchFilesState();\n }\n\n },\n methods: {\n /**\n * @param {string} path - Path to pass to getPhotos.\n * @param {object} options - Options to pass to getPhotos.\n * @param {string[]} [blacklist=[]] - Array of ids to filter out.\n * @return {Promise} - The next batch of data depending on global offset.\n */\n async fetchFiles() {\n let path = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n let blacklist = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];\n\n if (this.doneFetchingFiles || this.loadingFiles) {\n return [];\n }\n\n const semaphoreSymbol = await this.semaphore.acquire(() => 0, 'fetchFiles');\n const fetchSemaphoreSymbol = await this.fetchSemaphore.acquire();\n\n try {\n this.errorFetchingFiles = null;\n this.loadingFiles = true;\n this.semaphoreSymbol = semaphoreSymbol;\n const numberOfImagesPerBatch = 1000; // Load next batch of images\n\n const fetchedFiles = await getPhotos(path, {\n firstResult: this.fetchedFileIds.length,\n nbResults: numberOfImagesPerBatch,\n ...options,\n signal: this.abortController.signal\n }); // If we get less files than requested that means we got to the end\n\n if (fetchedFiles.length !== numberOfImagesPerBatch) {\n this.doneFetchingFiles = true;\n }\n\n const fileIds = fetchedFiles.map(file => file.fileid).filter(fileId => !this.fetchedFileIds.includes(fileId)); // Filter to prevent duplicate fileIds.\n\n this.fetchedFileIds.push(...fileIds.map(fileId => fileId.toString()).filter(fileId => !blacklist.includes(fileId)));\n this.$store.dispatch('appendFiles', fetchedFiles);\n logger.debug(`[FetchFilesMixin] Fetched ${fileIds.length} new files: `, fileIds);\n return fileIds;\n } catch (error) {\n if (error.response?.status === 404) {\n this.errorFetchingFiles = 404;\n } else if (error.code === 'ERR_CANCELED') {\n return [];\n } else {\n this.errorFetchingFiles = error;\n } // cancelled request, moving on...\n\n\n logger.error('Error fetching files', error);\n console.error(error);\n } finally {\n this.loadingFiles = false;\n this.semaphore.release(semaphoreSymbol);\n this.fetchSemaphore.release(fetchSemaphoreSymbol);\n }\n\n return [];\n },\n\n resetFetchFilesState() {\n this.doneFetchingFiles = false;\n this.errorFetchingFiles = null;\n this.loadingFiles = false;\n this.fetchedFileIds = [];\n }\n\n }\n};","/**\n * @copyright Copyright (c) 2022 Louis Chemineau \n *\n * @author Louis Chemineau \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 .\n *\n */\nexport default {\n name: 'FilesByMonthMixin',\n computed: {\n /**\n * @return {object}\n */\n fileIdsByMonth() {\n const filesByMonth = {};\n\n for (const fileId of this.fetchedFileIds) {\n const file = this.files[fileId];\n filesByMonth[file.month] = filesByMonth[file.month] ?? [];\n filesByMonth[file.month].push(file.fileid);\n } // Sort files in sections.\n\n\n Object.keys(filesByMonth).forEach(month => filesByMonth[month].sort(this.sortFilesByTimestamp));\n return filesByMonth;\n },\n\n /**\n * @return {string[]}\n */\n monthsList() {\n return Object.keys(this.fileIdsByMonth).sort((month1, month2) => month1 > month2 ? -1 : 1);\n }\n\n }\n};","/**\n * @copyright Copyright (c) 2019 John Molakvoæ \n *\n * @author John Molakvoæ \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 .\n *\n */\nimport { genFileInfo } from '../utils/fileUtils.js';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport { allMimes } from './AllowedMimes.js';\nimport client from './DavClient.js';\nimport { props } from './DavRequest.js';\nimport moment from '@nextcloud/moment';\n/**\n * List files from a folder and filter out unwanted mimes\n *\n * @param {object} path the lookup path\n * @param {object} [options] used for the cancellable requests\n * @param {number} [options.firstResult=0] Index of the first result that we want (starts at 0)\n * @param {number} [options.nbResults=200] The number of file to fetch\n * @param {string[]} [options.mimesType=allMimes] Mime type of the files\n * @param {boolean} [options.full=false] get full data of the files\n * @param {boolean} [options.onThisDay=false] get only items from this day of year\n * @param {boolean} [options.onlyFavorites=false] get only favorite items\n * @return {Promise} the file list\n */\n\nexport default async function () {\n let path = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n // default function options\n options = {\n firstResult: 0,\n nbResults: 200,\n mimesType: allMimes,\n onThisDay: false,\n onlyFavorites: false,\n ...options\n };\n const prefixPath = `/files/${getCurrentUser().uid}`; // generating the search or condition\n // based on the allowed mimetypes\n\n const orMime = options.mimesType.reduce((str, mime) => `${str}\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t${mime}\n\t\t\n\t`, '');\n const eqFavorites = options.onlyFavorites ? `\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t1\n\t\t\t` : '';\n const onThisDay = options.onThisDay ? `${Array(20).fill(1).map((_, years) => {\n const start = moment(Date.now()).startOf('day').subtract(3, 'd').subtract(years + 1, 'y');\n const end = moment(Date.now()).endOf('day').add(3, 'd').subtract(years + 1, 'y');\n return `\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t${start.format(moment.defaultFormatUtc)}\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t${end.format(moment.defaultFormatUtc)}\n\t\t\t\t\n\t\t\t`;\n }).join('\\n')}` : '';\n options = Object.assign({\n method: 'SEARCH',\n headers: {\n 'content-Type': 'text/xml'\n },\n data: `\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t${props}\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t${prefixPath}/${path}\n\t\t\t\t\t\t\tinfinity\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t${orMime}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t${eqFavorites}\n\t\t\t\t\t\t\t${onThisDay}\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t${options.nbResults}\n\t\t\t\t\t\t${options.firstResult}\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t`,\n deep: true,\n details: true\n }, options);\n const response = await client.getDirectoryContents('', options);\n return response.data.map(data => genFileInfo(data)) // remove prefix path from full file path\n .map(data => ({ ...data,\n filename: data.filename.replace(prefixPath, '')\n }));\n}"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesSelectionMixin_js-node_modules_vue-material-des-bd2ac8.js b/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesSelectionMixin_js-node_modules_vue-material-des-bd2ac8.js deleted file mode 100644 index 2520f8729..000000000 --- a/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesSelectionMixin_js-node_modules_vue-material-des-bd2ac8.js +++ /dev/null @@ -1,3 +0,0 @@ -/*! For license information please see photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesSelectionMixin_js-node_modules_vue-material-des-bd2ac8.js.LICENSE.txt */ -"use strict";(self.webpackChunkphotos=self.webpackChunkphotos||[]).push([["src_mixins_FetchFilesMixin_js-src_mixins_FilesSelectionMixin_js-node_modules_vue-material-des-bd2ac8"],{66951:(n,t,e)=>{e.d(t,{Z:()=>W});var r=e(59537),i=e(94236),o=e(45994),a=e(3301),s=e(81067),c=e(2161),l=e(80351),u=e.n(l);function d(n,t){var e=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(n,t).enumerable}))),e.push.apply(e,r)}return e}function f(n){for(var t=1;t0&&void 0!==h[0]?h[0]:"",e=h.length>1&&void 0!==h[1]?h[1]:{},e=f({firstResult:0,nbResults:200,mimesType:a.Oj,onThisDay:!1,onlyFavorites:!1},e),r="/files/".concat((0,o.ts)().uid),l=e.mimesType.reduce((function(n,t){return"".concat(n,"\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t").concat(t,"\n\t\t\n\t")}),""),d=e.onlyFavorites?"\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t1\n\t\t\t":"",p=e.onThisDay?"".concat(Array(20).fill(1).map((function(n,t){var e=u()(Date.now()).startOf("day").subtract(3,"d").subtract(t+1,"y"),r=u()(Date.now()).endOf("day").add(3,"d").subtract(t+1,"y");return"\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t".concat(e.format(u().defaultFormatUtc),"\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t").concat(r.format(u().defaultFormatUtc),"\n\t\t\t\t\n\t\t\t")})).join("\n"),""):"",e=Object.assign({method:"SEARCH",headers:{"content-Type":"text/xml"},data:'\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t'.concat(c.N,"\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t").concat(r,"/").concat(t,"\n\t\t\t\t\t\t\tinfinity\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t").concat(l,"\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t").concat(d,"\n\t\t\t\t\t\t\t").concat(p,"\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t").concat(e.nbResults,"\n\t\t\t\t\t\t").concat(e.firstResult,"\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t"),deep:!0,details:!0},e),n.next=10,s.Z.getDirectoryContents("",e);case 10:return m=n.sent,n.abrupt("return",m.data.map((function(n){return(0,i.AX)(n)})).map((function(n){return f(f({},n),{},{filename:n.filename.replace(r,"")})})));case 12:case"end":return n.stop()}}),n)}))),y.apply(this,arguments)}var v=e(32114),b=e(69363),w=e(25108);function A(n){return function(n){if(Array.isArray(n))return C(n)}(n)||function(n){if("undefined"!=typeof Symbol&&null!=n[Symbol.iterator]||null!=n["@@iterator"])return Array.from(n)}(n)||function(n,t){if(!n)return;if("string"==typeof n)return C(n,t);var e=Object.prototype.toString.call(n).slice(8,-1);"Object"===e&&n.constructor&&(e=n.constructor.name);if("Map"===e||"Set"===e)return Array.from(n);if("Arguments"===e||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e))return C(n,t)}(n)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function C(n,t){(null==t||t>n.length)&&(t=n.length);for(var e=0,r=new Array(t);e0&&void 0!==n[0]?n[0]:"",o=n.length>1&&void 0!==n[1]?n[1]:{},a=n.length>2&&void 0!==n[2]?n[2]:[],!t.doneFetchingFiles&&!t.loadingFiles){e.next=5;break}return e.abrupt("return",[]);case 5:return e.next=7,t.semaphore.acquire((function(){return 0}),"fetchFiles");case 7:return s=e.sent,e.next=10,t.fetchSemaphore.acquire();case 10:return c=e.sent,e.prev=11,t.errorFetchingFiles=null,t.loadingFiles=!0,t.semaphoreSymbol=s,u=1e3,e.next=18,g(i,O(O({firstResult:t.fetchedFileIds.length,nbResults:u},o),{},{signal:t.abortController.signal}));case 18:return(d=e.sent).length!==u&&(t.doneFetchingFiles=!0),f=d.map((function(n){return n.fileid})).filter((function(n){return!t.fetchedFileIds.includes(n)})),(l=t.fetchedFileIds).push.apply(l,A(f.map((function(n){return n.toString()})).filter((function(n){return!a.includes(n)})))),t.$store.dispatch("appendFiles",d),r.Z.debug("[FetchFilesMixin] Fetched ".concat(f.length," new files: "),f),e.abrupt("return",f);case 27:if(e.prev=27,e.t0=e.catch(11),404!==(null===(p=e.t0.response)||void 0===p?void 0:p.status)){e.next=33;break}t.errorFetchingFiles=404,e.next=38;break;case 33:if("ERR_CANCELED"!==e.t0.code){e.next=37;break}return e.abrupt("return",[]);case 37:t.errorFetchingFiles=e.t0;case 38:r.Z.error("Error fetching files",e.t0),w.error(e.t0);case 40:return e.prev=40,t.loadingFiles=!1,t.semaphore.release(s),t.fetchSemaphore.release(c),e.finish(40);case 45:return e.abrupt("return",[]);case 46:case"end":return e.stop()}}),e,null,[[11,27,40,45]])})))()},resetFetchFilesState:function(){this.doneFetchingFiles=!1,this.errorFetchingFiles=null,this.loadingFiles=!1,this.fetchedFileIds=[]}}}},98171:(n,t,e)=>{e.d(t,{Z:()=>r});const r={name:"FilesSelectionMixin",data:function(){return{selection:{}}},methods:{onFileSelectToggle:function(n){var t=n.id,e=n.value;this.$set(this.selection,t,e)},onUncheckFiles:function(n){var t=this;n.forEach((function(n){return t.$set(t.selection,n,!1)}))},resetSelection:function(){this.selection={}}},computed:{selectedFileIds:function(){var n=this;return Object.keys(this.selection).filter((function(t){return n.selection[t]}))}}}},6726:(n,t,e)=>{e.d(t,{Z:()=>s});var r=e(87537),i=e.n(r),o=e(23645),a=e.n(o)()(i());a.push([n.id,".files-list-viewer[data-v-5196d262]{height:100%;position:relative}.files-list-viewer[data-v-5196d262] .empty-content__icon{width:200px;height:200px}.files-list-viewer[data-v-5196d262] .empty-content__icon .empty-content-illustration svg{width:200px;height:200px}.files-list-viewer .tiled-row[data-v-5196d262]{display:flex}.files-list-viewer__section-header[data-v-5196d262]{position:-webkit-sticky;position:sticky;top:0;z-index:3;background:var(--color-main-background)}.files-list-viewer__loader[data-v-5196d262]{margin:50px 0}","",{version:3,sources:["webpack://./src/components/FilesListViewer.vue"],names:[],mappings:"AAiNA,oCACC,WAAA,CACA,iBAAA,CAEA,0DACC,WAAA,CACA,YAAA,CAEA,0FACC,WAAA,CACA,YAAA,CAIF,+CACC,YAAA,CAGD,oDACC,uBAAA,CAAA,eAAA,CACA,KAAA,CACA,SAAA,CACA,uCAAA,CAGD,4CACC,aAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.files-list-viewer {\n\theight: 100%;\n\tposition: relative;\n\n\t::v-deep .empty-content__icon {\n\t\twidth: 200px;\n\t\theight: 200px;\n\n\t\t.empty-content-illustration svg {\n\t\t\twidth: 200px;\n\t\t\theight: 200px;\n\t\t}\n\t}\n\n\t.tiled-row {\n\t\tdisplay: flex;\n\t}\n\n\t&__section-header {\n\t\tposition: sticky;\n\t\ttop: 0;\n\t\tz-index: 3;\n\t\tbackground: var(--color-main-background);\n\t}\n\n\t&__loader {\n\t\tmargin: 50px 0;\n\t}\n}\n'],sourceRoot:""}]);const s=a},78504:(n,t,e)=>{e.d(t,{Z:()=>s});var r=e(87537),i=e.n(r),o=e(23645),a=e.n(o)()(i());a.push([n.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:""}]);const s=a},13319:(n,t,e)=>{e.d(t,{Z:()=>s});var r=e(87537),i=e.n(r),o=e(23645),a=e.n(o)()(i());a.push([n.id,".tiled-container[data-v-58b32a0e]{height:100%}.tiled-container .tiled-row[data-v-58b32a0e]{display:flex}","",{version:3,sources:["webpack://./src/components/TiledLayout.vue"],names:[],mappings:"AA8FA,kCACC,WAAA,CAEA,6CACC,YAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.tiled-container {\n\theight: 100%;\n\n\t.tiled-row {\n\t\tdisplay: flex;\n\t}\n}\n'],sourceRoot:""}]);const s=a},40321:(n,t,e)=>{e.d(t,{Z:()=>s});var r=e(87537),i=e.n(r),o=e(23645),a=e.n(o)()(i());a.push([n.id,".tiled-row[data-v-452165e4]{display:flex}","",{version:3,sources:["webpack://./src/components/TiledRows.vue"],names:[],mappings:"AAsCA,4BACC,YAAA",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.tiled-row {\n\tdisplay: flex;\n}\n'],sourceRoot:""}]);const s=a},21238:(n,t,e)=>{e.d(t,{Z:()=>s});var r=e(87537),i=e.n(r),o=e(23645),a=e.n(o)()(i());a.push([n.id,".vs-container[data-v-5e8733b7]{overflow-y:scroll;height:100%}.vs-rows-container[data-v-5e8733b7]{box-sizing:border-box}","",{version:3,sources:["webpack://./src/components/VirtualScrolling.vue"],names:[],mappings:"AAkTA,+BACC,iBAAA,CACA,WAAA,CAGD,oCACC,qBAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.vs-container {\n\toverflow-y: scroll;\n\theight: 100%;\n}\n\n.vs-rows-container {\n\tbox-sizing: border-box;\n}\n'],sourceRoot:""}]);const s=a},2470:(n,t,e)=>{e.d(t,{Z:()=>i});const r={name:"DownloadIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const i=(0,e(51900).Z)(r,(function(){var n=this,t=n.$createElement,e=n._self._c||t;return e("span",n._b({staticClass:"material-design-icon download-icon",attrs:{"aria-hidden":!n.title,"aria-label":n.title,role:"img"},on:{click:function(t){return n.$emit("click",t)}}},"span",n.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:n.fillColor,width:n.size,height:n.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M5,20H19V18H5M19,9H15V3H9V9H5L12,16L19,9Z"}},[n.title?e("title",[n._v(n._s(n.title))]):n._e()])])])}),[],!1,null,null,null).exports},75400:(n,t,e)=>{e.d(t,{Z:()=>i});const r={name:"SendIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const i=(0,e(51900).Z)(r,(function(){var n=this,t=n.$createElement,e=n._self._c||t;return e("span",n._b({staticClass:"material-design-icon send-icon",attrs:{"aria-hidden":!n.title,"aria-label":n.title,role:"img"},on:{click:function(t){return n.$emit("click",t)}}},"span",n.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:n.fillColor,width:n.size,height:n.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M2,21L23,12L2,3V10L17,12L2,14V21Z"}},[n.title?e("title",[n._v(n._s(n.title))]):n._e()])])])}),[],!1,null,null,null).exports},42408:(n,t,e)=>{e.d(t,{Z:()=>Q});var r=e(20629),i=e(33476),o=e(59537);function a(n,t){return n.map((function(n){return t*n.ratio})).reduce((function(n,t){return n+t}))}function s(n,t,e,r){if(1===n.length&&n[0].sectionHeader)return n[0].height;var i=t/n.map((function(n){return n.ratio})).reduce((function(n,t){return n+t}));return 1===n.length&&n[0].width>t&&(i=t/n[0].ratio),e&&(i=Math.min(r+20,i)),i}var c=e(93379),l=e.n(c),u=e(7795),d=e.n(u),f=e(90569),p=e.n(f),m=e(3565),h=e.n(m),g=e(19216),y=e.n(g),v=e(44589),b=e.n(v),w=e(40321),A={};A.styleTagTransform=b(),A.setAttributes=h(),A.insert=p().bind(null,"head"),A.domAPI=d(),A.insertStyleElement=y();l()(w.Z,A);w.Z&&w.Z.locals&&w.Z.locals;var C=e(51900);function T(n,t){var e="undefined"!=typeof Symbol&&n[Symbol.iterator]||n["@@iterator"];if(!e){if(Array.isArray(n)||(e=function(n,t){if(!n)return;if("string"==typeof n)return O(n,t);var e=Object.prototype.toString.call(n).slice(8,-1);"Object"===e&&n.constructor&&(e=n.constructor.name);if("Map"===e||"Set"===e)return Array.from(n);if("Arguments"===e||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e))return O(n,t)}(n))||t&&n&&"number"==typeof n.length){e&&(n=e);var r=0,i=function(){};return{s:i,n:function(){return r>=n.length?{done:!0}:{done:!1,value:n[r++]}},e:function(n){throw n},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,a=!0,s=!1;return{s:function(){e=e.call(n)},n:function(){var n=e.next();return a=n.done,n},e:function(n){s=!0,o=n},f:function(){try{a||null==e.return||e.return()}finally{if(s)throw o}}}}function O(n,t){(null==t||t>n.length)&&(t=n.length);for(var e=0,r=new Array(t);e2&&void 0!==arguments[2]?arguments[2]:200;if(0===t)return[];for(var r=[],i=0,o=0;o=n.length?{done:!0}:{done:!1,value:n[r++]}},e:function(n){throw n},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,a=!0,s=!1;return{s:function(){e=e.call(n)},n:function(){var n=e.next();return a=n.done,n},e:function(n){s=!0,o=n},f:function(){try{a||null==e.return||e.return()}finally{if(s)throw o}}}}function P(n,t){var e=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(n,t).enumerable}))),e.push.apply(e,r)}return e}function k(n){for(var t=1;tn.length)&&(t=n.length);for(var e=0,r=new Array(t);e=this.rowsHeight-n},container:function(){return o.Z.debug("[VirtualScrolling] Computing container"),null!==this.containerElement?this.containerElement:this.useWindow?window:this.$refs.container}},watch:{isNearBottom:function(n){n&&this.$emit("need-content")},rows:function(){this.isNearBottom&&this.$emit("need-content")},scrollToKey:function(n){var t,e=0,r=F(this.rows);try{for(r.s();!(t=r.n()).done;){var i=t.value;if(i.key===n)return void this.$refs.container.scrollTo({top:e,behavior:"smooth"});e+=i.height}}catch(n){r.e(n)}finally{r.f()}}},mounted:function(){var n=this;this.resizeObserver=new ResizeObserver((function(t){var e,r=F(t);try{for(r.s();!(e=r.n()).done;){var i=e.value,o=i.contentRect;i.target.classList.contains("vs-container")&&(n.containerHeight=o.height),i.target.classList.contains("vs-rows-container")&&(n.rowsContainerHeight=o.height)}}catch(n){r.e(n)}finally{r.f()}})),this.useWindow?(window.addEventListener("resize",this.updateContainerSize),this.containerHeight=window.innerHeight):this.resizeObserver.observe(this.container),this.resizeObserver.observe(this.$refs.rowsContainer),this.container.addEventListener("scroll",this.updateScrollPosition)},beforeDestroy:function(){this.useWindow&&window.removeEventListener("resize",this.updateContainerSize),this.resizeObserver.disconnect(),this.container.removeEventListener("scroll",this.updateScrollPosition)},methods:{updateScrollPosition:(0,j.debounce)((function(){this.useWindow?this.scrollPosition=this.container.scrollY:this.scrollPosition=this.container.scrollTop}),200),updateContainerSize:function(){this.containerHeight=window.innerHeight}}};var z=e(21238),D={};D.styleTagTransform=b(),D.setAttributes=h(),D.insert=p().bind(null,"head"),D.domAPI=d(),D.insertStyleElement=y();l()(z.Z,D);z.Z&&z.Z.locals&&z.Z.locals;const L=(0,C.Z)(H,(function(){var n=this,t=n.$createElement,e=n._self._c||t;return n.useWindow||null!==n.containerElement?e("div",{ref:"rowsContainer",staticClass:"vs-rows-container",style:n.rowsContainerStyle},[n._t("default",null,{renderedRows:n.visibleRows}),n._v(" "),n._t("loader")],2):e("div",{ref:"container",staticClass:"vs-container"},[e("div",{ref:"rowsContainer",staticClass:"vs-rows-container",style:n.rowsContainerStyle},[n._t("default",null,{renderedRows:n.visibleRows}),n._v(" "),n._t("loader")],2)])}),[],!1,null,"5e8733b7",null).exports;var $=e(8702),M=e(51612);function B(n){return function(n){if(Array.isArray(n))return V(n)}(n)||function(n){if("undefined"!=typeof Symbol&&null!=n[Symbol.iterator]||null!=n["@@iterator"])return Array.from(n)}(n)||function(n,t){if(!n)return;if("string"==typeof n)return V(n,t);var e=Object.prototype.toString.call(n).slice(8,-1);"Object"===e&&n.constructor&&(e=n.constructor.name);if("Map"===e||"Set"===e)return Array.from(n);if("Arguments"===e||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e))return V(n,t)}(n)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function V(n,t){(null==t||t>n.length)&&(t=n.length);for(var e=0,r=new Array(t);e{e.d(t,{Z:()=>v});const r={name:"Loader"};var i=e(93379),o=e.n(i),a=e(7795),s=e.n(a),c=e(90569),l=e.n(c),u=e(3565),d=e.n(u),f=e(19216),p=e.n(f),m=e(44589),h=e.n(m),g=e(78504),y={};y.styleTagTransform=h(),y.setAttributes=d(),y.insert=l().bind(null,"head"),y.domAPI=s(),y.insertStyleElement=p();o()(g.Z,y);g.Z&&g.Z.locals&&g.Z.locals;const v=(0,e(51900).Z)(r,(function(){var n=this,t=n.$createElement,e=n._self._c||t;return e("div",{staticClass:"loader"},[n._t("icon",(function(){return[e("span",{staticClass:"icon-loading"})]}))],2)}),[],!1,null,null,null).exports}}]); -//# sourceMappingURL=photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesSelectionMixin_js-node_modules_vue-material-des-bd2ac8.js.map?v=c35b50e1939b75436295 \ No newline at end of file diff --git a/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesSelectionMixin_js-node_modules_vue-material-des-bd2ac8.js.LICENSE.txt b/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesSelectionMixin_js-node_modules_vue-material-des-bd2ac8.js.LICENSE.txt deleted file mode 100644 index f624ba2fe..000000000 --- a/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesSelectionMixin_js-node_modules_vue-material-des-bd2ac8.js.LICENSE.txt +++ /dev/null @@ -1,65 +0,0 @@ -/** - * @copyright Copyright (c) 2019 John Molakvoæ - * - * @author John Molakvoæ - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ - -/** - * @copyright Copyright (c) 2019 Louis Chemineau - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ - -/** - * @copyright Copyright (c) 2022 Louis Chemineau - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ diff --git a/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesSelectionMixin_js-node_modules_vue-material-des-bd2ac8.js.map b/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesSelectionMixin_js-node_modules_vue-material-des-bd2ac8.js.map deleted file mode 100644 index 4807f1caa..000000000 --- a/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesSelectionMixin_js-node_modules_vue-material-des-bd2ac8.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesSelectionMixin_js-node_modules_vue-material-des-bd2ac8.js?v=c35b50e1939b75436295","mappings":";+xCA0Ce,aAAf,gFAAe,kIAAeA,EAAf,+BAAsB,GAAIC,EAA1B,+BAAoC,CAAC,EAEnDA,EAAU,EAAH,CACNC,YAAa,EACbC,UAAW,IACXC,UAAWC,EAAAA,GACXC,WAAW,EACXC,eAAe,GACZN,GAGEO,EAXQ,kBAWeC,EAAAA,EAAAA,MAAiBC,KAIxCC,EAASV,EAAQG,UAAUQ,QAAO,SAACC,EAAKC,GAAN,gBAAkBD,EAAlB,wGAKzBC,EALyB,mCAOrC,IAEGC,EAAcd,EAAQM,cAAR,yHAOjB,GAEGD,EAAYL,EAAQK,UAAR,gBACNU,MAAM,IAAIC,KAAK,GACxBC,KAAI,SAACC,EAAGC,GACR,IAAMC,EAAQC,IAAOC,KAAKC,OAAOC,QAAQ,OAAOC,SAAS,EAAG,KAAKA,SAASN,EAAQ,EAAG,KAC/EO,EAAML,IAAOC,KAAKC,OAAOI,MAAM,OAAOC,IAAI,EAAG,KAAKH,SAASN,EAAQ,EAAG,KAC5E,0IAKcC,EAAMS,OAAOR,IAAAA,kBAL3B,2JAWcK,EAAIG,OAAOR,IAAAA,kBAXzB,gDAcA,IAAES,KAAK,MAnBQ,WAoBf,GAEH9B,EAAU+B,OAAOC,OAAO,CACvBC,OAAQ,SACRC,QAAS,CACR,eAAgB,YAEjBC,KAAM,4XAAF,OASGC,EAAAA,EATH,4HAcW7B,EAdX,YAcyBR,EAdzB,8LAqBIW,EArBJ,kDAuBGI,EAvBH,2BAwBGT,EAxBH,wRAkCcL,EAAQE,UAlCtB,sDAmCkBF,EAAQC,YAnC1B,+FAuCJoC,MAAM,EACNC,SAAS,GACPtC,GArGW,UAuGSuC,EAAAA,EAAAA,qBAA4B,GAAIvC,GAvGzC,eAuGRwC,EAvGQ,yBAyGPA,EAASL,KACdlB,KAAI,SAAAkB,GAAI,OAAIM,EAAAA,EAAAA,IAAYN,EAAhB,IAERlB,KAAI,SAAAkB,GAAI,cAAUA,GAAV,IAAgBO,SAAUP,EAAKO,SAASC,QAAQpC,EAAY,KAA5D,KA5GI,y1DCff,SACCqC,KAAM,kBAENC,OAAQ,CACPC,EAAAA,GAGDX,KAPc,WAQb,MAAO,CACNY,mBAAoB,KACpBC,cAAc,EACdC,mBAAmB,EACnBC,UAAW,IAAIC,EAAAA,EAAsB,IACrCC,eAAgB,IAAID,EAAAA,EAAsB,GAC1CE,gBAAiB,KACjBC,eAAgB,GAEjB,EAEDC,MAAO,CACNC,OADM,WAELC,KAAKC,sBACL,GAGFC,QAAS,CAOFC,WAPE,WAOkD,iLAAzC7D,EAAyC,+BAAlC,GAAIC,EAA8B,+BAApB,CAAC,EAAG6D,EAAgB,+BAAJ,IACjD,EAAKZ,oBAAqB,EAAKD,aADsB,yCAEjD,IAFiD,uBAK3B,EAAKE,UAAUY,SAAQ,kBAAM,CAAN,GAAS,cALL,cAKnDT,EALmD,iBAMtB,EAAKD,eAAeU,UANE,eAMnDC,EANmD,iBASxD,EAAKhB,mBAAqB,KAC1B,EAAKC,cAAe,EACpB,EAAKK,gBAAkBA,EAEjBW,EAAyB,IAbyB,UAgB7BC,EAAUlE,EAAD,EAAC,GACpCE,YAAa,EAAKqD,eAAeY,OACjChE,UAAW8D,GACRhE,GAHgC,IAInCmE,OAAQ,EAAKC,gBAAgBD,UApB0B,eAgBlDE,EAhBkD,QAwBvCH,SAAWF,IAC3B,EAAKf,mBAAoB,GAGpBqB,EAAUD,EACdpD,KAAI,SAAAsD,GAAI,OAAIA,EAAKC,MAAT,IACRC,QAAO,SAAAC,GAAM,OAAK,EAAKpB,eAAeqB,SAASD,EAAlC,KAEf,IAAKpB,gBAAesB,KAApB,UACIN,EACDrD,KAAI,SAACyD,GAAD,OAAYA,EAAOG,UAAnB,IACJJ,QAAO,SAACC,GAAD,OAAab,EAAUc,SAASD,EAAhC,MAGV,EAAKI,OAAOC,SAAS,cAAeV,GAEpCW,EAAAA,EAAAA,MAAA,oCAA0CV,EAAQJ,OAAlD,gBAAwEI,GAxChB,kBA0CjDA,GA1CiD,sCA4CzB,OAA3B,eAAM9B,gBAAN,eAAgByC,QA5CoC,iBA6CvD,EAAKlC,mBAAqB,IA7C6B,2BA8C9B,iBAAf,KAAMmC,KA9CuC,0CA+ChD,IA/CgD,QAiDvD,EAAKnC,mBAAL,KAjDuD,QAqDxDiC,EAAAA,EAAAA,MAAa,uBAAb,MACAG,EAAQC,MAAR,MAtDwD,yBAwDxD,EAAKpC,cAAe,EACpB,EAAKE,UAAUmC,QAAQhC,GACvB,EAAKD,eAAeiC,QAAQtB,GA1D4B,8CA6DlD,IA7DkD,kEA8DzD,EAEDL,qBAvEQ,WAwEPD,KAAKR,mBAAoB,EACzBQ,KAAKV,mBAAqB,KAC1BU,KAAKT,cAAe,EACpBS,KAAKH,eAAiB,EACtB,sCC1GH,SACCV,KAAM,sBAENT,KAHc,WAIb,MAAO,CAENmD,UAAW,CAAC,EAEb,EAED3B,QAAS,CACR4B,mBADQ,YAC0B,IAAbC,EAAa,EAAbA,GAAIC,EAAS,EAATA,MACxBhC,KAAKiC,KAAKjC,KAAK6B,UAAWE,EAAIC,EAC9B,EAKDE,eARQ,SAQOC,GAAU,WACxBA,EAASC,SAAQ,SAAuBC,GAAvB,OAAmC,EAAKJ,KAAK,EAAKJ,UAAWQ,GAAS,EAAtE,GACjB,EAEDC,eAZQ,WAaPtC,KAAK6B,UAAY,CAAC,CAClB,GAGFU,SAAU,CAITC,gBAJS,WAIS,WACjB,OAAOlE,OAAOmE,KAAKzC,KAAK6B,WAAWb,QAAO,SAAAC,GAAM,OAAI,EAAKY,UAAUZ,EAAnB,GAChD,wECpDCyB,QAA0B,GAA4B,KAE1DA,EAAwBvB,KAAK,CAACwB,EAAOZ,GAAI,qhBAAshB,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,kDAAkD,MAAQ,GAAG,SAAW,4KAA4K,eAAiB,CAAC,44CAA49C,WAAa,MAEz0E,+ECJIW,QAA0B,GAA4B,KAE1DA,EAAwBvB,KAAK,CAACwB,EAAOZ,GAAI,oCAAqC,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,yCAAyC,MAAQ,GAAG,SAAW,4BAA4B,eAAiB,CAAC,kqBAAkvB,WAAa,MAEr9B,+ECJIW,QAA0B,GAA4B,KAE1DA,EAAwBvB,KAAK,CAACwB,EAAOZ,GAAI,2GAA4G,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,8CAA8C,MAAQ,GAAG,SAAW,mCAAmC,eAAiB,CAAC,ozBAAo4B,WAAa,MAE1rC,+ECJIW,QAA0B,GAA4B,KAE1DA,EAAwBvB,KAAK,CAACwB,EAAOZ,GAAI,4CAA6C,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,4CAA4C,MAAQ,GAAG,SAAW,mBAAmB,eAAiB,CAAC,opBAAouB,WAAa,MAEz8B,+ECJIW,QAA0B,GAA4B,KAE1DA,EAAwBvB,KAAK,CAACwB,EAAOZ,GAAI,0HAA2H,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,mDAAmD,MAAQ,GAAG,SAAW,+CAA+C,eAAiB,CAAC,2vCAA20C,WAAa,MAEjqD,2CCaA,MCpB4G,EDoB5G,CACE5C,KAAM,eACNyD,MAAO,CAAC,SACRjE,MAAO,CACLkE,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,cACd,GCRW,WAAa,IAAIG,EAAIpD,KAASqD,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOH,EAAIK,GAAG,CAACC,YAAY,qCAAqCC,MAAM,CAAC,eAAeP,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOe,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOT,EAAIU,MAAM,QAASD,EAAO,IAAI,OAAOT,EAAIW,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOP,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACK,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,8CAA8C,CAAEP,EAAS,MAAEG,EAAG,QAAQ,CAACH,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIP,UAAUO,EAAIc,UAAU,GAC/jB,IDUpB,EACA,KACA,KACA,MAI8B,0CEEhC,MCpBwG,EDoBxG,CACE/E,KAAM,WACNyD,MAAO,CAAC,SACRjE,MAAO,CACLkE,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,cACd,GCRW,WAAa,IAAIG,EAAIpD,KAASqD,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOH,EAAIK,GAAG,CAACC,YAAY,iCAAiCC,MAAM,CAAC,eAAeP,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOe,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOT,EAAIU,MAAM,QAASD,EAAO,IAAI,OAAOT,EAAIW,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOP,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACK,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,sCAAsC,CAAEP,EAAS,MAAEG,EAAG,QAAQ,CAACH,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIP,UAAUO,EAAIc,UAAU,GACnjB,IDUpB,EACA,KACA,KACA,MAI8B,0CElBhC,qCC8FA,SAASC,EAAgBC,EAAOC,GAC/B,OAAOD,EACL5G,KAAI,SAAA8G,GAAI,OAAID,EAAaC,EAAKC,KAAtB,IACRrH,QAAO,SAACsH,EAAKC,GAAN,OAAoBD,EAAMC,CAA1B,GACT,CA0BD,SAASC,EAAiBN,EAAOO,EAAgBC,EAAWP,GAE3D,GAAqB,IAAjBD,EAAM3D,QAAgB2D,EAAM,GAAGS,cAClC,OAAOT,EAAM,GAAGU,OAGjB,IAKIC,EAAYJ,EALQP,EACtB5G,KAAI,SAAA8G,GAAI,OAAIA,EAAKC,KAAT,IACRrH,QAAO,SAACsH,EAAKQ,GAAN,OAAoBR,EAAMQ,CAA1B,IAiBT,OAVqB,IAAjBZ,EAAM3D,QAAgB2D,EAAM,GAAGa,MAAQN,IAC1CI,EAAYJ,EAAiBP,EAAM,GAAGG,OAKnCK,IACHG,EAAYG,KAAKC,IAAId,EAAa,GAAIU,IAGhCA,CACP,CCtJD,qICWIxI,EAAU,CAAC,EAEfA,EAAQ6I,kBAAoB,IAC5B7I,EAAQ8I,cAAgB,IAElB9I,EAAQ+I,OAAS,SAAc,KAAM,QAE3C/I,EAAQgJ,OAAS,IACjBhJ,EAAQiJ,mBAAqB,IAEhB,IAAI,IAASjJ,GAKJ,KAAW,YAAiB,8iCCYlD,MCtC4K,EDsC5K,CACA,mBAEA,YACA,WEnCgB,OANH,CAAC,GJDD,SAAU8G,EAAGD,GAAM,IAAIG,EAAGH,EAAIG,GAAG,OAAOA,EAAG,KAAKH,EAAIqC,GAAIrC,EAAIzE,MAAU,MAAE,SAAS+G,GAAK,OAAOnC,EAAG,MAAM,CAACoC,IAAID,EAAIC,IAAIjC,YAAY,YAAYkC,MAAM,CAAEd,OAAUY,EAAU,OAAI,OAAStC,EAAIqC,GAAIC,EAAS,OAAE,SAASpB,GAAM,OAAOf,EAAG,KAAK,CAACoC,IAAIrB,EAAKvC,GAAG6D,MAAM,CAAGX,MAAOX,EAAKC,MAAUmB,EAAIZ,OAASR,EAAKC,MAAS,KAAQ,OAAQO,OAAUY,EAAU,OAAI,OAAS,CAACtC,EAAIyC,GAAG,UAAU,KAAK,CAAC,IAAMH,EAAI,KAAOpB,KAAQ,EAAE,IAAG,EAAE,IAAG,EAAE,GACjZ,IIUpB,EACA,KACA,WACA,MAI8B,SF2BhC,OACA,OACA,WACA,aAEA,YACA,YACA,cAIA,KAlBA,WAmBA,OACA,iBAEA,oBAEA,EAEA,UAEA,KAFA,WAKA,OAFA,qDHpBO,SAA0BF,EAAOO,GAAkC,IAAlBN,EAAkB,uDAAL,IACpE,GAAuB,IAAnBM,EACH,MAAO,GAOR,IAJA,IAAMmB,EAAO,GACTC,EAAY,EACZC,EAAc,EAEXA,EAAc5B,EAAM3D,QAAQ,CAElC,IAAMwF,EAAW,GAGjB,GAECA,EAAS9E,KAAKiD,EAAM4B,YAEpBA,EAAc5B,EAAM3D,SAChB2D,EAAM4B,EAAc,GAAGnB,gBAAkBT,EAAM4B,GAAanB,eAC7DV,EAAgB,GAAD,OAAK8B,EAAL,CAAe7B,EAAM4B,KAAe3B,IAAeM,GAGtEmB,EAAKC,GAAa,CACjB3B,MAAO6B,EACPnB,OAAQJ,EACPuB,EACAtB,EACAP,EAAM3D,SAAWuF,IAAoD,IAArC5B,EAAM4B,GAAanB,cACnDR,GAGDsB,IAAKM,EAASzI,KAAI,SAAA8G,GAAI,OAAIA,EAAKvC,EAAT,IAAa1D,KAAK,MAGzC0H,GAAa,CACb,CAED,OAAOD,CACP,CGjBD,gDACA,GAGA,QAnCA,WAmCA,WACA,8DACA,GADA,IACA,0CACA,gBACA,iDACA,yBAEA,CANA,+BAOA,IAEA,4DACA,EAEA,cAhDA,WAiDA,gCACA,kBG7EI,EAAU,CAAC,EAEf,EAAQV,kBAAoB,IAC5B,EAAQC,cAAgB,IAElB,EAAQC,OAAS,SAAc,KAAM,QAE3C,EAAQC,OAAS,IACjB,EAAQC,mBAAqB,IAEhB,IAAI,IAAS,GAKJ,KAAW,YAAiB,WCPlD,SAXgB,OACd,GCTW,WAAa,IAAIpC,EAAIpD,KAASqD,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAAC2C,IAAI,uBAAuBxC,YAAY,mBAAmB,CAACN,EAAIyC,GAAG,WAAU,WAAW,MAAO,CAACtC,EAAG,YAAY,CAACI,MAAM,CAAC,KAAOP,EAAI0C,QAAQ,GAAE,CAAC,KAAO1C,EAAI0C,QAAQ,EAAE,GACrP,IDWpB,EACA,KACA,WACA,MAI8B,QEnBhC,2jECsDA,MCtDiL,EDsDjL,CACA,wBAEA,OACA,MACA,WACA,aAGA,kBACA,iBACA,cAGA,WACA,aACA,YAGA,mBACA,YACA,WAEA,0BACA,YACA,WAEA,oBACA,YAEA,WAEA,mBACA,YACA,WAEA,aACA,YACA,aAIA,KA1CA,WA2CA,OACA,iBACA,kBACA,sBAEA,oBAEA,EAEA,UAIA,YAJA,WAKA,iEAGA,0BACA,uBAIA,2BACA,kCACA,4BAEA,IACA,IAIA,iBACA,sBAIA,GAHA,IACA,YAEA,eACA,SAGA,aAaA,OAXA,iBACA,SAEA,iBACA,aAEA,iBACA,cAIA,YACA,GADA,QAGA,GAHA,IAIA,gBAGA,MACA,EAOA,WA3DA,WA8DA,iBACA,oCACA,sCAJA,GAKA,EAKA,WAtEA,WAsEA,WACA,+BACA,SAGA,kFAEA,iBACA,oCACA,WACA,qCACA,EAOA,mBAxFA,WAyFA,OACA,uCACA,2CAEA,EAQA,aArGA,WAsGA,kDACA,kEACA,EAKA,UA7GA,WA+GA,OADA,oDACA,6BACA,sBACA,eACA,OAEA,oBAEA,GAGA,OACA,aADA,SACA,GACA,GACA,0BAEA,EAEA,KAPA,WAUA,mBACA,0BAEA,EAEA,YAfA,SAeA,GACA,IADA,EACA,IADA,IAEA,WAFA,IAEA,0CACA,aAEA,YADA,yDAIA,WACA,CATA,+BAUA,GAGA,QAzMA,WAyMA,WACA,8DACA,GADA,IACA,0CACA,gBACA,8CACA,4BAEA,mDACA,+BAEA,CATA,+BAUA,IAEA,gBACA,2DACA,yCAEA,4CAGA,sDACA,mEACA,EAEA,cAjOA,WAkOA,gBACA,8DAGA,iCACA,sEACA,EAEA,SACA,gDACA,eACA,2CAEA,4CAEA,QAEA,oBATA,WAUA,uCACA,mBEhSI,EAAU,CAAC,EAEf,EAAQV,kBAAoB,IAC5B,EAAQC,cAAgB,IAElB,EAAQC,OAAS,SAAc,KAAM,QAE3C,EAAQC,OAAS,IACjB,EAAQC,mBAAqB,IAEhB,IAAI,IAAS,GAKJ,KAAW,YAAiB,WCPlD,SAXgB,OACd,GJTW,WAAa,IAAIpC,EAAIpD,KAASqD,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAASD,EAAI+C,WAAsC,OAAzB/C,EAAIgD,iBAA4Q7C,EAAG,MAAM,CAAC2C,IAAI,gBAAgBxC,YAAY,oBAAoBkC,MAAOxC,EAAsB,oBAAG,CAACA,EAAIyC,GAAG,UAAU,KAAK,CAAC,aAAezC,EAAIiD,cAAcjD,EAAIY,GAAG,KAAKZ,EAAIyC,GAAG,WAAW,GAAtatC,EAAG,MAAM,CAAC2C,IAAI,YAAYxC,YAAY,gBAAgB,CAACH,EAAG,MAAM,CAAC2C,IAAI,gBAAgBxC,YAAY,oBAAoBkC,MAAOxC,EAAsB,oBAAG,CAACA,EAAIyC,GAAG,UAAU,KAAK,CAAC,aAAezC,EAAIiD,cAAcjD,EAAIY,GAAG,KAAKZ,EAAIyC,GAAG,WAAW,IAA4L,GACpiB,IIWpB,EACA,KACA,WACA,MAI8B,q9CCiDhC,MCpEgL,EDoEhL,CACA,uBAEA,YACA,4BACA,cACA,mBACA,YAGA,OAEA,SACA,WACA,gBAGA,kBACA,YACA,gBAGA,UACA,WACA,gBAGA,SACA,aACA,aAGA,cACA,YACA,YAGA,YACA,YACA,aAGA,qBACA,YACA,YAGA,iBACA,YACA,YAGA,kBACA,iBACA,cAGA,WACA,aACA,aAIA,KA/DA,WAgEA,OACA,WAEA,EAEA,iBACA,SACA,WAFA,IAQA,eARA,WASA,6BACA,GAGA,oCACA,EAKA,gBAnBA,WAmBA,WACA,8BACA,GAGA,mCACA,OACA,CACA,KACA,iBACA,+BAJA,SAMA,4CAEA,GACA,EAKA,MAvCA,WAwCA,6BACA,yBAGA,kBACA,qBAGA,EACA,IAGA,SAEA,YAFA,WAGA,0BACA,EAEA,cANA,SAMA,GACA,oBACA,OACA,YACA,qCACA,uCACA,qEAEA,kBEhMI,EAAU,CAAC,EAEf,EAAQT,kBAAoB,IAC5B,EAAQC,cAAgB,IAElB,EAAQC,OAAS,SAAc,KAAM,QAE3C,EAAQC,OAAS,IACjB,EAAQC,mBAAqB,IAEhB,IAAI,IAAS,GAKJ,KAAW,YAAiB,WCPlD,SAXgB,OACd,GlBTW,WAAa,IAAIpC,EAAIpD,KAASqD,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACG,YAAY,qBAAqB,CAAuB,KAArBN,EAAIkD,cAA4C,IAArBlD,EAAIgB,MAAM3D,QAAiB2C,EAAImD,QAAkSnD,EAAIc,KAA7RX,EAAG,eAAe,CAACoC,IAAI,eAAea,YAAYpD,EAAIqD,GAAG,CAAC,CAACd,IAAI,OAAOe,GAAG,WAAW,MAAO,CAACnD,EAAG,OAAO,CAACG,YAAY,6BAA6BiD,SAAS,CAAC,UAAYvD,EAAIa,GAAGb,EAAIwD,aAAa,EAAEC,OAAM,IAAO,MAAK,EAAM,aAAa,CAACzD,EAAIY,GAAG,SAASZ,EAAIa,GAAGb,EAAIkD,cAAc,UAAmBlD,EAAIY,GAAG,KAAKT,EAAG,cAAc,CAACI,MAAM,CAAC,cAAcP,EAAIiB,WAAW,MAAQjB,EAAIgB,OAAOoC,YAAYpD,EAAIqD,GAAG,CAAC,CAACd,IAAI,UAAUe,GAAG,SAASR,GACtnB,IAAIJ,EAAOI,EAAIJ,KACf,OAAOvC,EAAG,mBAAmB,CAACI,MAAM,CAAC,aAAaP,EAAI+C,UAAU,KAAOL,EAAK,gBAAgB1C,EAAI0D,iBAAiBlD,GAAG,CAAC,eAAeR,EAAI2D,aAAaP,YAAYpD,EAAIqD,GAAG,CAAC,CAACd,IAAI,UAAUe,GAAG,SAASR,GACpM,IAAIc,EAAed,EAAIc,aACvB,OAAOzD,EAAG,KAAK,CAAC,EAAEH,EAAIqC,GAAG,GAAe,SAASC,GAAK,OAAOnC,EAAG,MAAM,CAACoC,IAAID,EAAIC,IAAIjC,YAAY,YAAYuD,MAAM,CAAC,oCAAqCvB,EAAItB,MAAM,GAAGS,eAAee,MAAM,CAAEd,OAAUY,EAAU,OAAI,OAAStC,EAAIqC,GAAIC,EAAS,OAAE,SAASpB,GAAM,OAAOf,EAAG,KAAK,CAACoC,IAAIrB,EAAKvC,GAAG6D,MAAM,CAAGX,MAAOX,EAAKC,MAAUmB,EAAIZ,OAASR,EAAKC,MAAS,KAAQ,OAAQO,OAAUY,EAAU,OAAI,OAAS,CAACtC,EAAIyC,GAAG,UAAU,KAAK,CAAC,KAAOvB,EAAK,WAAaoB,EAAIwB,cAAc,EAAE,IAAG,EAAE,IAAG,EAAE,GAAI9D,EAAW,QAAE,CAACuC,IAAI,SAASe,GAAG,WAAW,MAAO,CAACnD,EAAG,SAAS,CAACG,YAAY,8BAA8B,EAAEmD,OAAM,GAAM,MAAM,MAAK,IAAO,QAAQ,EAAE,GACplB,IkBOpB,EACA,KACA,WACA,MAI8B,yCCYhC,MC/BuK,ED+BvK,CACA,oJErBItK,EAAU,CAAC,EAEfA,EAAQ6I,kBAAoB,IAC5B7I,EAAQ8I,cAAgB,IAElB9I,EAAQ+I,OAAS,SAAc,KAAM,QAE3C/I,EAAQgJ,OAAS,IACjBhJ,EAAQiJ,mBAAqB,IAEhB,IAAI,IAASjJ,GAKJ,KAAW,YAAiB,WCPlD,SAXgB,cACd,GCTW,WAAa,IAAI6G,EAAIpD,KAASqD,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACG,YAAY,UAAU,CAACN,EAAIyC,GAAG,QAAO,WAAW,MAAO,CAACtC,EAAG,OAAO,CAACG,YAAY,iBAAiB,KAAI,EAAE,GAC1L,IDWpB,EACA,KACA,KACA,MAI8B","sources":["webpack:///photos/src/services/PhotoSearch.js","webpack:///photos/src/mixins/FetchFilesMixin.js","webpack:///photos/src/mixins/FilesSelectionMixin.js","webpack:///photos/src/components/FilesListViewer.vue?vue&type=style&index=0&id=5196d262&lang=scss&scoped=true&","webpack:///photos/src/components/Loader.vue?vue&type=style&index=0&lang=scss&","webpack:///photos/src/components/TiledLayout.vue?vue&type=style&index=0&id=58b32a0e&scoped=true&lang=scss&","webpack:///photos/src/components/TiledRows.vue?vue&type=style&index=0&id=452165e4&lang=scss&scoped=true&","webpack:///photos/src/components/VirtualScrolling.vue?vue&type=style&index=0&id=5e8733b7&scoped=true&lang=scss&","webpack:///photos/node_modules/vue-material-design-icons/Download.vue","webpack:///photos/node_modules/vue-material-design-icons/Download.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/Download.vue?b226","webpack:///photos/node_modules/vue-material-design-icons/Download.vue?vue&type=template&id=67aea606&","webpack:///photos/node_modules/vue-material-design-icons/Send.vue","webpack:///photos/node_modules/vue-material-design-icons/Send.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/Send.vue?0295","webpack:///photos/node_modules/vue-material-design-icons/Send.vue?vue&type=template&id=46f29e66&","webpack:///photos/src/components/FilesListViewer.vue?vue&type=template&id=5196d262&scoped=true&","webpack:///photos/src/services/TiledLayout.js","webpack:///photos/src/components/TiledRows.vue?vue&type=template&id=452165e4&scoped=true&functional=true&","webpack://photos/./src/components/TiledRows.vue?b166","webpack:///photos/src/components/TiledLayout.vue","webpack:///photos/src/components/TiledLayout.vue?vue&type=script&lang=js&","webpack:///photos/src/components/TiledRows.vue","webpack://photos/./src/components/TiledLayout.vue?7709","webpack://photos/./src/components/TiledLayout.vue?e02f","webpack:///photos/src/components/TiledLayout.vue?vue&type=template&id=58b32a0e&scoped=true&","webpack:///photos/src/components/VirtualScrolling.vue?vue&type=template&id=5e8733b7&scoped=true&","webpack:///photos/src/components/VirtualScrolling.vue","webpack:///photos/src/components/VirtualScrolling.vue?vue&type=script&lang=js&","webpack://photos/./src/components/VirtualScrolling.vue?876f","webpack://photos/./src/components/VirtualScrolling.vue?6e3f","webpack:///photos/src/components/FilesListViewer.vue","webpack:///photos/src/components/FilesListViewer.vue?vue&type=script&lang=js&","webpack://photos/./src/components/FilesListViewer.vue?620d","webpack://photos/./src/components/FilesListViewer.vue?5a4f","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&"],"sourcesContent":["/**\n * @copyright Copyright (c) 2019 John Molakvoæ \n *\n * @author John Molakvoæ \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 .\n *\n */\n\nimport { genFileInfo } from '../utils/fileUtils.js'\nimport { getCurrentUser } from '@nextcloud/auth'\nimport { allMimes } from './AllowedMimes.js'\nimport client from './DavClient.js'\nimport { props } from './DavRequest.js'\nimport moment from '@nextcloud/moment'\n\n/**\n * List files from a folder and filter out unwanted mimes\n *\n * @param {object} path the lookup path\n * @param {object} [options] used for the cancellable requests\n * @param {number} [options.firstResult=0] Index of the first result that we want (starts at 0)\n * @param {number} [options.nbResults=200] The number of file to fetch\n * @param {string[]} [options.mimesType=allMimes] Mime type of the files\n * @param {boolean} [options.full=false] get full data of the files\n * @param {boolean} [options.onThisDay=false] get only items from this day of year\n * @param {boolean} [options.onlyFavorites=false] get only favorite items\n * @return {Promise} the file list\n */\nexport default async function(path = '', options = {}) {\n\t// default function options\n\toptions = {\n\t\tfirstResult: 0,\n\t\tnbResults: 200,\n\t\tmimesType: allMimes,\n\t\tonThisDay: false,\n\t\tonlyFavorites: false,\n\t\t...options,\n\t}\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\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t${mime}\n\t\t\n\t`, '')\n\n\tconst eqFavorites = options.onlyFavorites\n\t\t? `\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t1\n\t\t\t`\n\t\t: ''\n\n\tconst onThisDay = options.onThisDay\n\t\t? `${Array(20).fill(1)\n\t\t\t.map((_, years) => {\n\t\t\t\tconst start = moment(Date.now()).startOf('day').subtract(3, 'd').subtract(years + 1, 'y')\n\t\t\t\tconst end = moment(Date.now()).endOf('day').add(3, 'd').subtract(years + 1, 'y')\n\t\t\t\treturn `\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t${start.format(moment.defaultFormatUtc)}\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t${end.format(moment.defaultFormatUtc)}\n\t\t\t\t\n\t\t\t`\n\t\t\t}).join('\\n')}`\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: `\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t${props}\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t${prefixPath}/${path}\n\t\t\t\t\t\t\tinfinity\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t${orMime}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t${eqFavorites}\n\t\t\t\t\t\t\t${onThisDay}\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t${options.nbResults}\n\t\t\t\t\t\t${options.firstResult}\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t`,\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 => ({ ...data, filename: data.filename.replace(prefixPath, '') }))\n\n}\n","/**\n * @copyright Copyright (c) 2022 Louis Chemineau \n *\n * @author Louis Chemineau \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 .\n *\n */\n\nimport logger from '../services/logger.js'\nimport getPhotos from '../services/PhotoSearch.js'\nimport SemaphoreWithPriority from '../utils/semaphoreWithPriority.js'\nimport AbortControllerMixin from './AbortControllerMixin'\n\nexport default {\n\tname: 'FetchFilesMixin',\n\n\tmixins: [\n\t\tAbortControllerMixin,\n\t],\n\n\tdata() {\n\t\treturn {\n\t\t\terrorFetchingFiles: null,\n\t\t\tloadingFiles: false,\n\t\t\tdoneFetchingFiles: false,\n\t\t\tsemaphore: new SemaphoreWithPriority(30),\n\t\t\tfetchSemaphore: new SemaphoreWithPriority(1),\n\t\t\tsemaphoreSymbol: null,\n\t\t\tfetchedFileIds: [],\n\t\t}\n\t},\n\n\twatch: {\n\t\t$route() {\n\t\t\tthis.resetFetchFilesState()\n\t\t},\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * @param {string} path - Path to pass to getPhotos.\n\t\t * @param {object} options - Options to pass to getPhotos.\n\t\t * @param {string[]} [blacklist=[]] - Array of ids to filter out.\n\t\t * @return {Promise} - The next batch of data depending on global offset.\n\t\t */\n\t\tasync fetchFiles(path = '', options = {}, blacklist = []) {\n\t\t\tif (this.doneFetchingFiles || this.loadingFiles) {\n\t\t\t\treturn []\n\t\t\t}\n\n\t\t\tconst semaphoreSymbol = await this.semaphore.acquire(() => 0, 'fetchFiles')\n\t\t\tconst fetchSemaphoreSymbol = await this.fetchSemaphore.acquire()\n\n\t\t\ttry {\n\t\t\t\tthis.errorFetchingFiles = null\n\t\t\t\tthis.loadingFiles = true\n\t\t\t\tthis.semaphoreSymbol = semaphoreSymbol\n\n\t\t\t\tconst numberOfImagesPerBatch = 1000\n\n\t\t\t\t// Load next batch of images\n\t\t\t\tconst fetchedFiles = await getPhotos(path, {\n\t\t\t\t\tfirstResult: this.fetchedFileIds.length,\n\t\t\t\t\tnbResults: numberOfImagesPerBatch,\n\t\t\t\t\t...options,\n\t\t\t\t\tsignal: this.abortController.signal,\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 (fetchedFiles.length !== numberOfImagesPerBatch) {\n\t\t\t\t\tthis.doneFetchingFiles = true\n\t\t\t\t}\n\n\t\t\t\tconst fileIds = fetchedFiles\n\t\t\t\t\t.map(file => file.fileid)\n\t\t\t\t\t.filter(fileId => !this.fetchedFileIds.includes(fileId)) // Filter to prevent duplicate fileIds.\n\n\t\t\t\tthis.fetchedFileIds.push(\n\t\t\t\t\t...fileIds\n\t\t\t\t\t\t.map((fileId) => fileId.toString())\n\t\t\t\t\t\t.filter((fileId) => !blacklist.includes(fileId))\n\t\t\t\t)\n\n\t\t\t\tthis.$store.dispatch('appendFiles', fetchedFiles)\n\n\t\t\t\tlogger.debug(`[FetchFilesMixin] Fetched ${fileIds.length} new files: `, fileIds)\n\n\t\t\t\treturn fileIds\n\t\t\t} catch (error) {\n\t\t\t\tif (error.response?.status === 404) {\n\t\t\t\t\tthis.errorFetchingFiles = 404\n\t\t\t\t} else if (error.code === 'ERR_CANCELED') {\n\t\t\t\t\treturn []\n\t\t\t\t} else {\n\t\t\t\t\tthis.errorFetchingFiles = error\n\t\t\t\t}\n\n\t\t\t\t// cancelled request, moving on...\n\t\t\t\tlogger.error('Error fetching files', error)\n\t\t\t\tconsole.error(error)\n\t\t\t} finally {\n\t\t\t\tthis.loadingFiles = false\n\t\t\t\tthis.semaphore.release(semaphoreSymbol)\n\t\t\t\tthis.fetchSemaphore.release(fetchSemaphoreSymbol)\n\t\t\t}\n\n\t\t\treturn []\n\t\t},\n\n\t\tresetFetchFilesState() {\n\t\t\tthis.doneFetchingFiles = false\n\t\t\tthis.errorFetchingFiles = null\n\t\t\tthis.loadingFiles = false\n\t\t\tthis.fetchedFileIds = []\n\t\t},\n\t},\n}\n","/**\n * @copyright Copyright (c) 2019 Louis Chemineau \n *\n * @author Louis Chemineau \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 .\n *\n */\n\nexport default {\n\tname: 'FilesSelectionMixin',\n\n\tdata() {\n\t\treturn {\n\t\t\t/** @type {Object} */\n\t\t\tselection: {},\n\t\t}\n\t},\n\n\tmethods: {\n\t\tonFileSelectToggle({ id, value }) {\n\t\t\tthis.$set(this.selection, id, value)\n\t\t},\n\n\t\t/**\n\t\t * @param {string[]} filesIds - The ids of the files to uncheck.\n\t\t */\n\t\tonUncheckFiles(filesIds) {\n\t\t\tfilesIds.forEach((/** @type {string} */ filesId) => this.$set(this.selection, filesId, false))\n\t\t},\n\n\t\tresetSelection() {\n\t\t\tthis.selection = {}\n\t\t},\n\t},\n\n\tcomputed: {\n\t\t/**\n\t\t * @return {string[]}\n\t\t */\n\t\tselectedFileIds() {\n\t\t\treturn Object.keys(this.selection).filter(fileId => this.selection[fileId])\n\t\t},\n\t},\n}\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".files-list-viewer[data-v-5196d262]{height:100%;position:relative}.files-list-viewer[data-v-5196d262] .empty-content__icon{width:200px;height:200px}.files-list-viewer[data-v-5196d262] .empty-content__icon .empty-content-illustration svg{width:200px;height:200px}.files-list-viewer .tiled-row[data-v-5196d262]{display:flex}.files-list-viewer__section-header[data-v-5196d262]{position:-webkit-sticky;position:sticky;top:0;z-index:3;background:var(--color-main-background)}.files-list-viewer__loader[data-v-5196d262]{margin:50px 0}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/FilesListViewer.vue\"],\"names\":[],\"mappings\":\"AAiNA,oCACC,WAAA,CACA,iBAAA,CAEA,0DACC,WAAA,CACA,YAAA,CAEA,0FACC,WAAA,CACA,YAAA,CAIF,+CACC,YAAA,CAGD,oDACC,uBAAA,CAAA,eAAA,CACA,KAAA,CACA,SAAA,CACA,uCAAA,CAGD,4CACC,aAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.files-list-viewer {\\n\\theight: 100%;\\n\\tposition: relative;\\n\\n\\t::v-deep .empty-content__icon {\\n\\t\\twidth: 200px;\\n\\t\\theight: 200px;\\n\\n\\t\\t.empty-content-illustration svg {\\n\\t\\t\\twidth: 200px;\\n\\t\\t\\theight: 200px;\\n\\t\\t}\\n\\t}\\n\\n\\t.tiled-row {\\n\\t\\tdisplay: flex;\\n\\t}\\n\\n\\t&__section-header {\\n\\t\\tposition: sticky;\\n\\t\\ttop: 0;\\n\\t\\tz-index: 3;\\n\\t\\tbackground: var(--color-main-background);\\n\\t}\\n\\n\\t&__loader {\\n\\t\\tmargin: 50px 0;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\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_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".tiled-container[data-v-58b32a0e]{height:100%}.tiled-container .tiled-row[data-v-58b32a0e]{display:flex}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/TiledLayout.vue\"],\"names\":[],\"mappings\":\"AA8FA,kCACC,WAAA,CAEA,6CACC,YAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.tiled-container {\\n\\theight: 100%;\\n\\n\\t.tiled-row {\\n\\t\\tdisplay: flex;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".tiled-row[data-v-452165e4]{display:flex}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/TiledRows.vue\"],\"names\":[],\"mappings\":\"AAsCA,4BACC,YAAA\",\"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.tiled-row {\\n\\tdisplay: flex;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".vs-container[data-v-5e8733b7]{overflow-y:scroll;height:100%}.vs-rows-container[data-v-5e8733b7]{box-sizing:border-box}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/VirtualScrolling.vue\"],\"names\":[],\"mappings\":\"AAkTA,+BACC,iBAAA,CACA,WAAA,CAGD,oCACC,qBAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.vs-container {\\n\\toverflow-y: scroll;\\n\\theight: 100%;\\n}\\n\\n.vs-rows-container {\\n\\tbox-sizing: border-box;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Download.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Download.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Download.vue?vue&type=template&id=67aea606&\"\nimport script from \"./Download.vue?vue&type=script&lang=js&\"\nexport * from \"./Download.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon download-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M5,20H19V18H5M19,9H15V3H9V9H5L12,16L19,9Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Send.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Send.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Send.vue?vue&type=template&id=46f29e66&\"\nimport script from \"./Send.vue?vue&type=script&lang=js&\"\nexport * from \"./Send.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon send-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M2,21L23,12L2,3V10L17,12L2,14V21Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"files-list-viewer\"},[(_vm.emptyMessage !== '' && _vm.items.length === 0 && !_vm.loading)?_c('EmptyContent',{key:\"emptycontent\",scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('span',{staticClass:\"empty-content-illustration\",domProps:{\"innerHTML\":_vm._s(_vm.EmptyBox)}})]},proxy:true}],null,false,3410044941)},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.emptyMessage)+\"\\n\\t\")]):_vm._e(),_vm._v(\" \"),_c('TiledLayout',{attrs:{\"base-height\":_vm.baseHeight,\"items\":_vm.items},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar rows = ref.rows;\nreturn _c('VirtualScrolling',{attrs:{\"use-window\":_vm.useWindow,\"rows\":rows,\"scroll-to-key\":_vm.scrollToSection},on:{\"need-content\":_vm.needContent},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar renderedRows = ref.renderedRows;\nreturn _c('ul',{},_vm._l((renderedRows),function(row){return _c('div',{key:row.key,staticClass:\"tiled-row\",class:{'files-list-viewer__section-header': row.items[0].sectionHeader},style:({height: ((row.height) + \"px\")})},_vm._l((row.items),function(item){return _c('li',{key:item.id,style:({ width: item.ratio ? ((row.height * item.ratio) + \"px\") : '100%', height: ((row.height) + \"px\")})},[_vm._t(\"default\",null,{\"file\":item,\"visibility\":row.visibility})],2)}),0)}),0)}},(_vm.loading)?{key:\"loader\",fn:function(){return [_c('Loader',{staticClass:\"files-list-viewer__loader\"})]},proxy:true}:null],null,true)})}}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * @copyright Copyright (c) 2022 Louis Chemineau \n *\n * @author Louis Chemineau \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 .\n *\n */\n\n/**\n * @typedef {object} TiledItem\n * @property {string} id\n * @property {number} [width] Real width of the item.\n * @property {number} height Real height of the item.\n * @property {number} [ratio] The aspect ratio of the item.\n * @property {boolean} [sectionHeader] Whether this row is a section header.\n */\n\n/**\n * @typedef {object} TiledRow\n * @property {TiledItem[]} items -\n * @property {number} height -\n * @property {string} key -\n */\n\n/**\n * Split items in rows of equal width.\n * The last row will not be forced to match containerWidth.\n *\n * @param {TiledItem[]} items The list of item to split in row of equal width.\n * @param {number} containerWidth The width of a row.\n * @param {number} baseHeight The base height of the rows.\n * @return {TiledRow[]}\n */\nexport function splitItemsInRows(items, containerWidth, baseHeight = 200) {\n\tif (containerWidth === 0) {\n\t\treturn []\n\t}\n\n\tconst rows = []\n\tlet rowNumber = 0\n\tlet currentItem = 0\n\n\twhile (currentItem < items.length) {\n\t\t/** @type { TiledItem[] } */\n\t\tconst rowItems = []\n\n\t\t// Fill the row with new items as long as the width is less than containerWidth.\n\t\tdo {\n\t\t\t// @ts-ignore - We know that items.shift() is not undefined as we always check that items.length > 0.\n\t\t\trowItems.push(items[currentItem++])\n\t\t} while (\n\t\t\tcurrentItem < items.length\n\t\t\t&& !items[currentItem - 1].sectionHeader && !items[currentItem].sectionHeader\n\t\t\t&& computeRowWidth([...rowItems, items[currentItem]], baseHeight) <= containerWidth\n\t\t)\n\n\t\trows[rowNumber] = {\n\t\t\titems: rowItems,\n\t\t\theight: computeRowHeight(\n\t\t\t\trowItems,\n\t\t\t\tcontainerWidth,\n\t\t\t\titems.length === currentItem || items[currentItem].sectionHeader === true,\n\t\t\t\tbaseHeight\n\t\t\t),\n\t\t\t// Key to help vue to keep track of the row in VirtualScrolling.\n\t\t\tkey: rowItems.map(item => item.id).join('-'),\n\t\t}\n\n\t\trowNumber += 1\n\t}\n\n\treturn rows\n}\n\n/**\n *\n * @param {TiledItem[]} items The list of items in the row.\n * @param {number} baseHeight The base height of the rows.\n * @return {number} The width of the row\n */\nfunction computeRowWidth(items, baseHeight) {\n\treturn items\n\t\t.map(item => baseHeight * item.ratio)\n\t\t.reduce((sum, itemWidth) => sum + itemWidth)\n}\n\n/**\n * Compute the row height based on its items and on the container's width.\n *\n * Math time !\n * With Rn the aspect ratio of item n\n * Wn the width of item n\n * Hn the height of item n\n * Wc the width of the container\n * Hr the height of the row\n * For n items we want: Wc = W1 + W2 + ... + Wn\n * We know Rn = Wn / Hn\n * So Wn = Rn * Hn\n * So Wc = (R1 * H1) + (R2 * H2) + ... + (Rn * Hn)\n * But we also want Hr === H1 === H2 === ... === Hn\n * So Wc = (R1 * Hr) + (R2 * Hr) + ... + (Rn * Hr)\n * So Wc = Hr * (R1 + R2 + ... + Rn)\n * So Hr = Wc / (R1 + R2 + ... + Rn)\n *\n * @param {TiledItem[]} items The list of items in the row.\n * @param {number} containerWidth The width of the row.\n * @param {boolean} isLastRow Whether we are computing the height for the last row.\n * @param {number} baseHeight The base height of the rows.\n * @return {number} The height of the row\n */\nfunction computeRowHeight(items, containerWidth, isLastRow, baseHeight) {\n\t// Exception 1: there is only one item and its width it is a sectionHeader, meaning take the full width.\n\tif (items.length === 1 && items[0].sectionHeader) {\n\t\treturn items[0].height\n\t}\n\n\tconst sumOfItemsRatio = items\n\t\t.map(item => item.ratio)\n\t\t.reduce((sum, itemRatio) => sum + itemRatio\n\t\t)\n\n\tlet rowHeight = containerWidth / sumOfItemsRatio\n\n\t// Exception 2: there is only one item which is larger than containerWidth.\n\t// Limit its height so that itemWidth === containerWidth\n\tif (items.length === 1 && items[0].width > containerWidth) {\n\t\trowHeight = containerWidth / items[0].ratio\n\t}\n\n\t// Exception 3: we reached the last row.\n\t// Force the items width to match containerWidth, and limit their heigh to baseHeight + 20.\n\tif (isLastRow) {\n\t\trowHeight = Math.min(baseHeight + 20, rowHeight)\n\t}\n\n\treturn rowHeight\n}\n","var render = function (_h,_vm) {var _c=_vm._c;return _c('ul',_vm._l((_vm.props.rows),function(row){return _c('div',{key:row.key,staticClass:\"tiled-row\",style:({height: ((row.height) + \"px\")})},_vm._l((row.items),function(item){return _c('li',{key:item.id,style:({ width: item.ratio ? ((row.height * item.ratio) + \"px\") : '100%', height: ((row.height) + \"px\")})},[_vm._t(\"default\",null,{\"row\":row,\"item\":item})],2)}),0)}),0)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./TiledRows.vue?vue&type=style&index=0&id=452165e4&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./TiledRows.vue?vue&type=style&index=0&id=452165e4&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","\n\n\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TiledLayout.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!./TiledLayout.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TiledRows.vue?vue&type=template&id=452165e4&scoped=true&functional=true&\"\nvar script = {}\nimport style0 from \"./TiledRows.vue?vue&type=style&index=0&id=452165e4&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 true,\n null,\n \"452165e4\",\n null\n \n)\n\nexport default component.exports","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./TiledLayout.vue?vue&type=style&index=0&id=58b32a0e&scoped=true&lang=scss&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./TiledLayout.vue?vue&type=style&index=0&id=58b32a0e&scoped=true&lang=scss&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./TiledLayout.vue?vue&type=template&id=58b32a0e&scoped=true&\"\nimport script from \"./TiledLayout.vue?vue&type=script&lang=js&\"\nexport * from \"./TiledLayout.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TiledLayout.vue?vue&type=style&index=0&id=58b32a0e&scoped=true&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 \"58b32a0e\",\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',{ref:\"tiledLayoutContainer\",staticClass:\"tiled-container\"},[_vm._t(\"default\",function(){return [_c('TiledRows',{attrs:{\"rows\":_vm.rows}})]},{\"rows\":_vm.rows})],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.useWindow && _vm.containerElement === null)?_c('div',{ref:\"container\",staticClass:\"vs-container\"},[_c('div',{ref:\"rowsContainer\",staticClass:\"vs-rows-container\",style:(_vm.rowsContainerStyle)},[_vm._t(\"default\",null,{\"renderedRows\":_vm.visibleRows}),_vm._v(\" \"),_vm._t(\"loader\")],2)]):_c('div',{ref:\"rowsContainer\",staticClass:\"vs-rows-container\",style:(_vm.rowsContainerStyle)},[_vm._t(\"default\",null,{\"renderedRows\":_vm.visibleRows}),_vm._v(\" \"),_vm._t(\"loader\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VirtualScrolling.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!./VirtualScrolling.vue?vue&type=script&lang=js&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./VirtualScrolling.vue?vue&type=style&index=0&id=5e8733b7&scoped=true&lang=scss&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./VirtualScrolling.vue?vue&type=style&index=0&id=5e8733b7&scoped=true&lang=scss&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./VirtualScrolling.vue?vue&type=template&id=5e8733b7&scoped=true&\"\nimport script from \"./VirtualScrolling.vue?vue&type=script&lang=js&\"\nexport * from \"./VirtualScrolling.vue?vue&type=script&lang=js&\"\nimport style0 from \"./VirtualScrolling.vue?vue&type=style&index=0&id=5e8733b7&scoped=true&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 \"5e8733b7\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListViewer.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!./FilesListViewer.vue?vue&type=script&lang=js&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./FilesListViewer.vue?vue&type=style&index=0&id=5196d262&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./FilesListViewer.vue?vue&type=style&index=0&id=5196d262&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesListViewer.vue?vue&type=template&id=5196d262&scoped=true&\"\nimport script from \"./FilesListViewer.vue?vue&type=script&lang=js&\"\nexport * from \"./FilesListViewer.vue?vue&type=script&lang=js&\"\nimport style0 from \"./FilesListViewer.vue?vue&type=style&index=0&id=5196d262&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 \"5196d262\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\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&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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 \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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 export default content && content.locals ? content.locals : undefined;\n","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 }"],"names":["path","options","firstResult","nbResults","mimesType","allMimes","onThisDay","onlyFavorites","prefixPath","getCurrentUser","uid","orMime","reduce","str","mime","eqFavorites","Array","fill","map","_","years","start","moment","Date","now","startOf","subtract","end","endOf","add","format","join","Object","assign","method","headers","data","props","deep","details","client","response","genFileInfo","filename","replace","name","mixins","AbortControllerMixin","errorFetchingFiles","loadingFiles","doneFetchingFiles","semaphore","SemaphoreWithPriority","fetchSemaphore","semaphoreSymbol","fetchedFileIds","watch","$route","this","resetFetchFilesState","methods","fetchFiles","blacklist","acquire","fetchSemaphoreSymbol","numberOfImagesPerBatch","getPhotos","length","signal","abortController","fetchedFiles","fileIds","file","fileid","filter","fileId","includes","push","toString","$store","dispatch","logger","status","code","console","error","release","selection","onFileSelectToggle","id","value","$set","onUncheckFiles","filesIds","forEach","filesId","resetSelection","computed","selectedFileIds","keys","___CSS_LOADER_EXPORT___","module","emits","title","type","String","fillColor","default","size","Number","_vm","_h","$createElement","_c","_self","_b","staticClass","attrs","on","$event","$emit","$attrs","_v","_s","_e","computeRowWidth","items","baseHeight","item","ratio","sum","itemWidth","computeRowHeight","containerWidth","isLastRow","sectionHeader","height","rowHeight","itemRatio","width","Math","min","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","_l","row","key","style","_t","rows","rowNumber","currentItem","rowItems","ref","useWindow","containerElement","visibleRows","emptyMessage","loading","scopedSlots","_u","fn","domProps","EmptyBox","proxy","scrollToSection","needContent","renderedRows","class","visibility"],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesSelectionMixin_js-node_modules_vue-material-des-d0b874.js b/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesSelectionMixin_js-node_modules_vue-material-des-d0b874.js deleted file mode 100644 index ed7ed51d3..000000000 --- a/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesSelectionMixin_js-node_modules_vue-material-des-d0b874.js +++ /dev/null @@ -1,3 +0,0 @@ -/*! For license information please see photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesSelectionMixin_js-node_modules_vue-material-des-d0b874.js.LICENSE.txt */ -"use strict";(self.webpackChunkphotos=self.webpackChunkphotos||[]).push([["src_mixins_FetchFilesMixin_js-src_mixins_FilesSelectionMixin_js-node_modules_vue-material-des-d0b874"],{66951:(t,n,e)=>{e.d(n,{Z:()=>_});var r=e(59537),i=e(94236),o=e(45994),a=e(3301),s=e(81067),c=e(2161),l=e(80351),u=e.n(l);function d(t,n){var e=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);n&&(r=r.filter((function(n){return Object.getOwnPropertyDescriptor(t,n).enumerable}))),e.push.apply(e,r)}return e}function f(t){for(var n=1;n0&&void 0!==h[0]?h[0]:"",e=h.length>1&&void 0!==h[1]?h[1]:{},e=f({firstResult:0,nbResults:200,mimesType:a.Oj,onThisDay:!1,onlyFavorites:!1},e),r="/files/".concat((0,o.ts)().uid),l=e.mimesType.reduce((function(t,n){return"".concat(t,"\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t").concat(n,"\n\t\t\n\t")}),""),d=e.onlyFavorites?"\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t1\n\t\t\t":"",p=e.onThisDay?"".concat(Array(20).fill(1).map((function(t,n){var e=u()(Date.now()).startOf("day").subtract(3,"d").subtract(n+1,"y"),r=u()(Date.now()).endOf("day").add(3,"d").subtract(n+1,"y");return"\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t".concat(e.format(u().defaultFormatUtc),"\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t").concat(r.format(u().defaultFormatUtc),"\n\t\t\t\t\n\t\t\t")})).join("\n"),""):"",e=Object.assign({method:"SEARCH",headers:{"content-Type":"text/xml"},data:'\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t'.concat(c.N,"\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t").concat(r,"/").concat(n,"\n\t\t\t\t\t\t\tinfinity\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t").concat(l,"\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t").concat(d,"\n\t\t\t\t\t\t\t").concat(p,"\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t").concat(e.nbResults,"\n\t\t\t\t\t\t").concat(e.firstResult,"\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t"),deep:!0,details:!0},e),t.next=10,s.Z.getDirectoryContents("",e);case 10:return m=t.sent,t.abrupt("return",m.data.map((function(t){return(0,i.AX)(t)})).map((function(t){return f(f({},t),{},{filename:t.filename.replace(r,"")})})));case 12:case"end":return t.stop()}}),t)}))),y.apply(this,arguments)}var v=e(4615),b=e(32114),A=e(25108);function w(t){return function(t){if(Array.isArray(t))return C(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||function(t,n){if(!t)return;if("string"==typeof t)return C(t,n);var e=Object.prototype.toString.call(t).slice(8,-1);"Object"===e&&t.constructor&&(e=t.constructor.name);if("Map"===e||"Set"===e)return Array.from(t);if("Arguments"===e||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e))return C(t,n)}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function C(t,n){(null==n||n>t.length)&&(n=t.length);for(var e=0,r=new Array(n);e0&&void 0!==t[0]?t[0]:"",o=t.length>1&&void 0!==t[1]?t[1]:{},a=t.length>2&&void 0!==t[2]?t[2]:[],!n.doneFetchingFiles&&!n.loadingFiles){e.next=5;break}return e.abrupt("return",[]);case 5:return e.next=7,n.semaphore.acquire((function(){return 0}),"fetchFiles");case 7:return s=e.sent,e.next=10,n.fetchSemaphore.acquire();case 10:return c=e.sent,e.prev=11,n.errorFetchingFiles=null,n.loadingFiles=!0,n.semaphoreSymbol=s,u=(0,v.Z)(g),d=u.request,f=u.cancel,n.cancelFilesRequest=f,p=1e3,e.next=20,d(i,F({firstResult:n.fetchedFileIds.length,nbResults:p},o));case 20:return(m=e.sent).length!==p&&(n.doneFetchingFiles=!0),h=m.map((function(t){return t.fileid})).filter((function(t){return!n.fetchedFileIds.includes(t)})),(l=n.fetchedFileIds).push.apply(l,w(h.map((function(t){return t.toString()})).filter((function(t){return!a.includes(t)})))),n.$store.dispatch("appendFiles",m),r.Z.debug("[FetchFilesMixin] Fetched ".concat(h.length," new files: "),h),e.abrupt("return",h);case 29:if(e.prev=29,e.t0=e.catch(11),404!==(null===(y=e.t0.response)||void 0===y?void 0:y.status)){e.next=35;break}n.errorFetchingFiles=404,e.next=40;break;case 35:if("ERR_CANCELED"!==e.t0.code){e.next=39;break}return e.abrupt("return",[]);case 39:n.errorFetchingFiles=e.t0;case 40:r.Z.error("Error fetching files",e.t0),A.error(e.t0);case 42:return e.prev=42,n.loadingFiles=!1,n.cancelFilesRequest=function(){},n.semaphore.release(s),n.fetchSemaphore.release(c),e.finish(42);case 48:return e.abrupt("return",[]);case 49:case"end":return e.stop()}}),e,null,[[11,29,42,48]])})))()},resetFetchFilesState:function(){this.doneFetchingFiles=!1,this.errorFetchingFiles=null,this.loadingFiles=!1,this.fetchedFileIds=[],this.cancelFilesRequest=function(){}}}}},98171:(t,n,e)=>{e.d(n,{Z:()=>r});const r={name:"FilesSelectionMixin",data:function(){return{selection:{}}},methods:{onFileSelectToggle:function(t){var n=t.id,e=t.value;this.$set(this.selection,n,e)},onUncheckFiles:function(t){var n=this;t.forEach((function(t){return n.$set(n.selection,t,!1)}))},resetSelection:function(){this.selection={}}},computed:{selectedFileIds:function(){var t=this;return Object.keys(this.selection).filter((function(n){return t.selection[n]}))}}}},6726:(t,n,e)=>{e.d(n,{Z:()=>s});var r=e(87537),i=e.n(r),o=e(23645),a=e.n(o)()(i());a.push([t.id,".files-list-viewer[data-v-5196d262]{height:100%;position:relative}.files-list-viewer[data-v-5196d262] .empty-content__icon{width:200px;height:200px}.files-list-viewer[data-v-5196d262] .empty-content__icon .empty-content-illustration svg{width:200px;height:200px}.files-list-viewer .tiled-row[data-v-5196d262]{display:flex}.files-list-viewer__section-header[data-v-5196d262]{position:-webkit-sticky;position:sticky;top:0;z-index:3;background:var(--color-main-background)}.files-list-viewer__loader[data-v-5196d262]{margin:50px 0}","",{version:3,sources:["webpack://./src/components/FilesListViewer.vue"],names:[],mappings:"AAiNA,oCACC,WAAA,CACA,iBAAA,CAEA,0DACC,WAAA,CACA,YAAA,CAEA,0FACC,WAAA,CACA,YAAA,CAIF,+CACC,YAAA,CAGD,oDACC,uBAAA,CAAA,eAAA,CACA,KAAA,CACA,SAAA,CACA,uCAAA,CAGD,4CACC,aAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.files-list-viewer {\n\theight: 100%;\n\tposition: relative;\n\n\t::v-deep .empty-content__icon {\n\t\twidth: 200px;\n\t\theight: 200px;\n\n\t\t.empty-content-illustration svg {\n\t\t\twidth: 200px;\n\t\t\theight: 200px;\n\t\t}\n\t}\n\n\t.tiled-row {\n\t\tdisplay: flex;\n\t}\n\n\t&__section-header {\n\t\tposition: sticky;\n\t\ttop: 0;\n\t\tz-index: 3;\n\t\tbackground: var(--color-main-background);\n\t}\n\n\t&__loader {\n\t\tmargin: 50px 0;\n\t}\n}\n'],sourceRoot:""}]);const s=a},13319:(t,n,e)=>{e.d(n,{Z:()=>s});var r=e(87537),i=e.n(r),o=e(23645),a=e.n(o)()(i());a.push([t.id,".tiled-container[data-v-58b32a0e]{height:100%}.tiled-container .tiled-row[data-v-58b32a0e]{display:flex}","",{version:3,sources:["webpack://./src/components/TiledLayout.vue"],names:[],mappings:"AA8FA,kCACC,WAAA,CAEA,6CACC,YAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.tiled-container {\n\theight: 100%;\n\n\t.tiled-row {\n\t\tdisplay: flex;\n\t}\n}\n'],sourceRoot:""}]);const s=a},40321:(t,n,e)=>{e.d(n,{Z:()=>s});var r=e(87537),i=e.n(r),o=e(23645),a=e.n(o)()(i());a.push([t.id,".tiled-row[data-v-452165e4]{display:flex}","",{version:3,sources:["webpack://./src/components/TiledRows.vue"],names:[],mappings:"AAsCA,4BACC,YAAA",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.tiled-row {\n\tdisplay: flex;\n}\n'],sourceRoot:""}]);const s=a},2470:(t,n,e)=>{e.d(n,{Z:()=>i});const r={name:"DownloadIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const i=(0,e(51900).Z)(r,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("span",t._b({staticClass:"material-design-icon download-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(n){return t.$emit("click",n)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M5,20H19V18H5M19,9H15V3H9V9H5L12,16L19,9Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports},50242:(t,n,e)=>{e.d(n,{Z:()=>q});var r=e(20629),i=e(33476),o=e(59537);function a(t,n){return t.map((function(t){return n*t.ratio})).reduce((function(t,n){return t+n}))}function s(t,n,e,r){if(1===t.length&&t[0].sectionHeader)return t[0].height;var i=n/t.map((function(t){return t.ratio})).reduce((function(t,n){return t+n}));return 1===t.length&&t[0].width>n&&(i=n/t[0].ratio),e&&(i=Math.min(r+20,i)),i}var c=e(93379),l=e.n(c),u=e(7795),d=e.n(u),f=e(90569),p=e.n(f),m=e(3565),h=e.n(m),g=e(19216),y=e.n(g),v=e(44589),b=e.n(v),A=e(40321),w={};w.styleTagTransform=b(),w.setAttributes=h(),w.insert=p().bind(null,"head"),w.domAPI=d(),w.insertStyleElement=y();l()(A.Z,w);A.Z&&A.Z.locals&&A.Z.locals;var C=e(51900);function O(t,n){var e="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!e){if(Array.isArray(t)||(e=function(t,n){if(!t)return;if("string"==typeof t)return F(t,n);var e=Object.prototype.toString.call(t).slice(8,-1);"Object"===e&&t.constructor&&(e=t.constructor.name);if("Map"===e||"Set"===e)return Array.from(t);if("Arguments"===e||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e))return F(t,n)}(t))||n&&t&&"number"==typeof t.length){e&&(t=e);var r=0,i=function(){};return{s:i,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,a=!0,s=!1;return{s:function(){e=e.call(t)},n:function(){var t=e.next();return a=t.done,t},e:function(t){s=!0,o=t},f:function(){try{a||null==e.return||e.return()}finally{if(s)throw o}}}}function F(t,n){(null==n||n>t.length)&&(n=t.length);for(var e=0,r=new Array(n);e2&&void 0!==arguments[2]?arguments[2]:200;if(0===n)return[];for(var r=[],i=0,o=0;ot.length)&&(n=t.length);for(var e=0,r=new Array(n);e - * - * @author John Molakvoæ - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ - -/** - * @copyright Copyright (c) 2019 Louis Chemineau - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ - -/** - * @copyright Copyright (c) 2022 Louis Chemineau - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ diff --git a/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesSelectionMixin_js-node_modules_vue-material-des-d0b874.js.map b/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesSelectionMixin_js-node_modules_vue-material-des-d0b874.js.map deleted file mode 100644 index 0ba298182..000000000 --- a/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesSelectionMixin_js-node_modules_vue-material-des-d0b874.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesSelectionMixin_js-node_modules_vue-material-des-d0b874.js?v=f92cac9386133df01c09","mappings":";+xCA0Ce,aAAf,gFAAe,kIAAeA,EAAf,+BAAsB,GAAIC,EAA1B,+BAAoC,CAAC,EAEnDA,EAAU,EAAH,CACNC,YAAa,EACbC,UAAW,IACXC,UAAWC,EAAAA,GACXC,WAAW,EACXC,eAAe,GACZN,GAGEO,EAXQ,kBAWeC,EAAAA,EAAAA,MAAiBC,KAIxCC,EAASV,EAAQG,UAAUQ,QAAO,SAACC,EAAKC,GAAN,gBAAkBD,EAAlB,wGAKzBC,EALyB,mCAOrC,IAEGC,EAAcd,EAAQM,cAAR,yHAOjB,GAEGD,EAAYL,EAAQK,UAAR,gBACNU,MAAM,IAAIC,KAAK,GACxBC,KAAI,SAACC,EAAGC,GACR,IAAMC,EAAQC,IAAOC,KAAKC,OAAOC,QAAQ,OAAOC,SAAS,EAAG,KAAKA,SAASN,EAAQ,EAAG,KAC/EO,EAAML,IAAOC,KAAKC,OAAOI,MAAM,OAAOC,IAAI,EAAG,KAAKH,SAASN,EAAQ,EAAG,KAC5E,0IAKcC,EAAMS,OAAOR,IAAAA,kBAL3B,2JAWcK,EAAIG,OAAOR,IAAAA,kBAXzB,gDAcA,IAAES,KAAK,MAnBQ,WAoBf,GAEH9B,EAAU+B,OAAOC,OAAO,CACvBC,OAAQ,SACRC,QAAS,CACR,eAAgB,YAEjBC,KAAM,4XAAF,OASGC,EAAAA,EATH,4HAcW7B,EAdX,YAcyBR,EAdzB,8LAqBIW,EArBJ,kDAuBGI,EAvBH,2BAwBGT,EAxBH,wRAkCcL,EAAQE,UAlCtB,sDAmCkBF,EAAQC,YAnC1B,+FAuCJoC,MAAM,EACNC,SAAS,GACPtC,GArGW,UAuGSuC,EAAAA,EAAAA,qBAA4B,GAAIvC,GAvGzC,eAuGRwC,EAvGQ,yBAyGPA,EAASL,KACdlB,KAAI,SAAAkB,GAAI,OAAIM,EAAAA,EAAAA,IAAYN,EAAhB,IAERlB,KAAI,SAAAkB,GAAI,cAAUA,GAAV,IAAgBO,SAAUP,EAAKO,SAASC,QAAQpC,EAAY,KAA5D,KA5GI,w1DCff,SACCqC,KAAM,kBAENT,KAHc,WAIb,MAAO,CACNU,mBAAoB,KACpBC,cAAc,EACdC,mBAAmB,EACnBC,mBAAoB,WAAS,EAC7BC,UAAW,IAAIC,EAAAA,EAAsB,IACrCC,eAAgB,IAAID,EAAAA,EAAsB,GAC1CE,gBAAiB,KACjBC,eAAgB,GAEjB,EAEDC,cAhBc,WAiBTC,KAAKP,oBACRO,KAAKP,mBAAmB,eAEzB,EAEDQ,iBAtBc,SAsBGC,EAAMC,EAAIC,GAI1B,OAHIJ,KAAKP,oBACRO,KAAKP,mBAAmB,gBAElBW,GACP,EAEDC,MAAO,CACNC,OADM,WAELN,KAAKO,sBACL,GAGFC,QAAS,CAOFC,WAPE,WAOkD,uLAAzCjE,EAAyC,+BAAlC,GAAIC,EAA8B,+BAApB,CAAC,EAAGiE,EAAgB,+BAAJ,IACjD,EAAKlB,oBAAqB,EAAKD,aADsB,yCAEjD,IAFiD,uBAK3B,EAAKG,UAAUiB,SAAQ,kBAAM,CAAN,GAAS,cALL,cAKnDd,EALmD,iBAMtB,EAAKD,eAAee,UANE,eAMnDC,EANmD,iBASxD,EAAKtB,mBAAqB,KAC1B,EAAKC,cAAe,EACpB,EAAKM,gBAAkBA,EAXiC,GAa5BgB,EAAAA,EAAAA,GAAkBC,GAAtCC,EAbgD,EAahDA,QAASC,EAbuC,EAavCA,OACjB,EAAKvB,mBAAqBuB,EAEpBC,EAAyB,IAhByB,UAmB7BF,EAAQvE,EAAD,GACjCE,YAAa,EAAKoD,eAAeoB,OACjCvE,UAAWsE,GACRxE,IAtBoD,eAmBlD0E,EAnBkD,QA0BvCD,SAAWD,IAC3B,EAAKzB,mBAAoB,GAGpB4B,EAAUD,EACdzD,KAAI,SAAA2D,GAAI,OAAIA,EAAKC,MAAT,IACRC,QAAO,SAAAC,GAAM,OAAK,EAAK1B,eAAe2B,SAASD,EAAlC,KAEf,IAAK1B,gBAAe4B,KAApB,UACIN,EACD1D,KAAI,SAAC8D,GAAD,OAAYA,EAAOG,UAAnB,IACJJ,QAAO,SAACC,GAAD,OAAad,EAAUe,SAASD,EAAhC,MAGV,EAAKI,OAAOC,SAAS,cAAeV,GAEpCW,EAAAA,EAAAA,MAAA,oCAA0CV,EAAQF,OAAlD,gBAAwEE,GA1ChB,kBA4CjDA,GA5CiD,sCA8CzB,OAA3B,eAAMnC,gBAAN,eAAgB8C,QA9CoC,iBA+CvD,EAAKzC,mBAAqB,IA/C6B,2BAgD9B,iBAAf,KAAM0C,KAhDuC,0CAiDhD,IAjDgD,QAmDvD,EAAK1C,mBAAL,KAnDuD,QAuDxDwC,EAAAA,EAAAA,MAAa,uBAAb,MACAG,EAAQC,MAAR,MAxDwD,yBA0DxD,EAAK3C,cAAe,EACpB,EAAKE,mBAAqB,WAAS,EACnC,EAAKC,UAAUyC,QAAQtC,GACvB,EAAKD,eAAeuC,QAAQvB,GA7D4B,8CAgElD,IAhEkD,kEAiEzD,EAEDL,qBA1EQ,WA2EPP,KAAKR,mBAAoB,EACzBQ,KAAKV,mBAAqB,KAC1BU,KAAKT,cAAe,EACpBS,KAAKF,eAAiB,GACtBE,KAAKP,mBAAqB,WAAS,CACnC,sCCxHH,SACCJ,KAAM,sBAENT,KAHc,WAIb,MAAO,CAENwD,UAAW,CAAC,EAEb,EAED5B,QAAS,CACR6B,mBADQ,YAC0B,IAAbC,EAAa,EAAbA,GAAIC,EAAS,EAATA,MACxBvC,KAAKwC,KAAKxC,KAAKoC,UAAWE,EAAIC,EAC9B,EAKDE,eARQ,SAQOC,GAAU,WACxBA,EAASC,SAAQ,SAAuBC,GAAvB,OAAmC,EAAKJ,KAAK,EAAKJ,UAAWQ,GAAS,EAAtE,GACjB,EAEDC,eAZQ,WAaP7C,KAAKoC,UAAY,CAAC,CAClB,GAGFU,SAAU,CAITC,gBAJS,WAIS,WACjB,OAAOvE,OAAOwE,KAAKhD,KAAKoC,WAAWb,QAAO,SAAAC,GAAM,OAAI,EAAKY,UAAUZ,EAAnB,GAChD,wECpDCyB,QAA0B,GAA4B,KAE1DA,EAAwBvB,KAAK,CAACwB,EAAOZ,GAAI,qhBAAshB,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,kDAAkD,MAAQ,GAAG,SAAW,4KAA4K,eAAiB,CAAC,44CAA49C,WAAa,MAEz0E,+ECJIW,QAA0B,GAA4B,KAE1DA,EAAwBvB,KAAK,CAACwB,EAAOZ,GAAI,2GAA4G,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,8CAA8C,MAAQ,GAAG,SAAW,mCAAmC,eAAiB,CAAC,ozBAAo4B,WAAa,MAE1rC,+ECJIW,QAA0B,GAA4B,KAE1DA,EAAwBvB,KAAK,CAACwB,EAAOZ,GAAI,4CAA6C,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,4CAA4C,MAAQ,GAAG,SAAW,mBAAmB,eAAiB,CAAC,opBAAouB,WAAa,MAEz8B,2CCaA,MCpB4G,EDoB5G,CACEjD,KAAM,eACN8D,MAAO,CAAC,SACRtE,MAAO,CACLuE,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,cACd,GCRW,WAAa,IAAIG,EAAI3D,KAAS4D,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOH,EAAIK,GAAG,CAACC,YAAY,qCAAqCC,MAAM,CAAC,eAAeP,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOe,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOT,EAAIU,MAAM,QAASD,EAAO,IAAI,OAAOT,EAAIW,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOP,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACK,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,8CAA8C,CAAEP,EAAS,MAAEG,EAAG,QAAQ,CAACH,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIP,UAAUO,EAAIc,UAAU,GAC/jB,IDUpB,EACA,KACA,KACA,MAI8B,0CElBhC,qCC8FA,SAASC,EAAgBC,EAAOC,GAC/B,OAAOD,EACLjH,KAAI,SAAAmH,GAAI,OAAID,EAAaC,EAAKC,KAAtB,IACR1H,QAAO,SAAC2H,EAAKC,GAAN,OAAoBD,EAAMC,CAA1B,GACT,CA0BD,SAASC,EAAiBN,EAAOO,EAAgBC,EAAWP,GAE3D,GAAqB,IAAjBD,EAAMzD,QAAgByD,EAAM,GAAGS,cAClC,OAAOT,EAAM,GAAGU,OAGjB,IAKIC,EAAYJ,EALQP,EACtBjH,KAAI,SAAAmH,GAAI,OAAIA,EAAKC,KAAT,IACR1H,QAAO,SAAC2H,EAAKQ,GAAN,OAAoBR,EAAMQ,CAA1B,IAiBT,OAVqB,IAAjBZ,EAAMzD,QAAgByD,EAAM,GAAGa,MAAQN,IAC1CI,EAAYJ,EAAiBP,EAAM,GAAGG,OAKnCK,IACHG,EAAYG,KAAKC,IAAId,EAAa,GAAIU,IAGhCA,CACP,CCtJD,qICWI7I,EAAU,CAAC,EAEfA,EAAQkJ,kBAAoB,IAC5BlJ,EAAQmJ,cAAgB,IAElBnJ,EAAQoJ,OAAS,SAAc,KAAM,QAE3CpJ,EAAQqJ,OAAS,IACjBrJ,EAAQsJ,mBAAqB,IAEhB,IAAI,IAAStJ,GAKJ,KAAW,YAAiB,8iCCYlD,MCtC4K,EDsC5K,CACA,mBAEA,YACA,WEnCgB,OANH,CAAC,GJDD,SAAUmH,EAAGD,GAAM,IAAIG,EAAGH,EAAIG,GAAG,OAAOA,EAAG,KAAKH,EAAIqC,GAAIrC,EAAI9E,MAAU,MAAE,SAASoH,GAAK,OAAOnC,EAAG,MAAM,CAACoC,IAAID,EAAIC,IAAIjC,YAAY,YAAYkC,MAAM,CAAEd,OAAUY,EAAU,OAAI,OAAStC,EAAIqC,GAAIC,EAAS,OAAE,SAASpB,GAAM,OAAOf,EAAG,KAAK,CAACoC,IAAIrB,EAAKvC,GAAG6D,MAAM,CAAGX,MAAOX,EAAKC,MAAUmB,EAAIZ,OAASR,EAAKC,MAAS,KAAQ,OAAQO,OAAUY,EAAU,OAAI,OAAS,CAACtC,EAAIyC,GAAG,UAAU,KAAK,CAAC,IAAMH,EAAI,KAAOpB,KAAQ,EAAE,IAAG,EAAE,IAAG,EAAE,GACjZ,IIUpB,EACA,KACA,WACA,MAI8B,SF2BhC,OACA,OACA,WACA,aAEA,YACA,YACA,cAIA,KAlBA,WAmBA,OACA,iBAEA,oBAEA,EAEA,UAEA,KAFA,WAKA,OAFA,qDHpBO,SAA0BF,EAAOO,GAAkC,IAAlBN,EAAkB,uDAAL,IACpE,GAAuB,IAAnBM,EACH,MAAO,GAOR,IAJA,IAAMmB,EAAO,GACTC,EAAY,EACZC,EAAc,EAEXA,EAAc5B,EAAMzD,QAAQ,CAElC,IAAMsF,EAAW,GAGjB,GAECA,EAAS9E,KAAKiD,EAAM4B,YAEpBA,EAAc5B,EAAMzD,SAChByD,EAAM4B,EAAc,GAAGnB,gBAAkBT,EAAM4B,GAAanB,eAC7DV,EAAgB,GAAD,OAAK8B,EAAL,CAAe7B,EAAM4B,KAAe3B,IAAeM,GAGtEmB,EAAKC,GAAa,CACjB3B,MAAO6B,EACPnB,OAAQJ,EACPuB,EACAtB,EACAP,EAAMzD,SAAWqF,IAAoD,IAArC5B,EAAM4B,GAAanB,cACnDR,GAGDsB,IAAKM,EAAS9I,KAAI,SAAAmH,GAAI,OAAIA,EAAKvC,EAAT,IAAa/D,KAAK,MAGzC+H,GAAa,CACb,CAED,OAAOD,CACP,CGjBD,gDACA,GAGA,QAnCA,WAmCA,WACA,8DACA,GADA,IACA,0CACA,gBACA,iDACA,yBAEA,CANA,+BAOA,IAEA,4DACA,EAEA,cAhDA,WAiDA,gCACA,kBG7EI,EAAU,CAAC,EAEf,EAAQV,kBAAoB,IAC5B,EAAQC,cAAgB,IAElB,EAAQC,OAAS,SAAc,KAAM,QAE3C,EAAQC,OAAS,IACjB,EAAQC,mBAAqB,IAEhB,IAAI,IAAS,GAKJ,KAAW,YAAiB,WCPlD,SAXgB,OACd,GCTW,WAAa,IAAIpC,EAAI3D,KAAS4D,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAAC2C,IAAI,uBAAuBxC,YAAY,mBAAmB,CAACN,EAAIyC,GAAG,WAAU,WAAW,MAAO,CAACtC,EAAG,YAAY,CAACI,MAAM,CAAC,KAAOP,EAAI0C,QAAQ,GAAE,CAAC,KAAO1C,EAAI0C,QAAQ,EAAE,GACrP,IDWpB,EACA,KACA,WACA,MAI8B,g+CEiDhC,MCpEgL,EDoEhL,CACA,uBAEA,YACA,4BACA,cACA,qBACA,YAGA,OAEA,SACA,WACA,gBAGA,kBACA,YACA,gBAGA,UACA,WACA,gBAGA,SACA,aACA,aAGA,cACA,YACA,YAGA,YACA,YACA,aAGA,qBACA,YACA,YAGA,iBACA,YACA,YAGA,kBACA,iBACA,cAGA,WACA,aACA,aAIA,KA/DA,WAgEA,OACA,WAEA,EAEA,iBACA,SACA,WAFA,IAQA,eARA,WASA,6BACA,GAGA,oCACA,EAKA,gBAnBA,WAmBA,WACA,8BACA,GAGA,mCACA,OACA,CACA,KACA,iBACA,+BAJA,SAMA,4CAEA,GACA,EAKA,MAvCA,WAwCA,6BACA,yBAGA,kBACA,qBAGA,EACA,IAGA,SAEA,YAFA,WAGA,0BACA,EAEA,cANA,SAMA,GACA,oBACA,OACA,YACA,qCACA,uCACA,qEAEA,kBEhMI,EAAU,CAAC,EAEf,EAAQV,kBAAoB,IAC5B,EAAQC,cAAgB,IAElB,EAAQC,OAAS,SAAc,KAAM,QAE3C,EAAQC,OAAS,IACjB,EAAQC,mBAAqB,IAEhB,IAAI,IAAS,GAKJ,KAAW,YAAiB,WCPlD,SAXgB,OACd,GbTW,WAAa,IAAIpC,EAAI3D,KAAS4D,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACG,YAAY,qBAAqB,CAAuB,KAArBN,EAAI+C,cAA4C,IAArB/C,EAAIgB,MAAMzD,QAAiByC,EAAIgD,QAAkShD,EAAIc,KAA7RX,EAAG,eAAe,CAACoC,IAAI,eAAeU,YAAYjD,EAAIkD,GAAG,CAAC,CAACX,IAAI,OAAOY,GAAG,WAAW,MAAO,CAAChD,EAAG,OAAO,CAACG,YAAY,6BAA6B8C,SAAS,CAAC,UAAYpD,EAAIa,GAAGb,EAAIqD,aAAa,EAAEC,OAAM,IAAO,MAAK,EAAM,aAAa,CAACtD,EAAIY,GAAG,SAASZ,EAAIa,GAAGb,EAAI+C,cAAc,UAAmB/C,EAAIY,GAAG,KAAKT,EAAG,cAAc,CAACI,MAAM,CAAC,cAAcP,EAAIiB,WAAW,MAAQjB,EAAIgB,OAAOiC,YAAYjD,EAAIkD,GAAG,CAAC,CAACX,IAAI,UAAUY,GAAG,SAASL,GACtnB,IAAIJ,EAAOI,EAAIJ,KACf,OAAOvC,EAAG,mBAAmB,CAACI,MAAM,CAAC,aAAaP,EAAIuD,UAAU,KAAOb,EAAK,gBAAgB1C,EAAIwD,iBAAiBhD,GAAG,CAAC,eAAeR,EAAIyD,aAAaR,YAAYjD,EAAIkD,GAAG,CAAC,CAACX,IAAI,UAAUY,GAAG,SAASL,GACpM,IAAIY,EAAeZ,EAAIY,aACvB,OAAOvD,EAAG,KAAK,CAAC,EAAEH,EAAIqC,GAAG,GAAe,SAASC,GAAK,OAAOnC,EAAG,MAAM,CAACoC,IAAID,EAAIC,IAAIjC,YAAY,YAAYqD,MAAM,CAAC,oCAAqCrB,EAAItB,MAAM,GAAGS,eAAee,MAAM,CAAEd,OAAUY,EAAU,OAAI,OAAStC,EAAIqC,GAAIC,EAAS,OAAE,SAASpB,GAAM,OAAOf,EAAG,KAAK,CAACoC,IAAIrB,EAAKvC,GAAG6D,MAAM,CAAGX,MAAOX,EAAKC,MAAUmB,EAAIZ,OAASR,EAAKC,MAAS,KAAQ,OAAQO,OAAUY,EAAU,OAAI,OAAS,CAACtC,EAAIyC,GAAG,UAAU,KAAK,CAAC,KAAOvB,EAAK,WAAaoB,EAAIsB,cAAc,EAAE,IAAG,EAAE,IAAG,EAAE,GAAI5D,EAAW,QAAE,CAACuC,IAAI,SAASY,GAAG,WAAW,MAAO,CAAChD,EAAG,SAAS,CAACG,YAAY,8BAA8B,EAAEgD,OAAM,GAAM,MAAM,MAAK,IAAO,QAAQ,EAAE,GACplB,IaOpB,EACA,KACA,WACA,MAI8B","sources":["webpack:///photos/src/services/PhotoSearch.js","webpack:///photos/src/mixins/FetchFilesMixin.js","webpack:///photos/src/mixins/FilesSelectionMixin.js","webpack:///photos/src/components/FilesListViewer.vue?vue&type=style&index=0&id=5196d262&lang=scss&scoped=true&","webpack:///photos/src/components/TiledLayout.vue?vue&type=style&index=0&id=58b32a0e&scoped=true&lang=scss&","webpack:///photos/src/components/TiledRows.vue?vue&type=style&index=0&id=452165e4&lang=scss&scoped=true&","webpack:///photos/node_modules/vue-material-design-icons/Download.vue","webpack:///photos/node_modules/vue-material-design-icons/Download.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/Download.vue?b226","webpack:///photos/node_modules/vue-material-design-icons/Download.vue?vue&type=template&id=67aea606&","webpack:///photos/src/components/FilesListViewer.vue?vue&type=template&id=5196d262&scoped=true&","webpack:///photos/src/services/TiledLayout.js","webpack:///photos/src/components/TiledRows.vue?vue&type=template&id=452165e4&scoped=true&functional=true&","webpack://photos/./src/components/TiledRows.vue?b166","webpack:///photos/src/components/TiledLayout.vue","webpack:///photos/src/components/TiledLayout.vue?vue&type=script&lang=js&","webpack:///photos/src/components/TiledRows.vue","webpack://photos/./src/components/TiledLayout.vue?7709","webpack://photos/./src/components/TiledLayout.vue?e02f","webpack:///photos/src/components/TiledLayout.vue?vue&type=template&id=58b32a0e&scoped=true&","webpack:///photos/src/components/FilesListViewer.vue","webpack:///photos/src/components/FilesListViewer.vue?vue&type=script&lang=js&","webpack://photos/./src/components/FilesListViewer.vue?620d","webpack://photos/./src/components/FilesListViewer.vue?5a4f"],"sourcesContent":["/**\n * @copyright Copyright (c) 2019 John Molakvoæ \n *\n * @author John Molakvoæ \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 .\n *\n */\n\nimport { genFileInfo } from '../utils/fileUtils.js'\nimport { getCurrentUser } from '@nextcloud/auth'\nimport { allMimes } from './AllowedMimes.js'\nimport client from './DavClient.js'\nimport { props } from './DavRequest.js'\nimport moment from '@nextcloud/moment'\n\n/**\n * List files from a folder and filter out unwanted mimes\n *\n * @param {object} path the lookup path\n * @param {object} [options] used for the cancellable requests\n * @param {number} [options.firstResult=0] Index of the first result that we want (starts at 0)\n * @param {number} [options.nbResults=200] The number of file to fetch\n * @param {string[]} [options.mimesType=allMimes] Mime type of the files\n * @param {boolean} [options.full=false] get full data of the files\n * @param {boolean} [options.onThisDay=false] get only items from this day of year\n * @param {boolean} [options.onlyFavorites=false] get only favorite items\n * @return {Promise} the file list\n */\nexport default async function(path = '', options = {}) {\n\t// default function options\n\toptions = {\n\t\tfirstResult: 0,\n\t\tnbResults: 200,\n\t\tmimesType: allMimes,\n\t\tonThisDay: false,\n\t\tonlyFavorites: false,\n\t\t...options,\n\t}\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\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t${mime}\n\t\t\n\t`, '')\n\n\tconst eqFavorites = options.onlyFavorites\n\t\t? `\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t1\n\t\t\t`\n\t\t: ''\n\n\tconst onThisDay = options.onThisDay\n\t\t? `${Array(20).fill(1)\n\t\t\t.map((_, years) => {\n\t\t\t\tconst start = moment(Date.now()).startOf('day').subtract(3, 'd').subtract(years + 1, 'y')\n\t\t\t\tconst end = moment(Date.now()).endOf('day').add(3, 'd').subtract(years + 1, 'y')\n\t\t\t\treturn `\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t${start.format(moment.defaultFormatUtc)}\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t${end.format(moment.defaultFormatUtc)}\n\t\t\t\t\n\t\t\t`\n\t\t\t}).join('\\n')}`\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: `\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t${props}\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t${prefixPath}/${path}\n\t\t\t\t\t\t\tinfinity\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t${orMime}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t${eqFavorites}\n\t\t\t\t\t\t\t${onThisDay}\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t${options.nbResults}\n\t\t\t\t\t\t${options.firstResult}\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t`,\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 => ({ ...data, filename: data.filename.replace(prefixPath, '') }))\n\n}\n","/**\n * @copyright Copyright (c) 2022 Louis Chemineau \n *\n * @author Louis Chemineau \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 .\n *\n */\n\nimport logger from '../services/logger.js'\nimport getPhotos from '../services/PhotoSearch.js'\nimport cancelableRequest from '../utils/CancelableRequest.js'\nimport SemaphoreWithPriority from '../utils/semaphoreWithPriority.js'\n\nexport default {\n\tname: 'FetchFilesMixin',\n\n\tdata() {\n\t\treturn {\n\t\t\terrorFetchingFiles: null,\n\t\t\tloadingFiles: false,\n\t\t\tdoneFetchingFiles: false,\n\t\t\tcancelFilesRequest: () => { },\n\t\t\tsemaphore: new SemaphoreWithPriority(30),\n\t\t\tfetchSemaphore: new SemaphoreWithPriority(1),\n\t\t\tsemaphoreSymbol: null,\n\t\t\tfetchedFileIds: [],\n\t\t}\n\t},\n\n\tbeforeDestroy() {\n\t\tif (this.cancelFilesRequest) {\n\t\t\tthis.cancelFilesRequest('Changed view')\n\t\t}\n\t},\n\n\tbeforeRouteLeave(from, to, next) {\n\t\tif (this.cancelFilesRequest) {\n\t\t\tthis.cancelFilesRequest('Changed view')\n\t\t}\n\t\treturn next()\n\t},\n\n\twatch: {\n\t\t$route() {\n\t\t\tthis.resetFetchFilesState()\n\t\t},\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * @param {string} path - Path to pass to getPhotos.\n\t\t * @param {object} options - Options to pass to getPhotos.\n\t\t * @param {string[]} [blacklist=[]] - Array of ids to filter out.\n\t\t * @return {Promise} - The next batch of data depending on global offset.\n\t\t */\n\t\tasync fetchFiles(path = '', options = {}, blacklist = []) {\n\t\t\tif (this.doneFetchingFiles || this.loadingFiles) {\n\t\t\t\treturn []\n\t\t\t}\n\n\t\t\tconst semaphoreSymbol = await this.semaphore.acquire(() => 0, 'fetchFiles')\n\t\t\tconst fetchSemaphoreSymbol = await this.fetchSemaphore.acquire()\n\n\t\t\ttry {\n\t\t\t\tthis.errorFetchingFiles = null\n\t\t\t\tthis.loadingFiles = true\n\t\t\t\tthis.semaphoreSymbol = semaphoreSymbol\n\n\t\t\t\tconst { request, cancel } = cancelableRequest(getPhotos)\n\t\t\t\tthis.cancelFilesRequest = cancel\n\n\t\t\t\tconst numberOfImagesPerBatch = 1000\n\n\t\t\t\t// Load next batch of images\n\t\t\t\tconst fetchedFiles = await request(path, {\n\t\t\t\t\tfirstResult: this.fetchedFileIds.length,\n\t\t\t\t\tnbResults: numberOfImagesPerBatch,\n\t\t\t\t\t...options,\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 (fetchedFiles.length !== numberOfImagesPerBatch) {\n\t\t\t\t\tthis.doneFetchingFiles = true\n\t\t\t\t}\n\n\t\t\t\tconst fileIds = fetchedFiles\n\t\t\t\t\t.map(file => file.fileid)\n\t\t\t\t\t.filter(fileId => !this.fetchedFileIds.includes(fileId)) // Filter to prevent duplicate fileIds.\n\n\t\t\t\tthis.fetchedFileIds.push(\n\t\t\t\t\t...fileIds\n\t\t\t\t\t\t.map((fileId) => fileId.toString())\n\t\t\t\t\t\t.filter((fileId) => !blacklist.includes(fileId))\n\t\t\t\t)\n\n\t\t\t\tthis.$store.dispatch('appendFiles', fetchedFiles)\n\n\t\t\t\tlogger.debug(`[FetchFilesMixin] Fetched ${fileIds.length} new files: `, fileIds)\n\n\t\t\t\treturn fileIds\n\t\t\t} catch (error) {\n\t\t\t\tif (error.response?.status === 404) {\n\t\t\t\t\tthis.errorFetchingFiles = 404\n\t\t\t\t} else if (error.code === 'ERR_CANCELED') {\n\t\t\t\t\treturn []\n\t\t\t\t} else {\n\t\t\t\t\tthis.errorFetchingFiles = error\n\t\t\t\t}\n\n\t\t\t\t// cancelled request, moving on...\n\t\t\t\tlogger.error('Error fetching files', error)\n\t\t\t\tconsole.error(error)\n\t\t\t} finally {\n\t\t\t\tthis.loadingFiles = false\n\t\t\t\tthis.cancelFilesRequest = () => { }\n\t\t\t\tthis.semaphore.release(semaphoreSymbol)\n\t\t\t\tthis.fetchSemaphore.release(fetchSemaphoreSymbol)\n\t\t\t}\n\n\t\t\treturn []\n\t\t},\n\n\t\tresetFetchFilesState() {\n\t\t\tthis.doneFetchingFiles = false\n\t\t\tthis.errorFetchingFiles = null\n\t\t\tthis.loadingFiles = false\n\t\t\tthis.fetchedFileIds = []\n\t\t\tthis.cancelFilesRequest = () => { }\n\t\t},\n\t},\n}\n","/**\n * @copyright Copyright (c) 2019 Louis Chemineau \n *\n * @author Louis Chemineau \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 .\n *\n */\n\nexport default {\n\tname: 'FilesSelectionMixin',\n\n\tdata() {\n\t\treturn {\n\t\t\t/** @type {Object} */\n\t\t\tselection: {},\n\t\t}\n\t},\n\n\tmethods: {\n\t\tonFileSelectToggle({ id, value }) {\n\t\t\tthis.$set(this.selection, id, value)\n\t\t},\n\n\t\t/**\n\t\t * @param {string[]} filesIds - The ids of the files to uncheck.\n\t\t */\n\t\tonUncheckFiles(filesIds) {\n\t\t\tfilesIds.forEach((/** @type {string} */ filesId) => this.$set(this.selection, filesId, false))\n\t\t},\n\n\t\tresetSelection() {\n\t\t\tthis.selection = {}\n\t\t},\n\t},\n\n\tcomputed: {\n\t\t/**\n\t\t * @return {string[]}\n\t\t */\n\t\tselectedFileIds() {\n\t\t\treturn Object.keys(this.selection).filter(fileId => this.selection[fileId])\n\t\t},\n\t},\n}\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".files-list-viewer[data-v-5196d262]{height:100%;position:relative}.files-list-viewer[data-v-5196d262] .empty-content__icon{width:200px;height:200px}.files-list-viewer[data-v-5196d262] .empty-content__icon .empty-content-illustration svg{width:200px;height:200px}.files-list-viewer .tiled-row[data-v-5196d262]{display:flex}.files-list-viewer__section-header[data-v-5196d262]{position:-webkit-sticky;position:sticky;top:0;z-index:3;background:var(--color-main-background)}.files-list-viewer__loader[data-v-5196d262]{margin:50px 0}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/FilesListViewer.vue\"],\"names\":[],\"mappings\":\"AAiNA,oCACC,WAAA,CACA,iBAAA,CAEA,0DACC,WAAA,CACA,YAAA,CAEA,0FACC,WAAA,CACA,YAAA,CAIF,+CACC,YAAA,CAGD,oDACC,uBAAA,CAAA,eAAA,CACA,KAAA,CACA,SAAA,CACA,uCAAA,CAGD,4CACC,aAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.files-list-viewer {\\n\\theight: 100%;\\n\\tposition: relative;\\n\\n\\t::v-deep .empty-content__icon {\\n\\t\\twidth: 200px;\\n\\t\\theight: 200px;\\n\\n\\t\\t.empty-content-illustration svg {\\n\\t\\t\\twidth: 200px;\\n\\t\\t\\theight: 200px;\\n\\t\\t}\\n\\t}\\n\\n\\t.tiled-row {\\n\\t\\tdisplay: flex;\\n\\t}\\n\\n\\t&__section-header {\\n\\t\\tposition: sticky;\\n\\t\\ttop: 0;\\n\\t\\tz-index: 3;\\n\\t\\tbackground: var(--color-main-background);\\n\\t}\\n\\n\\t&__loader {\\n\\t\\tmargin: 50px 0;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".tiled-container[data-v-58b32a0e]{height:100%}.tiled-container .tiled-row[data-v-58b32a0e]{display:flex}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/TiledLayout.vue\"],\"names\":[],\"mappings\":\"AA8FA,kCACC,WAAA,CAEA,6CACC,YAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.tiled-container {\\n\\theight: 100%;\\n\\n\\t.tiled-row {\\n\\t\\tdisplay: flex;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".tiled-row[data-v-452165e4]{display:flex}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/TiledRows.vue\"],\"names\":[],\"mappings\":\"AAsCA,4BACC,YAAA\",\"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.tiled-row {\\n\\tdisplay: flex;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Download.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Download.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Download.vue?vue&type=template&id=67aea606&\"\nimport script from \"./Download.vue?vue&type=script&lang=js&\"\nexport * from \"./Download.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon download-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M5,20H19V18H5M19,9H15V3H9V9H5L12,16L19,9Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"files-list-viewer\"},[(_vm.emptyMessage !== '' && _vm.items.length === 0 && !_vm.loading)?_c('EmptyContent',{key:\"emptycontent\",scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('span',{staticClass:\"empty-content-illustration\",domProps:{\"innerHTML\":_vm._s(_vm.EmptyBox)}})]},proxy:true}],null,false,3410044941)},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.emptyMessage)+\"\\n\\t\")]):_vm._e(),_vm._v(\" \"),_c('TiledLayout',{attrs:{\"base-height\":_vm.baseHeight,\"items\":_vm.items},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar rows = ref.rows;\nreturn _c('VirtualScrolling',{attrs:{\"use-window\":_vm.useWindow,\"rows\":rows,\"scroll-to-key\":_vm.scrollToSection},on:{\"need-content\":_vm.needContent},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar renderedRows = ref.renderedRows;\nreturn _c('ul',{},_vm._l((renderedRows),function(row){return _c('div',{key:row.key,staticClass:\"tiled-row\",class:{'files-list-viewer__section-header': row.items[0].sectionHeader},style:({height: ((row.height) + \"px\")})},_vm._l((row.items),function(item){return _c('li',{key:item.id,style:({ width: item.ratio ? ((row.height * item.ratio) + \"px\") : '100%', height: ((row.height) + \"px\")})},[_vm._t(\"default\",null,{\"file\":item,\"visibility\":row.visibility})],2)}),0)}),0)}},(_vm.loading)?{key:\"loader\",fn:function(){return [_c('Loader',{staticClass:\"files-list-viewer__loader\"})]},proxy:true}:null],null,true)})}}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * @copyright Copyright (c) 2022 Louis Chemineau \n *\n * @author Louis Chemineau \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 .\n *\n */\n\n/**\n * @typedef {object} TiledItem\n * @property {string} id\n * @property {number} [width] Real width of the item.\n * @property {number} height Real height of the item.\n * @property {number} [ratio] The aspect ratio of the item.\n * @property {boolean} [sectionHeader] Whether this row is a section header.\n */\n\n/**\n * @typedef {object} TiledRow\n * @property {TiledItem[]} items -\n * @property {number} height -\n * @property {string} key -\n */\n\n/**\n * Split items in rows of equal width.\n * The last row will not be forced to match containerWidth.\n *\n * @param {TiledItem[]} items The list of item to split in row of equal width.\n * @param {number} containerWidth The width of a row.\n * @param {number} baseHeight The base height of the rows.\n * @return {TiledRow[]}\n */\nexport function splitItemsInRows(items, containerWidth, baseHeight = 200) {\n\tif (containerWidth === 0) {\n\t\treturn []\n\t}\n\n\tconst rows = []\n\tlet rowNumber = 0\n\tlet currentItem = 0\n\n\twhile (currentItem < items.length) {\n\t\t/** @type { TiledItem[] } */\n\t\tconst rowItems = []\n\n\t\t// Fill the row with new items as long as the width is less than containerWidth.\n\t\tdo {\n\t\t\t// @ts-ignore - We know that items.shift() is not undefined as we always check that items.length > 0.\n\t\t\trowItems.push(items[currentItem++])\n\t\t} while (\n\t\t\tcurrentItem < items.length\n\t\t\t&& !items[currentItem - 1].sectionHeader && !items[currentItem].sectionHeader\n\t\t\t&& computeRowWidth([...rowItems, items[currentItem]], baseHeight) <= containerWidth\n\t\t)\n\n\t\trows[rowNumber] = {\n\t\t\titems: rowItems,\n\t\t\theight: computeRowHeight(\n\t\t\t\trowItems,\n\t\t\t\tcontainerWidth,\n\t\t\t\titems.length === currentItem || items[currentItem].sectionHeader === true,\n\t\t\t\tbaseHeight\n\t\t\t),\n\t\t\t// Key to help vue to keep track of the row in VirtualScrolling.\n\t\t\tkey: rowItems.map(item => item.id).join('-'),\n\t\t}\n\n\t\trowNumber += 1\n\t}\n\n\treturn rows\n}\n\n/**\n *\n * @param {TiledItem[]} items The list of items in the row.\n * @param {number} baseHeight The base height of the rows.\n * @return {number} The width of the row\n */\nfunction computeRowWidth(items, baseHeight) {\n\treturn items\n\t\t.map(item => baseHeight * item.ratio)\n\t\t.reduce((sum, itemWidth) => sum + itemWidth)\n}\n\n/**\n * Compute the row height based on its items and on the container's width.\n *\n * Math time !\n * With Rn the aspect ratio of item n\n * Wn the width of item n\n * Hn the height of item n\n * Wc the width of the container\n * Hr the height of the row\n * For n items we want: Wc = W1 + W2 + ... + Wn\n * We know Rn = Wn / Hn\n * So Wn = Rn * Hn\n * So Wc = (R1 * H1) + (R2 * H2) + ... + (Rn * Hn)\n * But we also want Hr === H1 === H2 === ... === Hn\n * So Wc = (R1 * Hr) + (R2 * Hr) + ... + (Rn * Hr)\n * So Wc = Hr * (R1 + R2 + ... + Rn)\n * So Hr = Wc / (R1 + R2 + ... + Rn)\n *\n * @param {TiledItem[]} items The list of items in the row.\n * @param {number} containerWidth The width of the row.\n * @param {boolean} isLastRow Whether we are computing the height for the last row.\n * @param {number} baseHeight The base height of the rows.\n * @return {number} The height of the row\n */\nfunction computeRowHeight(items, containerWidth, isLastRow, baseHeight) {\n\t// Exception 1: there is only one item and its width it is a sectionHeader, meaning take the full width.\n\tif (items.length === 1 && items[0].sectionHeader) {\n\t\treturn items[0].height\n\t}\n\n\tconst sumOfItemsRatio = items\n\t\t.map(item => item.ratio)\n\t\t.reduce((sum, itemRatio) => sum + itemRatio\n\t\t)\n\n\tlet rowHeight = containerWidth / sumOfItemsRatio\n\n\t// Exception 2: there is only one item which is larger than containerWidth.\n\t// Limit its height so that itemWidth === containerWidth\n\tif (items.length === 1 && items[0].width > containerWidth) {\n\t\trowHeight = containerWidth / items[0].ratio\n\t}\n\n\t// Exception 3: we reached the last row.\n\t// Force the items width to match containerWidth, and limit their heigh to baseHeight + 20.\n\tif (isLastRow) {\n\t\trowHeight = Math.min(baseHeight + 20, rowHeight)\n\t}\n\n\treturn rowHeight\n}\n","var render = function (_h,_vm) {var _c=_vm._c;return _c('ul',_vm._l((_vm.props.rows),function(row){return _c('div',{key:row.key,staticClass:\"tiled-row\",style:({height: ((row.height) + \"px\")})},_vm._l((row.items),function(item){return _c('li',{key:item.id,style:({ width: item.ratio ? ((row.height * item.ratio) + \"px\") : '100%', height: ((row.height) + \"px\")})},[_vm._t(\"default\",null,{\"row\":row,\"item\":item})],2)}),0)}),0)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./TiledRows.vue?vue&type=style&index=0&id=452165e4&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./TiledRows.vue?vue&type=style&index=0&id=452165e4&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","\n\n\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TiledLayout.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!./TiledLayout.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TiledRows.vue?vue&type=template&id=452165e4&scoped=true&functional=true&\"\nvar script = {}\nimport style0 from \"./TiledRows.vue?vue&type=style&index=0&id=452165e4&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 true,\n null,\n \"452165e4\",\n null\n \n)\n\nexport default component.exports","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./TiledLayout.vue?vue&type=style&index=0&id=58b32a0e&scoped=true&lang=scss&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./TiledLayout.vue?vue&type=style&index=0&id=58b32a0e&scoped=true&lang=scss&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./TiledLayout.vue?vue&type=template&id=58b32a0e&scoped=true&\"\nimport script from \"./TiledLayout.vue?vue&type=script&lang=js&\"\nexport * from \"./TiledLayout.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TiledLayout.vue?vue&type=style&index=0&id=58b32a0e&scoped=true&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 \"58b32a0e\",\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',{ref:\"tiledLayoutContainer\",staticClass:\"tiled-container\"},[_vm._t(\"default\",function(){return [_c('TiledRows',{attrs:{\"rows\":_vm.rows}})]},{\"rows\":_vm.rows})],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListViewer.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!./FilesListViewer.vue?vue&type=script&lang=js&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./FilesListViewer.vue?vue&type=style&index=0&id=5196d262&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./FilesListViewer.vue?vue&type=style&index=0&id=5196d262&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesListViewer.vue?vue&type=template&id=5196d262&scoped=true&\"\nimport script from \"./FilesListViewer.vue?vue&type=script&lang=js&\"\nexport * from \"./FilesListViewer.vue?vue&type=script&lang=js&\"\nimport style0 from \"./FilesListViewer.vue?vue&type=style&index=0&id=5196d262&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 \"5196d262\",\n null\n \n)\n\nexport default component.exports"],"names":["path","options","firstResult","nbResults","mimesType","allMimes","onThisDay","onlyFavorites","prefixPath","getCurrentUser","uid","orMime","reduce","str","mime","eqFavorites","Array","fill","map","_","years","start","moment","Date","now","startOf","subtract","end","endOf","add","format","join","Object","assign","method","headers","data","props","deep","details","client","response","genFileInfo","filename","replace","name","errorFetchingFiles","loadingFiles","doneFetchingFiles","cancelFilesRequest","semaphore","SemaphoreWithPriority","fetchSemaphore","semaphoreSymbol","fetchedFileIds","beforeDestroy","this","beforeRouteLeave","from","to","next","watch","$route","resetFetchFilesState","methods","fetchFiles","blacklist","acquire","fetchSemaphoreSymbol","cancelableRequest","getPhotos","request","cancel","numberOfImagesPerBatch","length","fetchedFiles","fileIds","file","fileid","filter","fileId","includes","push","toString","$store","dispatch","logger","status","code","console","error","release","selection","onFileSelectToggle","id","value","$set","onUncheckFiles","filesIds","forEach","filesId","resetSelection","computed","selectedFileIds","keys","___CSS_LOADER_EXPORT___","module","emits","title","type","String","fillColor","default","size","Number","_vm","_h","$createElement","_c","_self","_b","staticClass","attrs","on","$event","$emit","$attrs","_v","_s","_e","computeRowWidth","items","baseHeight","item","ratio","sum","itemWidth","computeRowHeight","containerWidth","isLastRow","sectionHeader","height","rowHeight","itemRatio","width","Math","min","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","_l","row","key","style","_t","rows","rowNumber","currentItem","rowItems","ref","emptyMessage","loading","scopedSlots","_u","fn","domProps","EmptyBox","proxy","useWindow","scrollToSection","needContent","renderedRows","class","visibility"],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesSelectionMixin_js-src_components_FilesListViewer_vue.js b/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesSelectionMixin_js-src_components_FilesListViewer_vue.js deleted file mode 100644 index e156f1661..000000000 --- a/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesSelectionMixin_js-src_components_FilesListViewer_vue.js +++ /dev/null @@ -1,2482 +0,0 @@ -"use strict"; -(self["webpackChunkphotos"] = self["webpackChunkphotos"] || []).push([["src_mixins_FetchFilesMixin_js-src_mixins_FilesSelectionMixin_js-src_components_FilesListViewer_vue"],{ - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FilesListViewer.vue?vue&type=script&lang=js&": -/*!*************************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FilesListViewer.vue?vue&type=script&lang=js& ***! - \*************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! vuex */ "./node_modules/vuex/dist/vuex.esm.js"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/vue */ "./node_modules/@nextcloud/vue/dist/ncvuecomponents.js"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _components_TiledLayout_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../components/TiledLayout.vue */ "./src/components/TiledLayout.vue"); -/* harmony import */ var _components_VirtualScrolling_vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../components/VirtualScrolling.vue */ "./src/components/VirtualScrolling.vue"); -/* harmony import */ var _components_Loader_vue__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../components/Loader.vue */ "./src/components/Loader.vue"); -/* harmony import */ var _assets_Illustrations_empty_svg__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../assets/Illustrations/empty.svg */ "./src/assets/Illustrations/empty.svg"); -function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); } - -function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } - -function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } - -function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); } - -function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); } - -function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; } - -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } - -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - - - - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'FilesListViewer', - components: { - EmptyContent: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_0__.EmptyContent, - TiledLayout: _components_TiledLayout_vue__WEBPACK_IMPORTED_MODULE_1__["default"], - VirtualScrolling: _components_VirtualScrolling_vue__WEBPACK_IMPORTED_MODULE_2__["default"], - Loader: _components_Loader_vue__WEBPACK_IMPORTED_MODULE_3__["default"] - }, - props: { - // Array of file ids that should be rendered. - fileIds: { - type: Array, - default: undefined - }, - // An object mapping a list of section to a list of fileIds. - fileIdsBySection: { - type: Object, - default: undefined - }, - // The list of sorted sections. - sections: { - type: Array, - default: undefined - }, - // Whether we should display a loading indicator. - loading: { - type: Boolean, - required: true - }, - // Message to display when there is no files. - emptyMessage: { - type: String, - default: '' - }, - // The base height to forward to TileLayout. - baseHeight: { - type: Number, - default: 200 - }, - // The height to use for section headers. - sectionHeaderHeight: { - type: Number, - default: 75 - }, - // Instruct VirtualScrolling to scroll to the given section id. - scrollToSection: { - type: String, - default: '' - }, - // The containerElement props to forward to TileLayout. - containerElement: { - type: HTMLElement, - default: null - }, - // The useWindow props to forward to TileLayout. - useWindow: { - type: Boolean, - default: false - } - }, - data: function data() { - return { - EmptyBox: _assets_Illustrations_empty_svg__WEBPACK_IMPORTED_MODULE_4__ - }; - }, - computed: _objectSpread(_objectSpread({}, (0,vuex__WEBPACK_IMPORTED_MODULE_5__.mapGetters)(['files'])), {}, { - /** - * @return {object[]} The list of items to pass to TiledLayout. - */ - fileIdsToItems: function fileIdsToItems() { - if (this.fileIds === undefined) { - return []; - } - - return this.fileIds.map(this.mapFileToItem); - }, - - /** - * @return {object[]} The list of items separated by sections to pass to TiledLayout. - */ - sectionsToItems: function sectionsToItems() { - var _this = this; - - if (this.sections === undefined) { - return []; - } - - return this.sections.flatMap(function (sectionId) { - return [{ - id: sectionId, - sectionHeader: true, - height: _this.sectionHeaderHeight - }].concat(_toConsumableArray(_this.fileIdsBySection[sectionId].map(_this.mapFileToItem))); - }); - }, - - /** - * @return {object[]} The list of items to pass to TiledLayout. - */ - items: function items() { - if (this.fileIds !== undefined) { - return this.fileIdsToItems; - } - - if (this.sections !== undefined) { - return this.sectionsToItems; - } - - return []; - } - }), - methods: { - // Ask the parent for more content. - needContent: function needContent() { - this.$emit('need-content'); - }, - mapFileToItem: function mapFileToItem(fileId) { - var file = this.files[fileId]; - return { - id: file.fileid, - width: file.fileMetadataSizeParsed.width, - height: file.fileMetadataSizeParsed.height, - ratio: file.fileMetadataSizeParsed.width / file.fileMetadataSizeParsed.height - }; - } - } -}); - -/***/ }), - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Loader.vue?vue&type=script&lang=js&": -/*!****************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Loader.vue?vue&type=script&lang=js& ***! - \****************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'Loader' -}); - -/***/ }), - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/TiledLayout.vue?vue&type=script&lang=js&": -/*!*********************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/TiledLayout.vue?vue&type=script&lang=js& ***! - \*********************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _services_logger_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../services/logger.js */ "./src/services/logger.js"); -/* harmony import */ var _services_TiledLayout_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../services/TiledLayout.js */ "./src/services/TiledLayout.js"); -/* harmony import */ var _TiledRows_vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./TiledRows.vue */ "./src/components/TiledRows.vue"); -function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; } - -function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } - -function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; } - -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'TiledLayout', - components: { - TiledRows: _TiledRows_vue__WEBPACK_IMPORTED_MODULE_2__["default"] - }, - props: { - items: { - type: Array, - required: true - }, - baseHeight: { - type: Number, - default: 200 - } - }, - data: function data() { - return { - containerWidth: 0, - - /** @type {ResizeObserver} */ - resizeObserver: null - }; - }, - computed: { - /** @return {import('../services/TiledLayout.js').TiledRow[]} */ - rows: function rows() { - _services_logger_js__WEBPACK_IMPORTED_MODULE_0__["default"].debug('[TiledLayout] Computing rows', this.items); - return (0,_services_TiledLayout_js__WEBPACK_IMPORTED_MODULE_1__.splitItemsInRows)(this.items, this.containerWidth, this.baseHeight); - } - }, - mounted: function mounted() { - var _this = this; - - this.resizeObserver = new ResizeObserver(function (entries) { - var _iterator = _createForOfIteratorHelper(entries), - _step; - - try { - for (_iterator.s(); !(_step = _iterator.n()).done;) { - var entry = _step.value; - var cr = entry.contentRect; - - if (entry.target.classList.contains('tiled-container')) { - _this.containerWidth = cr.width; - } - } - } catch (err) { - _iterator.e(err); - } finally { - _iterator.f(); - } - }); - this.resizeObserver.observe(this.$refs.tiledLayoutContainer); - }, - beforeDestroy: function beforeDestroy() { - this.resizeObserver.disconnect(); - } -}); - -/***/ }), - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/VirtualScrolling.vue?vue&type=script&lang=js&": -/*!**************************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/VirtualScrolling.vue?vue&type=script&lang=js& ***! - \**************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var debounce__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! debounce */ "./node_modules/debounce/index.js"); -/* harmony import */ var debounce__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(debounce__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _services_logger_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../services/logger.js */ "./src/services/logger.js"); -function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; } - -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } - -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); } - -function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } - -function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } - -function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); } - -function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); } - -function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; } - -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - - -/** - * @typedef {object} Row - * @property {number} height - The height of the row. - */ - -/** - * @typedef {Row} VisibleRow - * @property {'none'|'near'|'visible'} visibility - The visibility state of the row - * @property {boolean} shouldRender - Whether the row should be renderer in the DOM - */ - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'VirtualScrolling', - props: { - rows: { - type: Array, - required: true - }, - containerElement: { - type: HTMLElement, - default: null - }, - useWindow: { - type: Boolean, - default: false - }, - renderWindowRatio: { - type: Number, - default: 4 - }, - willBeVisibleWindowRatio: { - type: Number, - default: 4 - }, - visibleWindowRatio: { - type: Number, - // A little bit more than the container's height to include items at its edges. - default: 0 - }, - bottomBufferRatio: { - type: Number, - default: 5 - }, - scrollToKey: { - type: String, - default: '' - } - }, - data: function data() { - return { - scrollPosition: 0, - containerHeight: 0, - rowsContainerHeight: 0, - - /** @type {ResizeObserver} */ - resizeObserver: null - }; - }, - computed: { - /** - * @return {VisibleRow[]} - */ - visibleRows: function visibleRows() { - _services_logger_js__WEBPACK_IMPORTED_MODULE_1__["default"].debug('[VirtualScrolling] Computing visible rows', this.rows); // Optimisation: get those computed properties once to not go through vue's internal every time we need them. - - var scrollPosition = this.scrollPosition; - var containerHeight = this.containerHeight; // Optimisation: different windows to hint the items how they should render themselves. - // This will be forwarded with the visibility props. - - var shouldRenderedWindow = containerHeight * this.renderWindowRatio; - var willBeVisibleWindow = containerHeight * this.willBeVisibleWindowRatio; - var visibleWindow = containerHeight * this.visibleWindowRatio; - var currentRowTopDistanceFromTop = 0; - var currentRowBottomDistanceFromTop = 0; // Compute whether a row should be included in the DOM (shouldRender) - // And how visible the row is. - - return this.rows.reduce(function (visibleRows, row) { - currentRowTopDistanceFromTop = currentRowBottomDistanceFromTop; - currentRowBottomDistanceFromTop += row.height; - - if (currentRowTopDistanceFromTop < scrollPosition - shouldRenderedWindow || scrollPosition + containerHeight + shouldRenderedWindow < currentRowTopDistanceFromTop) { - return visibleRows; - } - - var visibility = 'none'; - - if (scrollPosition - willBeVisibleWindow < currentRowTopDistanceFromTop && currentRowTopDistanceFromTop < scrollPosition + containerHeight + willBeVisibleWindow) { - visibility = 'near'; - - if (scrollPosition - visibleWindow < currentRowTopDistanceFromTop && currentRowTopDistanceFromTop < scrollPosition + containerHeight + visibleWindow) { - visibility = 'visible'; - } - - if (scrollPosition - visibleWindow < currentRowBottomDistanceFromTop && currentRowBottomDistanceFromTop < scrollPosition + containerHeight + visibleWindow) { - visibility = 'visible'; - } - } - - return [].concat(_toConsumableArray(visibleRows), [_objectSpread(_objectSpread({}, row), {}, { - visibility: visibility - })]); - }, []); - }, - - /** - * Total height of all the rows + some room for the loader. - * - * @return {number} - */ - rowsHeight: function rowsHeight() { - var loaderHeight = 200; - return this.rows.map(function (row) { - return row.height; - }).reduce(function (totalHeight, rowHeight) { - return totalHeight + rowHeight; - }, 0) + loaderHeight; - }, - - /** - * @return {number} - */ - paddingTop: function paddingTop() { - var _this = this; - - if (this.visibleRows.length === 0) { - return 0; - } - - var firstVisibleRowIndex = this.rows.findIndex(function (row) { - return row.items === _this.visibleRows[0].items; - }); - return this.rows.map(function (row) { - return row.height; - }).slice(0, firstVisibleRowIndex).reduce(function (totalHeight, rowHeight) { - return totalHeight + rowHeight; - }, 0); - }, - - /** - * padding-top is used to replace not included item in the container. - * - * @return {object} - */ - rowsContainerStyle: function rowsContainerStyle() { - return { - height: "".concat(this.rowsHeight, "px"), - paddingTop: "".concat(this.paddingTop, "px") - }; - }, - - /** - * Whether the user is near the bottom. - * If true, then the need-content event will be emitted. - * - * @return {boolean} - */ - isNearBottom: function isNearBottom() { - var buffer = this.containerHeight * this.bottomBufferRatio; - return this.scrollPosition + this.containerHeight >= this.rowsHeight - buffer; - }, - - /** - * @return {HTMLElement} - */ - container: function container() { - _services_logger_js__WEBPACK_IMPORTED_MODULE_1__["default"].debug('[VirtualScrolling] Computing container'); - - if (this.containerElement !== null) { - return this.containerElement; - } else if (this.useWindow) { - return window; - } else { - return this.$refs.container; - } - } - }, - watch: { - isNearBottom: function isNearBottom(value) { - if (value) { - this.$emit('need-content'); - } - }, - rows: function rows() { - // Re-emit need-content when rows is updated and isNearBottom is still true. - // If the height of added rows is under `bottomBufferRatio`, `isNearBottom` will still be true so we need more content. - if (this.isNearBottom) { - this.$emit('need-content'); - } - }, - scrollToKey: function scrollToKey(key) { - var currentRowTopDistanceFromTop = 0; - - var _iterator = _createForOfIteratorHelper(this.rows), - _step; - - try { - for (_iterator.s(); !(_step = _iterator.n()).done;) { - var row = _step.value; - - if (row.key === key) { - this.$refs.container.scrollTo({ - top: currentRowTopDistanceFromTop, - behavior: 'smooth' - }); - return; - } - - currentRowTopDistanceFromTop += row.height; - } - } catch (err) { - _iterator.e(err); - } finally { - _iterator.f(); - } - } - }, - mounted: function mounted() { - var _this2 = this; - - this.resizeObserver = new ResizeObserver(function (entries) { - var _iterator2 = _createForOfIteratorHelper(entries), - _step2; - - try { - for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) { - var entry = _step2.value; - var cr = entry.contentRect; - - if (entry.target.classList.contains('vs-container')) { - _this2.containerHeight = cr.height; - } - - if (entry.target.classList.contains('vs-rows-container')) { - _this2.rowsContainerHeight = cr.height; - } - } - } catch (err) { - _iterator2.e(err); - } finally { - _iterator2.f(); - } - }); - - if (this.useWindow) { - window.addEventListener('resize', this.updateContainerSize); - this.containerHeight = window.innerHeight; - } else { - this.resizeObserver.observe(this.container); - } - - this.resizeObserver.observe(this.$refs.rowsContainer); - this.container.addEventListener('scroll', this.updateScrollPosition); - }, - beforeDestroy: function beforeDestroy() { - if (this.useWindow) { - window.removeEventListener('resize', this.updateContainerSize); - } - - this.resizeObserver.disconnect(); - this.container.removeEventListener('scroll', this.updateScrollPosition); - }, - methods: { - updateScrollPosition: (0,debounce__WEBPACK_IMPORTED_MODULE_0__.debounce)(function () { - if (this.useWindow) { - this.scrollPosition = this.container.scrollY; - } else { - this.scrollPosition = this.container.scrollTop; - } - }, 200), - updateContainerSize: function updateContainerSize() { - this.containerHeight = window.innerHeight; - } - } -}); - -/***/ }), - -/***/ "./src/mixins/FetchFilesMixin.js": -/*!***************************************!*\ - !*** ./src/mixins/FetchFilesMixin.js ***! - \***************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _services_logger_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../services/logger.js */ "./src/services/logger.js"); -/* harmony import */ var _services_PhotoSearch_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../services/PhotoSearch.js */ "./src/services/PhotoSearch.js"); -/* harmony import */ var _utils_CancelableRequest_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils/CancelableRequest.js */ "./src/utils/CancelableRequest.js"); -/* harmony import */ var _utils_semaphoreWithPriority_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../utils/semaphoreWithPriority.js */ "./src/utils/semaphoreWithPriority.js"); -/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js"); -function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); } - -function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } - -function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } - -function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); } - -function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); } - -function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; } - -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } - -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } - -function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } - -/** - * @copyright Copyright (c) 2022 Louis Chemineau - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ - - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'FetchFilesMixin', - data: function data() { - return { - errorFetchingFiles: null, - loadingFiles: false, - doneFetchingFiles: false, - cancelFilesRequest: function cancelFilesRequest() {}, - semaphore: new _utils_semaphoreWithPriority_js__WEBPACK_IMPORTED_MODULE_3__["default"](30), - fetchSemaphore: new _utils_semaphoreWithPriority_js__WEBPACK_IMPORTED_MODULE_3__["default"](1), - semaphoreSymbol: null, - fetchedFileIds: [] - }; - }, - beforeDestroy: function beforeDestroy() { - if (this.cancelFilesRequest) { - this.cancelFilesRequest('Changed view'); - } - }, - beforeRouteLeave: function beforeRouteLeave(from, to, next) { - if (this.cancelFilesRequest) { - this.cancelFilesRequest('Changed view'); - } - - return next(); - }, - watch: { - $route: function $route() { - this.resetFetchFilesState(); - } - }, - methods: { - /** - * @param {string} path - Path to pass to getPhotos. - * @param {object} options - Options to pass to getPhotos. - * @param {string[]} [blacklist=[]] - Array of ids to filter out. - * @return {Promise} - The next batch of data depending on global offset. - */ - fetchFiles: function fetchFiles() { - var _arguments = arguments, - _this = this; - - return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() { - var path, options, blacklist, semaphoreSymbol, fetchSemaphoreSymbol, _this$fetchedFileIds, _cancelableRequest, request, cancel, numberOfImagesPerBatch, fetchedFiles, fileIds, _error$response; - - return regeneratorRuntime.wrap(function _callee$(_context) { - while (1) { - switch (_context.prev = _context.next) { - case 0: - path = _arguments.length > 0 && _arguments[0] !== undefined ? _arguments[0] : ''; - options = _arguments.length > 1 && _arguments[1] !== undefined ? _arguments[1] : {}; - blacklist = _arguments.length > 2 && _arguments[2] !== undefined ? _arguments[2] : []; - - if (!(_this.doneFetchingFiles || _this.loadingFiles)) { - _context.next = 5; - break; - } - - return _context.abrupt("return", []); - - case 5: - _context.next = 7; - return _this.semaphore.acquire(function () { - return 0; - }, 'fetchFiles'); - - case 7: - semaphoreSymbol = _context.sent; - _context.next = 10; - return _this.fetchSemaphore.acquire(); - - case 10: - fetchSemaphoreSymbol = _context.sent; - _context.prev = 11; - _this.errorFetchingFiles = null; - _this.loadingFiles = true; - _this.semaphoreSymbol = semaphoreSymbol; - _cancelableRequest = (0,_utils_CancelableRequest_js__WEBPACK_IMPORTED_MODULE_2__["default"])(_services_PhotoSearch_js__WEBPACK_IMPORTED_MODULE_1__["default"]), request = _cancelableRequest.request, cancel = _cancelableRequest.cancel; - _this.cancelFilesRequest = cancel; - numberOfImagesPerBatch = 1000; // Load next batch of images - - _context.next = 20; - return request(path, _objectSpread({ - firstResult: _this.fetchedFileIds.length, - nbResults: numberOfImagesPerBatch - }, options)); - - case 20: - fetchedFiles = _context.sent; - - // If we get less files than requested that means we got to the end - if (fetchedFiles.length !== numberOfImagesPerBatch) { - _this.doneFetchingFiles = true; - } - - fileIds = fetchedFiles.map(function (file) { - return file.fileid; - }).filter(function (fileId) { - return !_this.fetchedFileIds.includes(fileId); - }); // Filter to prevent duplicate fileIds. - - (_this$fetchedFileIds = _this.fetchedFileIds).push.apply(_this$fetchedFileIds, _toConsumableArray(fileIds.map(function (fileId) { - return fileId.toString(); - }).filter(function (fileId) { - return !blacklist.includes(fileId); - }))); - - _this.$store.dispatch('appendFiles', fetchedFiles); - - _services_logger_js__WEBPACK_IMPORTED_MODULE_0__["default"].debug("[FetchFilesMixin] Fetched ".concat(fileIds.length, " new files: "), fileIds); - return _context.abrupt("return", fileIds); - - case 29: - _context.prev = 29; - _context.t0 = _context["catch"](11); - - if (!(((_error$response = _context.t0.response) === null || _error$response === void 0 ? void 0 : _error$response.status) === 404)) { - _context.next = 35; - break; - } - - _this.errorFetchingFiles = 404; - _context.next = 40; - break; - - case 35: - if (!(_context.t0.code === 'ERR_CANCELED')) { - _context.next = 39; - break; - } - - return _context.abrupt("return", []); - - case 39: - _this.errorFetchingFiles = _context.t0; - - case 40: - // cancelled request, moving on... - _services_logger_js__WEBPACK_IMPORTED_MODULE_0__["default"].error('Error fetching files', _context.t0); - console.error(_context.t0); - - case 42: - _context.prev = 42; - _this.loadingFiles = false; - - _this.cancelFilesRequest = function () {}; - - _this.semaphore.release(semaphoreSymbol); - - _this.fetchSemaphore.release(fetchSemaphoreSymbol); - - return _context.finish(42); - - case 48: - return _context.abrupt("return", []); - - case 49: - case "end": - return _context.stop(); - } - } - }, _callee, null, [[11, 29, 42, 48]]); - }))(); - }, - resetFetchFilesState: function resetFetchFilesState() { - this.doneFetchingFiles = false; - this.errorFetchingFiles = null; - this.loadingFiles = false; - this.fetchedFileIds = []; - - this.cancelFilesRequest = function () {}; - } - } -}); - -/***/ }), - -/***/ "./src/mixins/FilesSelectionMixin.js": -/*!*******************************************!*\ - !*** ./src/mixins/FilesSelectionMixin.js ***! - \*******************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/** - * @copyright Copyright (c) 2019 Louis Chemineau - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'FilesSelectionMixin', - data: function data() { - return { - /** @type {Object} */ - selection: {} - }; - }, - methods: { - onFileSelectToggle: function onFileSelectToggle(_ref) { - var id = _ref.id, - value = _ref.value; - this.$set(this.selection, id, value); - }, - - /** - * @param {string[]} filesIds - The ids of the files to uncheck. - */ - onUncheckFiles: function onUncheckFiles(filesIds) { - var _this = this; - - filesIds.forEach(function ( - /** @type {string} */ - filesId) { - return _this.$set(_this.selection, filesId, false); - }); - }, - resetSelection: function resetSelection() { - this.selection = {}; - } - }, - computed: { - /** - * @return {string[]} - */ - selectedFileIds: function selectedFileIds() { - var _this2 = this; - - return Object.keys(this.selection).filter(function (fileId) { - return _this2.selection[fileId]; - }); - } - } -}); - -/***/ }), - -/***/ "./src/services/PhotoSearch.js": -/*!*************************************!*\ - !*** ./src/services/PhotoSearch.js ***! - \*************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* export default binding */ __WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _utils_fileUtils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils/fileUtils.js */ "./src/utils/fileUtils.js"); -/* harmony import */ var _nextcloud_auth__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/auth */ "./node_modules/@nextcloud/auth/dist/index.esm.js"); -/* harmony import */ var _AllowedMimes_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./AllowedMimes.js */ "./src/services/AllowedMimes.js"); -/* harmony import */ var _DavClient_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./DavClient.js */ "./src/services/DavClient.js"); -/* harmony import */ var _DavRequest_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./DavRequest.js */ "./src/services/DavRequest.js"); -/* harmony import */ var _nextcloud_moment__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @nextcloud/moment */ "./node_modules/@nextcloud/moment/dist/index.js"); -/* harmony import */ var _nextcloud_moment__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_moment__WEBPACK_IMPORTED_MODULE_5__); -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } - -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } - -function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } - -/** - * @copyright Copyright (c) 2019 John Molakvoæ - * - * @author John Molakvoæ - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ - - - - - - -/** - * List files from a folder and filter out unwanted mimes - * - * @param {object} path the lookup path - * @param {object} [options] used for the cancellable requests - * @param {number} [options.firstResult=0] Index of the first result that we want (starts at 0) - * @param {number} [options.nbResults=200] The number of file to fetch - * @param {string[]} [options.mimesType=allMimes] Mime type of the files - * @param {boolean} [options.full=false] get full data of the files - * @param {boolean} [options.onThisDay=false] get only items from this day of year - * @param {boolean} [options.onlyFavorites=false] get only favorite items - * @return {Promise} the file list - */ - -/* harmony default export */ function __WEBPACK_DEFAULT_EXPORT__() { - return _ref.apply(this, arguments); -} - -function _ref() { - _ref = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() { - var path, - options, - prefixPath, - orMime, - eqFavorites, - onThisDay, - response, - _args = arguments; - return regeneratorRuntime.wrap(function _callee$(_context) { - while (1) { - switch (_context.prev = _context.next) { - case 0: - path = _args.length > 0 && _args[0] !== undefined ? _args[0] : ''; - options = _args.length > 1 && _args[1] !== undefined ? _args[1] : {}; - // default function options - options = _objectSpread({ - firstResult: 0, - nbResults: 200, - mimesType: _AllowedMimes_js__WEBPACK_IMPORTED_MODULE_2__.allMimes, - onThisDay: false, - onlyFavorites: false - }, options); - prefixPath = "/files/".concat((0,_nextcloud_auth__WEBPACK_IMPORTED_MODULE_1__.getCurrentUser)().uid); // generating the search or condition - // based on the allowed mimetypes - - orMime = options.mimesType.reduce(function (str, mime) { - return "".concat(str, "\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t").concat(mime, "\n\t\t\n\t"); - }, ''); - eqFavorites = options.onlyFavorites ? "\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t1\n\t\t\t" : ''; - onThisDay = options.onThisDay ? "".concat(Array(20).fill(1).map(function (_, years) { - var start = _nextcloud_moment__WEBPACK_IMPORTED_MODULE_5___default()(Date.now()).startOf('day').subtract(3, 'd').subtract(years + 1, 'y'); - var end = _nextcloud_moment__WEBPACK_IMPORTED_MODULE_5___default()(Date.now()).endOf('day').add(3, 'd').subtract(years + 1, 'y'); - return "\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t".concat(start.format((_nextcloud_moment__WEBPACK_IMPORTED_MODULE_5___default().defaultFormatUtc)), "\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t").concat(end.format((_nextcloud_moment__WEBPACK_IMPORTED_MODULE_5___default().defaultFormatUtc)), "\n\t\t\t\t\n\t\t\t"); - }).join('\n'), "") : ''; - options = Object.assign({ - method: 'SEARCH', - headers: { - 'content-Type': 'text/xml' - }, - data: "\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t".concat(_DavRequest_js__WEBPACK_IMPORTED_MODULE_4__.props, "\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t").concat(prefixPath, "/").concat(path, "\n\t\t\t\t\t\t\tinfinity\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t").concat(orMime, "\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t").concat(eqFavorites, "\n\t\t\t\t\t\t\t").concat(onThisDay, "\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t").concat(options.nbResults, "\n\t\t\t\t\t\t").concat(options.firstResult, "\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t"), - deep: true, - details: true - }, options); - _context.next = 10; - return _DavClient_js__WEBPACK_IMPORTED_MODULE_3__["default"].getDirectoryContents('', options); - - case 10: - response = _context.sent; - return _context.abrupt("return", response.data.map(function (data) { - return (0,_utils_fileUtils_js__WEBPACK_IMPORTED_MODULE_0__.genFileInfo)(data); - }) // remove prefix path from full file path - .map(function (data) { - return _objectSpread(_objectSpread({}, data), {}, { - filename: data.filename.replace(prefixPath, '') - }); - })); - - case 12: - case "end": - return _context.stop(); - } - } - }, _callee); - })); - return _ref.apply(this, arguments); -} - -/***/ }), - -/***/ "./src/services/TiledLayout.js": -/*!*************************************!*\ - !*** ./src/services/TiledLayout.js ***! - \*************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "splitItemsInRows": () => (/* binding */ splitItemsInRows) -/* harmony export */ }); -/** - * @copyright Copyright (c) 2022 Louis Chemineau - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ - -/** - * @typedef {object} TiledItem - * @property {string} id - * @property {number} [width] Real width of the item. - * @property {number} height Real height of the item. - * @property {number} [ratio] The aspect ratio of the item. - * @property {boolean} [sectionHeader] Whether this row is a section header. - */ - -/** - * @typedef {object} TiledRow - * @property {TiledItem[]} items - - * @property {number} height - - * @property {string} key - - */ - -/** - * Split items in rows of equal width. - * The last row will not be forced to match containerWidth. - * - * @param {TiledItem[]} items The list of item to split in row of equal width. - * @param {number} containerWidth The width of a row. - * @param {number} baseHeight The base height of the rows. - * @return {TiledRow[]} - */ -function splitItemsInRows(items, containerWidth) { - var baseHeight = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 200; - - if (containerWidth === 0) { - return []; - } - - var rows = []; - var rowNumber = 0; - var currentItem = 0; - - while (currentItem < items.length) { - /** @type { TiledItem[] } */ - var rowItems = []; // Fill the row with new items as long as the width is less than containerWidth. - - do { - // @ts-ignore - We know that items.shift() is not undefined as we always check that items.length > 0. - rowItems.push(items[currentItem++]); - } while (currentItem < items.length && !items[currentItem - 1].sectionHeader && !items[currentItem].sectionHeader && computeRowWidth([].concat(rowItems, [items[currentItem]]), baseHeight) <= containerWidth); - - rows[rowNumber] = { - items: rowItems, - height: computeRowHeight(rowItems, containerWidth, items.length === currentItem || items[currentItem].sectionHeader === true, baseHeight), - // Key to help vue to keep track of the row in VirtualScrolling. - key: rowItems.map(function (item) { - return item.id; - }).join('-') - }; - rowNumber += 1; - } - - return rows; -} -/** - * - * @param {TiledItem[]} items The list of items in the row. - * @param {number} baseHeight The base height of the rows. - * @return {number} The width of the row - */ - -function computeRowWidth(items, baseHeight) { - return items.map(function (item) { - return baseHeight * item.ratio; - }).reduce(function (sum, itemWidth) { - return sum + itemWidth; - }); -} -/** - * Compute the row height based on its items and on the container's width. - * - * Math time ! - * With Rn the aspect ratio of item n - * Wn the width of item n - * Hn the height of item n - * Wc the width of the container - * Hr the height of the row - * For n items we want: Wc = W1 + W2 + ... + Wn - * We know Rn = Wn / Hn - * So Wn = Rn * Hn - * So Wc = (R1 * H1) + (R2 * H2) + ... + (Rn * Hn) - * But we also want Hr === H1 === H2 === ... === Hn - * So Wc = (R1 * Hr) + (R2 * Hr) + ... + (Rn * Hr) - * So Wc = Hr * (R1 + R2 + ... + Rn) - * So Hr = Wc / (R1 + R2 + ... + Rn) - * - * @param {TiledItem[]} items The list of items in the row. - * @param {number} containerWidth The width of the row. - * @param {boolean} isLastRow Whether we are computing the height for the last row. - * @param {number} baseHeight The base height of the rows. - * @return {number} The height of the row - */ - - -function computeRowHeight(items, containerWidth, isLastRow, baseHeight) { - // Exception 1: there is only one item and its width it is a sectionHeader, meaning take the full width. - if (items.length === 1 && items[0].sectionHeader) { - return items[0].height; - } - - var sumOfItemsRatio = items.map(function (item) { - return item.ratio; - }).reduce(function (sum, itemRatio) { - return sum + itemRatio; - }); - var rowHeight = containerWidth / sumOfItemsRatio; // Exception 2: there is only one item which is larger than containerWidth. - // Limit its height so that itemWidth === containerWidth - - if (items.length === 1 && items[0].width > containerWidth) { - rowHeight = containerWidth / items[0].ratio; - } // Exception 3: we reached the last row. - // Force the items width to match containerWidth, and limit their heigh to baseHeight + 20. - - - if (isLastRow) { - rowHeight = Math.min(baseHeight + 20, rowHeight); - } - - return rowHeight; -} - -/***/ }), - -/***/ "./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!./src/components/FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true&": -/*!*************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/components/FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true& ***! - \*************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".files-list-viewer[data-v-3ebf26b2] {\n height: 100%;\n position: relative;\n}\n.files-list-viewer[data-v-3ebf26b2] .empty-content__icon {\n width: 200px;\n height: 200px;\n}\n.files-list-viewer[data-v-3ebf26b2] .empty-content__icon .empty-content-illustration svg {\n width: 200px;\n height: 200px;\n}\n.files-list-viewer .tiled-row[data-v-3ebf26b2] {\n display: flex;\n}\n.files-list-viewer__section-header[data-v-3ebf26b2] {\n position: -webkit-sticky;\n position: sticky;\n top: 0;\n z-index: 3;\n background: var(--color-main-background);\n}\n.files-list-viewer__loader[data-v-3ebf26b2] {\n margin: 50px 0;\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./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!./src/components/Loader.vue?vue&type=style&index=0&lang=scss&": -/*!****************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/components/Loader.vue?vue&type=style&index=0&lang=scss& ***! - \****************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".loader {\n display: grid;\n height: 60px;\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./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!./src/components/TiledLayout.vue?vue&type=style&index=0&id=aaf5cf80&scoped=true&lang=scss&": -/*!*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/components/TiledLayout.vue?vue&type=style&index=0&id=aaf5cf80&scoped=true&lang=scss& ***! - \*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".tiled-container[data-v-aaf5cf80] {\n height: 100%;\n}\n.tiled-container .tiled-row[data-v-aaf5cf80] {\n display: flex;\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./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!./src/components/TiledRows.vue?vue&type=style&index=0&id=332876ef&lang=scss&scoped=true&": -/*!*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/components/TiledRows.vue?vue&type=style&index=0&id=332876ef&lang=scss&scoped=true& ***! - \*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".tiled-row[data-v-332876ef] {\n display: flex;\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./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!./src/components/VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss&": -/*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/components/VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss& ***! - \**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".vs-container[data-v-3d9f7b4c] {\n overflow-y: scroll;\n height: 100%;\n}\n.vs-rows-container[data-v-3d9f7b4c] {\n box-sizing: border-box;\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true&": -/*!*****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/components/FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true& ***! - \*****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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_FilesListViewer_vue_vue_type_style_index_0_id_3ebf26b2_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../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!./FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true& */ "./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!./src/components/FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_FilesListViewer_vue_vue_type_style_index_0_id_3ebf26b2_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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_FilesListViewer_vue_vue_type_style_index_0_id_3ebf26b2_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_FilesListViewer_vue_vue_type_style_index_0_id_3ebf26b2_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_FilesListViewer_vue_vue_type_style_index_0_id_3ebf26b2_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/Loader.vue?vue&type=style&index=0&lang=scss&": -/*!********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/components/Loader.vue?vue&type=style&index=0&lang=scss& ***! - \********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../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& */ "./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!./src/components/Loader.vue?vue&type=style&index=0&lang=scss&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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___WEBPACK_IMPORTED_MODULE_6__["default"] && _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___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/TiledLayout.vue?vue&type=style&index=0&id=aaf5cf80&scoped=true&lang=scss&": -/*!*************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/components/TiledLayout.vue?vue&type=style&index=0&id=aaf5cf80&scoped=true&lang=scss& ***! - \*************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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_TiledLayout_vue_vue_type_style_index_0_id_aaf5cf80_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../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!./TiledLayout.vue?vue&type=style&index=0&id=aaf5cf80&scoped=true&lang=scss& */ "./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!./src/components/TiledLayout.vue?vue&type=style&index=0&id=aaf5cf80&scoped=true&lang=scss&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_TiledLayout_vue_vue_type_style_index_0_id_aaf5cf80_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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_TiledLayout_vue_vue_type_style_index_0_id_aaf5cf80_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_TiledLayout_vue_vue_type_style_index_0_id_aaf5cf80_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_TiledLayout_vue_vue_type_style_index_0_id_aaf5cf80_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/TiledRows.vue?vue&type=style&index=0&id=332876ef&lang=scss&scoped=true&": -/*!***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/components/TiledRows.vue?vue&type=style&index=0&id=332876ef&lang=scss&scoped=true& ***! - \***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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_TiledRows_vue_vue_type_style_index_0_id_332876ef_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../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!./TiledRows.vue?vue&type=style&index=0&id=332876ef&lang=scss&scoped=true& */ "./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!./src/components/TiledRows.vue?vue&type=style&index=0&id=332876ef&lang=scss&scoped=true&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_TiledRows_vue_vue_type_style_index_0_id_332876ef_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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_TiledRows_vue_vue_type_style_index_0_id_332876ef_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_TiledRows_vue_vue_type_style_index_0_id_332876ef_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_TiledRows_vue_vue_type_style_index_0_id_332876ef_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss&": -/*!******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/components/VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss& ***! - \******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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_VirtualScrolling_vue_vue_type_style_index_0_id_3d9f7b4c_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../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!./VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss& */ "./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!./src/components/VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_VirtualScrolling_vue_vue_type_style_index_0_id_3d9f7b4c_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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_VirtualScrolling_vue_vue_type_style_index_0_id_3d9f7b4c_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_VirtualScrolling_vue_vue_type_style_index_0_id_3d9f7b4c_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_VirtualScrolling_vue_vue_type_style_index_0_id_3d9f7b4c_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./src/components/FilesListViewer.vue": -/*!********************************************!*\ - !*** ./src/components/FilesListViewer.vue ***! - \********************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _FilesListViewer_vue_vue_type_template_id_3ebf26b2_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./FilesListViewer.vue?vue&type=template&id=3ebf26b2&scoped=true& */ "./src/components/FilesListViewer.vue?vue&type=template&id=3ebf26b2&scoped=true&"); -/* harmony import */ var _FilesListViewer_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./FilesListViewer.vue?vue&type=script&lang=js& */ "./src/components/FilesListViewer.vue?vue&type=script&lang=js&"); -/* harmony import */ var _FilesListViewer_vue_vue_type_style_index_0_id_3ebf26b2_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true& */ "./src/components/FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( - _FilesListViewer_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _FilesListViewer_vue_vue_type_template_id_3ebf26b2_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render, - _FilesListViewer_vue_vue_type_template_id_3ebf26b2_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - "3ebf26b2", - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/FilesListViewer.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/Loader.vue": -/*!***********************************!*\ - !*** ./src/components/Loader.vue ***! - \***********************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _Loader_vue_vue_type_template_id_04a0d67a___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Loader.vue?vue&type=template&id=04a0d67a& */ "./src/components/Loader.vue?vue&type=template&id=04a0d67a&"); -/* harmony import */ var _Loader_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Loader.vue?vue&type=script&lang=js& */ "./src/components/Loader.vue?vue&type=script&lang=js&"); -/* harmony import */ var _Loader_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Loader.vue?vue&type=style&index=0&lang=scss& */ "./src/components/Loader.vue?vue&type=style&index=0&lang=scss&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( - _Loader_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _Loader_vue_vue_type_template_id_04a0d67a___WEBPACK_IMPORTED_MODULE_0__.render, - _Loader_vue_vue_type_template_id_04a0d67a___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - null, - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/Loader.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/TiledLayout.vue": -/*!****************************************!*\ - !*** ./src/components/TiledLayout.vue ***! - \****************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _TiledLayout_vue_vue_type_template_id_aaf5cf80_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./TiledLayout.vue?vue&type=template&id=aaf5cf80&scoped=true& */ "./src/components/TiledLayout.vue?vue&type=template&id=aaf5cf80&scoped=true&"); -/* harmony import */ var _TiledLayout_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./TiledLayout.vue?vue&type=script&lang=js& */ "./src/components/TiledLayout.vue?vue&type=script&lang=js&"); -/* harmony import */ var _TiledLayout_vue_vue_type_style_index_0_id_aaf5cf80_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./TiledLayout.vue?vue&type=style&index=0&id=aaf5cf80&scoped=true&lang=scss& */ "./src/components/TiledLayout.vue?vue&type=style&index=0&id=aaf5cf80&scoped=true&lang=scss&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( - _TiledLayout_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _TiledLayout_vue_vue_type_template_id_aaf5cf80_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render, - _TiledLayout_vue_vue_type_template_id_aaf5cf80_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - "aaf5cf80", - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/TiledLayout.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/TiledRows.vue": -/*!**************************************!*\ - !*** ./src/components/TiledRows.vue ***! - \**************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _TiledRows_vue_vue_type_template_id_332876ef_scoped_true_functional_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./TiledRows.vue?vue&type=template&id=332876ef&scoped=true&functional=true& */ "./src/components/TiledRows.vue?vue&type=template&id=332876ef&scoped=true&functional=true&"); -/* harmony import */ var _TiledRows_vue_vue_type_style_index_0_id_332876ef_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./TiledRows.vue?vue&type=style&index=0&id=332876ef&lang=scss&scoped=true& */ "./src/components/TiledRows.vue?vue&type=style&index=0&id=332876ef&lang=scss&scoped=true&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - -var script = {} -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])( - script, - _TiledRows_vue_vue_type_template_id_332876ef_scoped_true_functional_true___WEBPACK_IMPORTED_MODULE_0__.render, - _TiledRows_vue_vue_type_template_id_332876ef_scoped_true_functional_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - true, - null, - "332876ef", - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/TiledRows.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/VirtualScrolling.vue": -/*!*********************************************!*\ - !*** ./src/components/VirtualScrolling.vue ***! - \*********************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _VirtualScrolling_vue_vue_type_template_id_3d9f7b4c_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true& */ "./src/components/VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true&"); -/* harmony import */ var _VirtualScrolling_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./VirtualScrolling.vue?vue&type=script&lang=js& */ "./src/components/VirtualScrolling.vue?vue&type=script&lang=js&"); -/* harmony import */ var _VirtualScrolling_vue_vue_type_style_index_0_id_3d9f7b4c_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss& */ "./src/components/VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( - _VirtualScrolling_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _VirtualScrolling_vue_vue_type_template_id_3d9f7b4c_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render, - _VirtualScrolling_vue_vue_type_template_id_3d9f7b4c_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - "3d9f7b4c", - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/VirtualScrolling.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/FilesListViewer.vue?vue&type=script&lang=js&": -/*!*********************************************************************!*\ - !*** ./src/components/FilesListViewer.vue?vue&type=script&lang=js& ***! - \*********************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListViewer_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListViewer.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FilesListViewer.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListViewer_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/components/Loader.vue?vue&type=script&lang=js&": -/*!************************************************************!*\ - !*** ./src/components/Loader.vue?vue&type=script&lang=js& ***! - \************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Loader_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Loader.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Loader_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/components/TiledLayout.vue?vue&type=script&lang=js&": -/*!*****************************************************************!*\ - !*** ./src/components/TiledLayout.vue?vue&type=script&lang=js& ***! - \*****************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_TiledLayout_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TiledLayout.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/TiledLayout.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_TiledLayout_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/components/VirtualScrolling.vue?vue&type=script&lang=js&": -/*!**********************************************************************!*\ - !*** ./src/components/VirtualScrolling.vue?vue&type=script&lang=js& ***! - \**********************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_VirtualScrolling_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VirtualScrolling.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/VirtualScrolling.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_VirtualScrolling_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/components/FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true&": -/*!******************************************************************************************************!*\ - !*** ./src/components/FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true& ***! - \******************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_FilesListViewer_vue_vue_type_style_index_0_id_3ebf26b2_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/style-loader/dist/cjs.js!../../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!./FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true&"); - - -/***/ }), - -/***/ "./src/components/Loader.vue?vue&type=style&index=0&lang=scss&": -/*!*********************************************************************!*\ - !*** ./src/components/Loader.vue?vue&type=style&index=0&lang=scss& ***! - \*********************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/style-loader/dist/cjs.js!../../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& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/Loader.vue?vue&type=style&index=0&lang=scss&"); - - -/***/ }), - -/***/ "./src/components/TiledLayout.vue?vue&type=style&index=0&id=aaf5cf80&scoped=true&lang=scss&": -/*!**************************************************************************************************!*\ - !*** ./src/components/TiledLayout.vue?vue&type=style&index=0&id=aaf5cf80&scoped=true&lang=scss& ***! - \**************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_TiledLayout_vue_vue_type_style_index_0_id_aaf5cf80_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/style-loader/dist/cjs.js!../../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!./TiledLayout.vue?vue&type=style&index=0&id=aaf5cf80&scoped=true&lang=scss& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/TiledLayout.vue?vue&type=style&index=0&id=aaf5cf80&scoped=true&lang=scss&"); - - -/***/ }), - -/***/ "./src/components/TiledRows.vue?vue&type=style&index=0&id=332876ef&lang=scss&scoped=true&": -/*!************************************************************************************************!*\ - !*** ./src/components/TiledRows.vue?vue&type=style&index=0&id=332876ef&lang=scss&scoped=true& ***! - \************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_TiledRows_vue_vue_type_style_index_0_id_332876ef_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/style-loader/dist/cjs.js!../../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!./TiledRows.vue?vue&type=style&index=0&id=332876ef&lang=scss&scoped=true& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/TiledRows.vue?vue&type=style&index=0&id=332876ef&lang=scss&scoped=true&"); - - -/***/ }), - -/***/ "./src/components/VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss&": -/*!*******************************************************************************************************!*\ - !*** ./src/components/VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss& ***! - \*******************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_VirtualScrolling_vue_vue_type_style_index_0_id_3d9f7b4c_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/style-loader/dist/cjs.js!../../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!./VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss&"); - - -/***/ }), - -/***/ "./src/components/FilesListViewer.vue?vue&type=template&id=3ebf26b2&scoped=true&": -/*!***************************************************************************************!*\ - !*** ./src/components/FilesListViewer.vue?vue&type=template&id=3ebf26b2&scoped=true& ***! - \***************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListViewer_vue_vue_type_template_id_3ebf26b2_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListViewer_vue_vue_type_template_id_3ebf26b2_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListViewer_vue_vue_type_template_id_3ebf26b2_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListViewer.vue?vue&type=template&id=3ebf26b2&scoped=true& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FilesListViewer.vue?vue&type=template&id=3ebf26b2&scoped=true&"); - - -/***/ }), - -/***/ "./src/components/Loader.vue?vue&type=template&id=04a0d67a&": -/*!******************************************************************!*\ - !*** ./src/components/Loader.vue?vue&type=template&id=04a0d67a& ***! - \******************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Loader_vue_vue_type_template_id_04a0d67a___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Loader_vue_vue_type_template_id_04a0d67a___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Loader_vue_vue_type_template_id_04a0d67a___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=template&id=04a0d67a& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Loader.vue?vue&type=template&id=04a0d67a&"); - - -/***/ }), - -/***/ "./src/components/TiledLayout.vue?vue&type=template&id=aaf5cf80&scoped=true&": -/*!***********************************************************************************!*\ - !*** ./src/components/TiledLayout.vue?vue&type=template&id=aaf5cf80&scoped=true& ***! - \***********************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_TiledLayout_vue_vue_type_template_id_aaf5cf80_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_TiledLayout_vue_vue_type_template_id_aaf5cf80_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_TiledLayout_vue_vue_type_template_id_aaf5cf80_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TiledLayout.vue?vue&type=template&id=aaf5cf80&scoped=true& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/TiledLayout.vue?vue&type=template&id=aaf5cf80&scoped=true&"); - - -/***/ }), - -/***/ "./src/components/TiledRows.vue?vue&type=template&id=332876ef&scoped=true&functional=true&": -/*!*************************************************************************************************!*\ - !*** ./src/components/TiledRows.vue?vue&type=template&id=332876ef&scoped=true&functional=true& ***! - \*************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_TiledRows_vue_vue_type_template_id_332876ef_scoped_true_functional_true___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_TiledRows_vue_vue_type_template_id_332876ef_scoped_true_functional_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_TiledRows_vue_vue_type_template_id_332876ef_scoped_true_functional_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TiledRows.vue?vue&type=template&id=332876ef&scoped=true&functional=true& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/TiledRows.vue?vue&type=template&id=332876ef&scoped=true&functional=true&"); - - -/***/ }), - -/***/ "./src/components/VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true&": -/*!****************************************************************************************!*\ - !*** ./src/components/VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true& ***! - \****************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_VirtualScrolling_vue_vue_type_template_id_3d9f7b4c_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_VirtualScrolling_vue_vue_type_template_id_3d9f7b4c_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_VirtualScrolling_vue_vue_type_template_id_3d9f7b4c_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true&"); - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FilesListViewer.vue?vue&type=template&id=3ebf26b2&scoped=true&": -/*!******************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FilesListViewer.vue?vue&type=template&id=3ebf26b2&scoped=true& ***! - \******************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c( - "div", - { staticClass: "files-list-viewer" }, - [ - _vm.emptyMessage !== "" && _vm.items.length === 0 && !_vm.loading - ? _c( - "EmptyContent", - { - key: "emptycontent", - scopedSlots: _vm._u( - [ - { - key: "icon", - fn: function () { - return [ - _c("span", { - staticClass: "empty-content-illustration", - domProps: { innerHTML: _vm._s(_vm.EmptyBox) }, - }), - ] - }, - proxy: true, - }, - ], - null, - false, - 3410044941 - ), - }, - [_vm._v("\n\t\t" + _vm._s(_vm.emptyMessage) + "\n\t")] - ) - : _vm._e(), - _vm._v(" "), - _c("TiledLayout", { - attrs: { "base-height": _vm.baseHeight, items: _vm.items }, - scopedSlots: _vm._u([ - { - key: "default", - fn: function (ref) { - var rows = ref.rows - return _c("VirtualScrolling", { - attrs: { - "use-window": _vm.useWindow, - rows: rows, - "scroll-to-key": _vm.scrollToSection, - }, - on: { "need-content": _vm.needContent }, - scopedSlots: _vm._u( - [ - { - key: "default", - fn: function (ref) { - var renderedRows = ref.renderedRows - return _c( - "ul", - {}, - _vm._l(renderedRows, function (row) { - return _c( - "div", - { - key: row.key, - staticClass: "tiled-row", - class: { - "files-list-viewer__section-header": - row.items[0].sectionHeader, - }, - style: { height: row.height + "px" }, - }, - _vm._l(row.items, function (item) { - return _c( - "li", - { - key: item.id, - style: { - width: item.ratio - ? row.height * item.ratio + "px" - : "100%", - height: row.height + "px", - }, - }, - [ - _vm._t("default", null, { - file: item, - visibility: row.visibility, - }), - ], - 2 - ) - }), - 0 - ) - }), - 0 - ) - }, - }, - _vm.loading - ? { - key: "loader", - fn: function () { - return [ - _c("Loader", { - staticClass: "files-list-viewer__loader", - }), - ] - }, - proxy: true, - } - : null, - ], - null, - true - ), - }) - }, - }, - ]), - }), - ], - 1 - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Loader.vue?vue&type=template&id=04a0d67a&": -/*!*********************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Loader.vue?vue&type=template&id=04a0d67a& ***! - \*********************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -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 - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/TiledLayout.vue?vue&type=template&id=aaf5cf80&scoped=true&": -/*!**************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/TiledLayout.vue?vue&type=template&id=aaf5cf80&scoped=true& ***! - \**************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c( - "div", - { ref: "tiledLayoutContainer", staticClass: "tiled-container" }, - [ - _vm._t( - "default", - function () { - return [_c("TiledRows", { attrs: { rows: _vm.rows } })] - }, - { rows: _vm.rows } - ), - ], - 2 - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/TiledRows.vue?vue&type=template&id=332876ef&scoped=true&functional=true&": -/*!****************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/TiledRows.vue?vue&type=template&id=332876ef&scoped=true&functional=true& ***! - \****************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function (_h, _vm) { - var _c = _vm._c - return _c( - "ul", - _vm._l(_vm.props.rows, function (row) { - return _c( - "div", - { - key: row.key, - staticClass: "tiled-row", - style: { height: row.height + "px" }, - }, - _vm._l(row.items, function (item) { - return _c( - "li", - { - key: item.id, - style: { - width: item.ratio ? row.height * item.ratio + "px" : "100%", - height: row.height + "px", - }, - }, - [_vm._t("default", null, { row: row, item: item })], - 2 - ) - }), - 0 - ) - }), - 0 - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true&": -/*!*******************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true& ***! - \*******************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return !_vm.useWindow && _vm.containerElement === null - ? _c("div", { ref: "container", staticClass: "vs-container" }, [ - _c( - "div", - { - ref: "rowsContainer", - staticClass: "vs-rows-container", - style: _vm.rowsContainerStyle, - }, - [ - _vm._t("default", null, { renderedRows: _vm.visibleRows }), - _vm._v(" "), - _vm._t("loader"), - ], - 2 - ), - ]) - : _c( - "div", - { - ref: "rowsContainer", - staticClass: "vs-rows-container", - style: _vm.rowsContainerStyle, - }, - [ - _vm._t("default", null, { renderedRows: _vm.visibleRows }), - _vm._v(" "), - _vm._t("loader"), - ], - 2 - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }) - -}]); -//# sourceMappingURL=photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesSelectionMixin_js-src_components_FilesListViewer_vue.js.map?v=157140dd4afb84df1d67 \ No newline at end of file diff --git a/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesSelectionMixin_js-src_components_FilesListViewer_vue.js.map b/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesSelectionMixin_js-src_components_FilesListViewer_vue.js.map deleted file mode 100644 index 505b2ba0f..000000000 --- a/js/photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesSelectionMixin_js-src_components_FilesListViewer_vue.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-src_mixins_FetchFilesMixin_js-src_mixins_FilesSelectionMixin_js-src_components_FilesListViewer_vue.js?v=157140dd4afb84df1d67","mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;AChNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;AChCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;ACnGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;AC9UA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;AC5NA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;AChEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;AC1HA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;ACjJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;;;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;;;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;;;;ACtCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;ACvCA;;;;;;;;;;;;;;;ACAA;;;;;;;;;;;;;;;ACAA;;;;;;;;;;;;;;;ACAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ASAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;AChIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;ACrBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;AClCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sources":["webpack:///photos/src/components/FilesListViewer.vue?vue&type=script&lang=js&","webpack:///photos/src/components/Loader.vue?vue&type=script&lang=js&","webpack:///photos/src/components/TiledLayout.vue?vue&type=script&lang=js&","webpack:///photos/src/components/VirtualScrolling.vue?vue&type=script&lang=js&","webpack:///photos/src/mixins/FetchFilesMixin.js","webpack:///photos/src/mixins/FilesSelectionMixin.js","webpack:///photos/src/services/PhotoSearch.js","webpack:///photos/src/services/TiledLayout.js","webpack:///photos/src/components/FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true&","webpack:///photos/src/components/Loader.vue?vue&type=style&index=0&lang=scss&","webpack:///photos/src/components/TiledLayout.vue?vue&type=style&index=0&id=aaf5cf80&scoped=true&lang=scss&","webpack:///photos/src/components/TiledRows.vue?vue&type=style&index=0&id=332876ef&lang=scss&scoped=true&","webpack:///photos/src/components/VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss&","webpack://photos/./src/components/FilesListViewer.vue?9de2","webpack://photos/./src/components/Loader.vue?eb1b","webpack://photos/./src/components/TiledLayout.vue?f1f1","webpack://photos/./src/components/TiledRows.vue?bc7e","webpack://photos/./src/components/VirtualScrolling.vue?38b9","webpack:///photos/src/components/FilesListViewer.vue","webpack:///photos/src/components/Loader.vue","webpack:///photos/src/components/TiledLayout.vue","webpack:///photos/src/components/TiledRows.vue","webpack:///photos/src/components/VirtualScrolling.vue","webpack://photos/./src/components/FilesListViewer.vue?6af5","webpack://photos/./src/components/Loader.vue?5453","webpack://photos/./src/components/TiledLayout.vue?ba00","webpack://photos/./src/components/VirtualScrolling.vue?de60","webpack://photos/./src/components/FilesListViewer.vue?2e22","webpack://photos/./src/components/TiledLayout.vue?3e88","webpack://photos/./src/components/TiledRows.vue?3dc5","webpack://photos/./src/components/VirtualScrolling.vue?7351","webpack:///photos/src/components/FilesListViewer.vue?vue&type=template&id=3ebf26b2&scoped=true&","webpack:///photos/src/components/TiledLayout.vue?vue&type=template&id=aaf5cf80&scoped=true&","webpack:///photos/src/components/TiledRows.vue?vue&type=template&id=332876ef&scoped=true&functional=true&","webpack:///photos/src/components/VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true&","webpack://photos/./src/components/FilesListViewer.vue?1df8","webpack://photos/./src/components/Loader.vue?7124","webpack://photos/./src/components/TiledLayout.vue?95ee","webpack://photos/./src/components/TiledRows.vue?dfa9","webpack://photos/./src/components/VirtualScrolling.vue?74e7"],"sourcesContent":["function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\n\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\n\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport { mapGetters } from 'vuex';\nimport { EmptyContent } from '@nextcloud/vue';\nimport TiledLayout from '../components/TiledLayout.vue';\nimport VirtualScrolling from '../components/VirtualScrolling.vue';\nimport Loader from '../components/Loader.vue';\nimport EmptyBox from '../assets/Illustrations/empty.svg';\nexport default {\n name: 'FilesListViewer',\n components: {\n EmptyContent: EmptyContent,\n TiledLayout: TiledLayout,\n VirtualScrolling: VirtualScrolling,\n Loader: Loader\n },\n props: {\n // Array of file ids that should be rendered.\n fileIds: {\n type: Array,\n default: undefined\n },\n // An object mapping a list of section to a list of fileIds.\n fileIdsBySection: {\n type: Object,\n default: undefined\n },\n // The list of sorted sections.\n sections: {\n type: Array,\n default: undefined\n },\n // Whether we should display a loading indicator.\n loading: {\n type: Boolean,\n required: true\n },\n // Message to display when there is no files.\n emptyMessage: {\n type: String,\n default: ''\n },\n // The base height to forward to TileLayout.\n baseHeight: {\n type: Number,\n default: 200\n },\n // The height to use for section headers.\n sectionHeaderHeight: {\n type: Number,\n default: 75\n },\n // Instruct VirtualScrolling to scroll to the given section id.\n scrollToSection: {\n type: String,\n default: ''\n },\n // The containerElement props to forward to TileLayout.\n containerElement: {\n type: HTMLElement,\n default: null\n },\n // The useWindow props to forward to TileLayout.\n useWindow: {\n type: Boolean,\n default: false\n }\n },\n data: function data() {\n return {\n EmptyBox: EmptyBox\n };\n },\n computed: _objectSpread(_objectSpread({}, mapGetters(['files'])), {}, {\n /**\n * @return {object[]} The list of items to pass to TiledLayout.\n */\n fileIdsToItems: function fileIdsToItems() {\n if (this.fileIds === undefined) {\n return [];\n }\n\n return this.fileIds.map(this.mapFileToItem);\n },\n\n /**\n * @return {object[]} The list of items separated by sections to pass to TiledLayout.\n */\n sectionsToItems: function sectionsToItems() {\n var _this = this;\n\n if (this.sections === undefined) {\n return [];\n }\n\n return this.sections.flatMap(function (sectionId) {\n return [{\n id: sectionId,\n sectionHeader: true,\n height: _this.sectionHeaderHeight\n }].concat(_toConsumableArray(_this.fileIdsBySection[sectionId].map(_this.mapFileToItem)));\n });\n },\n\n /**\n * @return {object[]} The list of items to pass to TiledLayout.\n */\n items: function items() {\n if (this.fileIds !== undefined) {\n return this.fileIdsToItems;\n }\n\n if (this.sections !== undefined) {\n return this.sectionsToItems;\n }\n\n return [];\n }\n }),\n methods: {\n // Ask the parent for more content.\n needContent: function needContent() {\n this.$emit('need-content');\n },\n mapFileToItem: function mapFileToItem(fileId) {\n var file = this.files[fileId];\n return {\n id: file.fileid,\n width: file.fileMetadataSizeParsed.width,\n height: file.fileMetadataSizeParsed.height,\n ratio: file.fileMetadataSizeParsed.width / file.fileMetadataSizeParsed.height\n };\n }\n }\n};","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nexport default {\n name: 'Loader'\n};","function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport logger from '../services/logger.js';\nimport { splitItemsInRows } from '../services/TiledLayout.js';\nimport TiledRows from './TiledRows.vue';\nexport default {\n name: 'TiledLayout',\n components: {\n TiledRows: TiledRows\n },\n props: {\n items: {\n type: Array,\n required: true\n },\n baseHeight: {\n type: Number,\n default: 200\n }\n },\n data: function data() {\n return {\n containerWidth: 0,\n\n /** @type {ResizeObserver} */\n resizeObserver: null\n };\n },\n computed: {\n /** @return {import('../services/TiledLayout.js').TiledRow[]} */\n rows: function rows() {\n logger.debug('[TiledLayout] Computing rows', this.items);\n return splitItemsInRows(this.items, this.containerWidth, this.baseHeight);\n }\n },\n mounted: function mounted() {\n var _this = this;\n\n this.resizeObserver = new ResizeObserver(function (entries) {\n var _iterator = _createForOfIteratorHelper(entries),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var entry = _step.value;\n var cr = entry.contentRect;\n\n if (entry.target.classList.contains('tiled-container')) {\n _this.containerWidth = cr.width;\n }\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n });\n this.resizeObserver.observe(this.$refs.tiledLayoutContainer);\n },\n beforeDestroy: function beforeDestroy() {\n this.resizeObserver.disconnect();\n }\n};","function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\n\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\n\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport { debounce } from 'debounce';\nimport logger from '../services/logger.js';\n/**\n * @typedef {object} Row\n * @property {number} height - The height of the row.\n */\n\n/**\n * @typedef {Row} VisibleRow\n * @property {'none'|'near'|'visible'} visibility - The visibility state of the row\n * @property {boolean} shouldRender - Whether the row should be renderer in the DOM\n */\n\nexport default {\n name: 'VirtualScrolling',\n props: {\n rows: {\n type: Array,\n required: true\n },\n containerElement: {\n type: HTMLElement,\n default: null\n },\n useWindow: {\n type: Boolean,\n default: false\n },\n renderWindowRatio: {\n type: Number,\n default: 4\n },\n willBeVisibleWindowRatio: {\n type: Number,\n default: 4\n },\n visibleWindowRatio: {\n type: Number,\n // A little bit more than the container's height to include items at its edges.\n default: 0\n },\n bottomBufferRatio: {\n type: Number,\n default: 5\n },\n scrollToKey: {\n type: String,\n default: ''\n }\n },\n data: function data() {\n return {\n scrollPosition: 0,\n containerHeight: 0,\n rowsContainerHeight: 0,\n\n /** @type {ResizeObserver} */\n resizeObserver: null\n };\n },\n computed: {\n /**\n * @return {VisibleRow[]}\n */\n visibleRows: function visibleRows() {\n logger.debug('[VirtualScrolling] Computing visible rows', this.rows); // Optimisation: get those computed properties once to not go through vue's internal every time we need them.\n\n var scrollPosition = this.scrollPosition;\n var containerHeight = this.containerHeight; // Optimisation: different windows to hint the items how they should render themselves.\n // This will be forwarded with the visibility props.\n\n var shouldRenderedWindow = containerHeight * this.renderWindowRatio;\n var willBeVisibleWindow = containerHeight * this.willBeVisibleWindowRatio;\n var visibleWindow = containerHeight * this.visibleWindowRatio;\n var currentRowTopDistanceFromTop = 0;\n var currentRowBottomDistanceFromTop = 0; // Compute whether a row should be included in the DOM (shouldRender)\n // And how visible the row is.\n\n return this.rows.reduce(function (visibleRows, row) {\n currentRowTopDistanceFromTop = currentRowBottomDistanceFromTop;\n currentRowBottomDistanceFromTop += row.height;\n\n if (currentRowTopDistanceFromTop < scrollPosition - shouldRenderedWindow || scrollPosition + containerHeight + shouldRenderedWindow < currentRowTopDistanceFromTop) {\n return visibleRows;\n }\n\n var visibility = 'none';\n\n if (scrollPosition - willBeVisibleWindow < currentRowTopDistanceFromTop && currentRowTopDistanceFromTop < scrollPosition + containerHeight + willBeVisibleWindow) {\n visibility = 'near';\n\n if (scrollPosition - visibleWindow < currentRowTopDistanceFromTop && currentRowTopDistanceFromTop < scrollPosition + containerHeight + visibleWindow) {\n visibility = 'visible';\n }\n\n if (scrollPosition - visibleWindow < currentRowBottomDistanceFromTop && currentRowBottomDistanceFromTop < scrollPosition + containerHeight + visibleWindow) {\n visibility = 'visible';\n }\n }\n\n return [].concat(_toConsumableArray(visibleRows), [_objectSpread(_objectSpread({}, row), {}, {\n visibility: visibility\n })]);\n }, []);\n },\n\n /**\n * Total height of all the rows + some room for the loader.\n *\n * @return {number}\n */\n rowsHeight: function rowsHeight() {\n var loaderHeight = 200;\n return this.rows.map(function (row) {\n return row.height;\n }).reduce(function (totalHeight, rowHeight) {\n return totalHeight + rowHeight;\n }, 0) + loaderHeight;\n },\n\n /**\n * @return {number}\n */\n paddingTop: function paddingTop() {\n var _this = this;\n\n if (this.visibleRows.length === 0) {\n return 0;\n }\n\n var firstVisibleRowIndex = this.rows.findIndex(function (row) {\n return row.items === _this.visibleRows[0].items;\n });\n return this.rows.map(function (row) {\n return row.height;\n }).slice(0, firstVisibleRowIndex).reduce(function (totalHeight, rowHeight) {\n return totalHeight + rowHeight;\n }, 0);\n },\n\n /**\n * padding-top is used to replace not included item in the container.\n *\n * @return {object}\n */\n rowsContainerStyle: function rowsContainerStyle() {\n return {\n height: \"\".concat(this.rowsHeight, \"px\"),\n paddingTop: \"\".concat(this.paddingTop, \"px\")\n };\n },\n\n /**\n * Whether the user is near the bottom.\n * If true, then the need-content event will be emitted.\n *\n * @return {boolean}\n */\n isNearBottom: function isNearBottom() {\n var buffer = this.containerHeight * this.bottomBufferRatio;\n return this.scrollPosition + this.containerHeight >= this.rowsHeight - buffer;\n },\n\n /**\n * @return {HTMLElement}\n */\n container: function container() {\n logger.debug('[VirtualScrolling] Computing container');\n\n if (this.containerElement !== null) {\n return this.containerElement;\n } else if (this.useWindow) {\n return window;\n } else {\n return this.$refs.container;\n }\n }\n },\n watch: {\n isNearBottom: function isNearBottom(value) {\n if (value) {\n this.$emit('need-content');\n }\n },\n rows: function rows() {\n // Re-emit need-content when rows is updated and isNearBottom is still true.\n // If the height of added rows is under `bottomBufferRatio`, `isNearBottom` will still be true so we need more content.\n if (this.isNearBottom) {\n this.$emit('need-content');\n }\n },\n scrollToKey: function scrollToKey(key) {\n var currentRowTopDistanceFromTop = 0;\n\n var _iterator = _createForOfIteratorHelper(this.rows),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var row = _step.value;\n\n if (row.key === key) {\n this.$refs.container.scrollTo({\n top: currentRowTopDistanceFromTop,\n behavior: 'smooth'\n });\n return;\n }\n\n currentRowTopDistanceFromTop += row.height;\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n }\n },\n mounted: function mounted() {\n var _this2 = this;\n\n this.resizeObserver = new ResizeObserver(function (entries) {\n var _iterator2 = _createForOfIteratorHelper(entries),\n _step2;\n\n try {\n for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {\n var entry = _step2.value;\n var cr = entry.contentRect;\n\n if (entry.target.classList.contains('vs-container')) {\n _this2.containerHeight = cr.height;\n }\n\n if (entry.target.classList.contains('vs-rows-container')) {\n _this2.rowsContainerHeight = cr.height;\n }\n }\n } catch (err) {\n _iterator2.e(err);\n } finally {\n _iterator2.f();\n }\n });\n\n if (this.useWindow) {\n window.addEventListener('resize', this.updateContainerSize);\n this.containerHeight = window.innerHeight;\n } else {\n this.resizeObserver.observe(this.container);\n }\n\n this.resizeObserver.observe(this.$refs.rowsContainer);\n this.container.addEventListener('scroll', this.updateScrollPosition);\n },\n beforeDestroy: function beforeDestroy() {\n if (this.useWindow) {\n window.removeEventListener('resize', this.updateContainerSize);\n }\n\n this.resizeObserver.disconnect();\n this.container.removeEventListener('scroll', this.updateScrollPosition);\n },\n methods: {\n updateScrollPosition: debounce(function () {\n if (this.useWindow) {\n this.scrollPosition = this.container.scrollY;\n } else {\n this.scrollPosition = this.container.scrollTop;\n }\n }, 200),\n updateContainerSize: function updateContainerSize() {\n this.containerHeight = window.innerHeight;\n }\n }\n};","function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\n\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\n\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\n/**\n * @copyright Copyright (c) 2022 Louis Chemineau \n *\n * @author Louis Chemineau \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 .\n *\n */\nimport logger from '../services/logger.js';\nimport getPhotos from '../services/PhotoSearch.js';\nimport cancelableRequest from '../utils/CancelableRequest.js';\nimport SemaphoreWithPriority from '../utils/semaphoreWithPriority.js';\nexport default {\n name: 'FetchFilesMixin',\n data: function data() {\n return {\n errorFetchingFiles: null,\n loadingFiles: false,\n doneFetchingFiles: false,\n cancelFilesRequest: function cancelFilesRequest() {},\n semaphore: new SemaphoreWithPriority(30),\n fetchSemaphore: new SemaphoreWithPriority(1),\n semaphoreSymbol: null,\n fetchedFileIds: []\n };\n },\n beforeDestroy: function beforeDestroy() {\n if (this.cancelFilesRequest) {\n this.cancelFilesRequest('Changed view');\n }\n },\n beforeRouteLeave: function beforeRouteLeave(from, to, next) {\n if (this.cancelFilesRequest) {\n this.cancelFilesRequest('Changed view');\n }\n\n return next();\n },\n watch: {\n $route: function $route() {\n this.resetFetchFilesState();\n }\n },\n methods: {\n /**\n * @param {string} path - Path to pass to getPhotos.\n * @param {object} options - Options to pass to getPhotos.\n * @param {string[]} [blacklist=[]] - Array of ids to filter out.\n * @return {Promise} - The next batch of data depending on global offset.\n */\n fetchFiles: function fetchFiles() {\n var _arguments = arguments,\n _this = this;\n\n return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {\n var path, options, blacklist, semaphoreSymbol, fetchSemaphoreSymbol, _this$fetchedFileIds, _cancelableRequest, request, cancel, numberOfImagesPerBatch, fetchedFiles, fileIds, _error$response;\n\n return regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n path = _arguments.length > 0 && _arguments[0] !== undefined ? _arguments[0] : '';\n options = _arguments.length > 1 && _arguments[1] !== undefined ? _arguments[1] : {};\n blacklist = _arguments.length > 2 && _arguments[2] !== undefined ? _arguments[2] : [];\n\n if (!(_this.doneFetchingFiles || _this.loadingFiles)) {\n _context.next = 5;\n break;\n }\n\n return _context.abrupt(\"return\", []);\n\n case 5:\n _context.next = 7;\n return _this.semaphore.acquire(function () {\n return 0;\n }, 'fetchFiles');\n\n case 7:\n semaphoreSymbol = _context.sent;\n _context.next = 10;\n return _this.fetchSemaphore.acquire();\n\n case 10:\n fetchSemaphoreSymbol = _context.sent;\n _context.prev = 11;\n _this.errorFetchingFiles = null;\n _this.loadingFiles = true;\n _this.semaphoreSymbol = semaphoreSymbol;\n _cancelableRequest = cancelableRequest(getPhotos), request = _cancelableRequest.request, cancel = _cancelableRequest.cancel;\n _this.cancelFilesRequest = cancel;\n numberOfImagesPerBatch = 1000; // Load next batch of images\n\n _context.next = 20;\n return request(path, _objectSpread({\n firstResult: _this.fetchedFileIds.length,\n nbResults: numberOfImagesPerBatch\n }, options));\n\n case 20:\n fetchedFiles = _context.sent;\n\n // If we get less files than requested that means we got to the end\n if (fetchedFiles.length !== numberOfImagesPerBatch) {\n _this.doneFetchingFiles = true;\n }\n\n fileIds = fetchedFiles.map(function (file) {\n return file.fileid;\n }).filter(function (fileId) {\n return !_this.fetchedFileIds.includes(fileId);\n }); // Filter to prevent duplicate fileIds.\n\n (_this$fetchedFileIds = _this.fetchedFileIds).push.apply(_this$fetchedFileIds, _toConsumableArray(fileIds.map(function (fileId) {\n return fileId.toString();\n }).filter(function (fileId) {\n return !blacklist.includes(fileId);\n })));\n\n _this.$store.dispatch('appendFiles', fetchedFiles);\n\n logger.debug(\"[FetchFilesMixin] Fetched \".concat(fileIds.length, \" new files: \"), fileIds);\n return _context.abrupt(\"return\", fileIds);\n\n case 29:\n _context.prev = 29;\n _context.t0 = _context[\"catch\"](11);\n\n if (!(((_error$response = _context.t0.response) === null || _error$response === void 0 ? void 0 : _error$response.status) === 404)) {\n _context.next = 35;\n break;\n }\n\n _this.errorFetchingFiles = 404;\n _context.next = 40;\n break;\n\n case 35:\n if (!(_context.t0.code === 'ERR_CANCELED')) {\n _context.next = 39;\n break;\n }\n\n return _context.abrupt(\"return\", []);\n\n case 39:\n _this.errorFetchingFiles = _context.t0;\n\n case 40:\n // cancelled request, moving on...\n logger.error('Error fetching files', _context.t0);\n console.error(_context.t0);\n\n case 42:\n _context.prev = 42;\n _this.loadingFiles = false;\n\n _this.cancelFilesRequest = function () {};\n\n _this.semaphore.release(semaphoreSymbol);\n\n _this.fetchSemaphore.release(fetchSemaphoreSymbol);\n\n return _context.finish(42);\n\n case 48:\n return _context.abrupt(\"return\", []);\n\n case 49:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, null, [[11, 29, 42, 48]]);\n }))();\n },\n resetFetchFilesState: function resetFetchFilesState() {\n this.doneFetchingFiles = false;\n this.errorFetchingFiles = null;\n this.loadingFiles = false;\n this.fetchedFileIds = [];\n\n this.cancelFilesRequest = function () {};\n }\n }\n};","/**\n * @copyright Copyright (c) 2019 Louis Chemineau \n *\n * @author Louis Chemineau \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 .\n *\n */\nexport default {\n name: 'FilesSelectionMixin',\n data: function data() {\n return {\n /** @type {Object} */\n selection: {}\n };\n },\n methods: {\n onFileSelectToggle: function onFileSelectToggle(_ref) {\n var id = _ref.id,\n value = _ref.value;\n this.$set(this.selection, id, value);\n },\n\n /**\n * @param {string[]} filesIds - The ids of the files to uncheck.\n */\n onUncheckFiles: function onUncheckFiles(filesIds) {\n var _this = this;\n\n filesIds.forEach(function (\n /** @type {string} */\n filesId) {\n return _this.$set(_this.selection, filesId, false);\n });\n },\n resetSelection: function resetSelection() {\n this.selection = {};\n }\n },\n computed: {\n /**\n * @return {string[]}\n */\n selectedFileIds: function selectedFileIds() {\n var _this2 = this;\n\n return Object.keys(this.selection).filter(function (fileId) {\n return _this2.selection[fileId];\n });\n }\n }\n};","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ \n *\n * @author John Molakvoæ \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 .\n *\n */\nimport { genFileInfo } from '../utils/fileUtils.js';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport { allMimes } from './AllowedMimes.js';\nimport client from './DavClient.js';\nimport { props } from './DavRequest.js';\nimport moment from '@nextcloud/moment';\n/**\n * List files from a folder and filter out unwanted mimes\n *\n * @param {object} path the lookup path\n * @param {object} [options] used for the cancellable requests\n * @param {number} [options.firstResult=0] Index of the first result that we want (starts at 0)\n * @param {number} [options.nbResults=200] The number of file to fetch\n * @param {string[]} [options.mimesType=allMimes] Mime type of the files\n * @param {boolean} [options.full=false] get full data of the files\n * @param {boolean} [options.onThisDay=false] get only items from this day of year\n * @param {boolean} [options.onlyFavorites=false] get only favorite items\n * @return {Promise} the file list\n */\n\nexport default function () {\n return _ref.apply(this, arguments);\n}\n\nfunction _ref() {\n _ref = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {\n var path,\n options,\n prefixPath,\n orMime,\n eqFavorites,\n onThisDay,\n response,\n _args = arguments;\n return regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n path = _args.length > 0 && _args[0] !== undefined ? _args[0] : '';\n options = _args.length > 1 && _args[1] !== undefined ? _args[1] : {};\n // default function options\n options = _objectSpread({\n firstResult: 0,\n nbResults: 200,\n mimesType: allMimes,\n onThisDay: false,\n onlyFavorites: false\n }, options);\n prefixPath = \"/files/\".concat(getCurrentUser().uid); // generating the search or condition\n // based on the allowed mimetypes\n\n orMime = options.mimesType.reduce(function (str, mime) {\n return \"\".concat(str, \"\\n\\t\\t\\n\\t\\t\\t\\n\\t\\t\\t\\t\\n\\t\\t\\t\\n\\t\\t\\t\").concat(mime, \"\\n\\t\\t\\n\\t\");\n }, '');\n eqFavorites = options.onlyFavorites ? \"\\n\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\n\\t\\t\\t\\t1\\n\\t\\t\\t\" : '';\n onThisDay = options.onThisDay ? \"\".concat(Array(20).fill(1).map(function (_, years) {\n var start = moment(Date.now()).startOf('day').subtract(3, 'd').subtract(years + 1, 'y');\n var end = moment(Date.now()).endOf('day').add(3, 'd').subtract(years + 1, 'y');\n return \"\\n\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\".concat(start.format(moment.defaultFormatUtc), \"\\n\\t\\t\\t\\t\\n\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\").concat(end.format(moment.defaultFormatUtc), \"\\n\\t\\t\\t\\t\\n\\t\\t\\t\");\n }).join('\\n'), \"\") : '';\n options = Object.assign({\n method: 'SEARCH',\n headers: {\n 'content-Type': 'text/xml'\n },\n data: \"\\n\\t\\t\\t\\n\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\".concat(props, \"\\n\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\").concat(prefixPath, \"/\").concat(path, \"\\n\\t\\t\\t\\t\\t\\t\\tinfinity\\n\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\\t\").concat(orMime, \"\\n\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\").concat(eqFavorites, \"\\n\\t\\t\\t\\t\\t\\t\\t\").concat(onThisDay, \"\\n\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\").concat(options.nbResults, \"\\n\\t\\t\\t\\t\\t\\t\").concat(options.firstResult, \"\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\n\\t\\t\\t\"),\n deep: true,\n details: true\n }, options);\n _context.next = 10;\n return client.getDirectoryContents('', options);\n\n case 10:\n response = _context.sent;\n return _context.abrupt(\"return\", response.data.map(function (data) {\n return genFileInfo(data);\n }) // remove prefix path from full file path\n .map(function (data) {\n return _objectSpread(_objectSpread({}, data), {}, {\n filename: data.filename.replace(prefixPath, '')\n });\n }));\n\n case 12:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n return _ref.apply(this, arguments);\n}","/**\n * @copyright Copyright (c) 2022 Louis Chemineau \n *\n * @author Louis Chemineau \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 .\n *\n */\n\n/**\n * @typedef {object} TiledItem\n * @property {string} id\n * @property {number} [width] Real width of the item.\n * @property {number} height Real height of the item.\n * @property {number} [ratio] The aspect ratio of the item.\n * @property {boolean} [sectionHeader] Whether this row is a section header.\n */\n\n/**\n * @typedef {object} TiledRow\n * @property {TiledItem[]} items -\n * @property {number} height -\n * @property {string} key -\n */\n\n/**\n * Split items in rows of equal width.\n * The last row will not be forced to match containerWidth.\n *\n * @param {TiledItem[]} items The list of item to split in row of equal width.\n * @param {number} containerWidth The width of a row.\n * @param {number} baseHeight The base height of the rows.\n * @return {TiledRow[]}\n */\nexport function splitItemsInRows(items, containerWidth) {\n var baseHeight = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 200;\n\n if (containerWidth === 0) {\n return [];\n }\n\n var rows = [];\n var rowNumber = 0;\n var currentItem = 0;\n\n while (currentItem < items.length) {\n /** @type { TiledItem[] } */\n var rowItems = []; // Fill the row with new items as long as the width is less than containerWidth.\n\n do {\n // @ts-ignore - We know that items.shift() is not undefined as we always check that items.length > 0.\n rowItems.push(items[currentItem++]);\n } while (currentItem < items.length && !items[currentItem - 1].sectionHeader && !items[currentItem].sectionHeader && computeRowWidth([].concat(rowItems, [items[currentItem]]), baseHeight) <= containerWidth);\n\n rows[rowNumber] = {\n items: rowItems,\n height: computeRowHeight(rowItems, containerWidth, items.length === currentItem || items[currentItem].sectionHeader === true, baseHeight),\n // Key to help vue to keep track of the row in VirtualScrolling.\n key: rowItems.map(function (item) {\n return item.id;\n }).join('-')\n };\n rowNumber += 1;\n }\n\n return rows;\n}\n/**\n *\n * @param {TiledItem[]} items The list of items in the row.\n * @param {number} baseHeight The base height of the rows.\n * @return {number} The width of the row\n */\n\nfunction computeRowWidth(items, baseHeight) {\n return items.map(function (item) {\n return baseHeight * item.ratio;\n }).reduce(function (sum, itemWidth) {\n return sum + itemWidth;\n });\n}\n/**\n * Compute the row height based on its items and on the container's width.\n *\n * Math time !\n * With Rn the aspect ratio of item n\n * Wn the width of item n\n * Hn the height of item n\n * Wc the width of the container\n * Hr the height of the row\n * For n items we want: Wc = W1 + W2 + ... + Wn\n * We know Rn = Wn / Hn\n * So Wn = Rn * Hn\n * So Wc = (R1 * H1) + (R2 * H2) + ... + (Rn * Hn)\n * But we also want Hr === H1 === H2 === ... === Hn\n * So Wc = (R1 * Hr) + (R2 * Hr) + ... + (Rn * Hr)\n * So Wc = Hr * (R1 + R2 + ... + Rn)\n * So Hr = Wc / (R1 + R2 + ... + Rn)\n *\n * @param {TiledItem[]} items The list of items in the row.\n * @param {number} containerWidth The width of the row.\n * @param {boolean} isLastRow Whether we are computing the height for the last row.\n * @param {number} baseHeight The base height of the rows.\n * @return {number} The height of the row\n */\n\n\nfunction computeRowHeight(items, containerWidth, isLastRow, baseHeight) {\n // Exception 1: there is only one item and its width it is a sectionHeader, meaning take the full width.\n if (items.length === 1 && items[0].sectionHeader) {\n return items[0].height;\n }\n\n var sumOfItemsRatio = items.map(function (item) {\n return item.ratio;\n }).reduce(function (sum, itemRatio) {\n return sum + itemRatio;\n });\n var rowHeight = containerWidth / sumOfItemsRatio; // Exception 2: there is only one item which is larger than containerWidth.\n // Limit its height so that itemWidth === containerWidth\n\n if (items.length === 1 && items[0].width > containerWidth) {\n rowHeight = containerWidth / items[0].ratio;\n } // Exception 3: we reached the last row.\n // Force the items width to match containerWidth, and limit their heigh to baseHeight + 20.\n\n\n if (isLastRow) {\n rowHeight = Math.min(baseHeight + 20, rowHeight);\n }\n\n return rowHeight;\n}","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".files-list-viewer[data-v-3ebf26b2] {\\n height: 100%;\\n position: relative;\\n}\\n.files-list-viewer[data-v-3ebf26b2] .empty-content__icon {\\n width: 200px;\\n height: 200px;\\n}\\n.files-list-viewer[data-v-3ebf26b2] .empty-content__icon .empty-content-illustration svg {\\n width: 200px;\\n height: 200px;\\n}\\n.files-list-viewer .tiled-row[data-v-3ebf26b2] {\\n display: flex;\\n}\\n.files-list-viewer__section-header[data-v-3ebf26b2] {\\n position: -webkit-sticky;\\n position: sticky;\\n top: 0;\\n z-index: 3;\\n background: var(--color-main-background);\\n}\\n.files-list-viewer__loader[data-v-3ebf26b2] {\\n margin: 50px 0;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".loader {\\n display: grid;\\n height: 60px;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".tiled-container[data-v-aaf5cf80] {\\n height: 100%;\\n}\\n.tiled-container .tiled-row[data-v-aaf5cf80] {\\n display: flex;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".tiled-row[data-v-332876ef] {\\n display: flex;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".vs-container[data-v-3d9f7b4c] {\\n overflow-y: scroll;\\n height: 100%;\\n}\\n.vs-rows-container[data-v-3d9f7b4c] {\\n box-sizing: border-box;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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 \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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 export default content && content.locals ? content.locals : undefined;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./TiledLayout.vue?vue&type=style&index=0&id=aaf5cf80&scoped=true&lang=scss&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./TiledLayout.vue?vue&type=style&index=0&id=aaf5cf80&scoped=true&lang=scss&\";\n export default content && content.locals ? content.locals : undefined;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./TiledRows.vue?vue&type=style&index=0&id=332876ef&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./TiledRows.vue?vue&type=style&index=0&id=332876ef&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesListViewer.vue?vue&type=template&id=3ebf26b2&scoped=true&\"\nimport script from \"./FilesListViewer.vue?vue&type=script&lang=js&\"\nexport * from \"./FilesListViewer.vue?vue&type=script&lang=js&\"\nimport style0 from \"./FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&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 \"3ebf26b2\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/admin/Docker/apps2/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('3ebf26b2')) {\n api.createRecord('3ebf26b2', component.options)\n } else {\n api.reload('3ebf26b2', component.options)\n }\n module.hot.accept(\"./FilesListViewer.vue?vue&type=template&id=3ebf26b2&scoped=true&\", function () {\n api.rerender('3ebf26b2', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/FilesListViewer.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./Loader.vue?vue&type=template&id=04a0d67a&\"\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\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/admin/Docker/apps2/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('04a0d67a')) {\n api.createRecord('04a0d67a', component.options)\n } else {\n api.reload('04a0d67a', component.options)\n }\n module.hot.accept(\"./Loader.vue?vue&type=template&id=04a0d67a&\", function () {\n api.rerender('04a0d67a', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/Loader.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./TiledLayout.vue?vue&type=template&id=aaf5cf80&scoped=true&\"\nimport script from \"./TiledLayout.vue?vue&type=script&lang=js&\"\nexport * from \"./TiledLayout.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TiledLayout.vue?vue&type=style&index=0&id=aaf5cf80&scoped=true&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 \"aaf5cf80\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/admin/Docker/apps2/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('aaf5cf80')) {\n api.createRecord('aaf5cf80', component.options)\n } else {\n api.reload('aaf5cf80', component.options)\n }\n module.hot.accept(\"./TiledLayout.vue?vue&type=template&id=aaf5cf80&scoped=true&\", function () {\n api.rerender('aaf5cf80', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/TiledLayout.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./TiledRows.vue?vue&type=template&id=332876ef&scoped=true&functional=true&\"\nvar script = {}\nimport style0 from \"./TiledRows.vue?vue&type=style&index=0&id=332876ef&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 true,\n null,\n \"332876ef\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/admin/Docker/apps2/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('332876ef')) {\n api.createRecord('332876ef', component.options)\n } else {\n api.rerender('332876ef', component.options)\n }\n module.hot.accept(\"./TiledRows.vue?vue&type=template&id=332876ef&scoped=true&functional=true&\", function () {\n api.rerender('332876ef', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/TiledRows.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true&\"\nimport script from \"./VirtualScrolling.vue?vue&type=script&lang=js&\"\nexport * from \"./VirtualScrolling.vue?vue&type=script&lang=js&\"\nimport style0 from \"./VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&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 \"3d9f7b4c\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/admin/Docker/apps2/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('3d9f7b4c')) {\n api.createRecord('3d9f7b4c', component.options)\n } else {\n api.reload('3d9f7b4c', component.options)\n }\n module.hot.accept(\"./VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true&\", function () {\n api.rerender('3d9f7b4c', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/VirtualScrolling.vue\"\nexport default component.exports","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListViewer.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!./FilesListViewer.vue?vue&type=script&lang=js&\"","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 mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TiledLayout.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!./TiledLayout.vue?vue&type=script&lang=js&\"","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VirtualScrolling.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!./VirtualScrolling.vue?vue&type=script&lang=js&\"","export * from \"-!../../node_modules/style-loader/dist/cjs.js!../../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!./FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true&\"","export * from \"-!../../node_modules/style-loader/dist/cjs.js!../../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!./TiledLayout.vue?vue&type=style&index=0&id=aaf5cf80&scoped=true&lang=scss&\"","export * from \"-!../../node_modules/style-loader/dist/cjs.js!../../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!./TiledRows.vue?vue&type=style&index=0&id=332876ef&lang=scss&scoped=true&\"","export * from \"-!../../node_modules/style-loader/dist/cjs.js!../../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!./VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss&\"","export * from \"-!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListViewer.vue?vue&type=template&id=3ebf26b2&scoped=true&\"","export * from \"-!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TiledLayout.vue?vue&type=template&id=aaf5cf80&scoped=true&\"","export * from \"-!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TiledRows.vue?vue&type=template&id=332876ef&scoped=true&functional=true&\"","export * from \"-!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true&\"","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { staticClass: \"files-list-viewer\" },\n [\n _vm.emptyMessage !== \"\" && _vm.items.length === 0 && !_vm.loading\n ? _c(\n \"EmptyContent\",\n {\n key: \"emptycontent\",\n scopedSlots: _vm._u(\n [\n {\n key: \"icon\",\n fn: function () {\n return [\n _c(\"span\", {\n staticClass: \"empty-content-illustration\",\n domProps: { innerHTML: _vm._s(_vm.EmptyBox) },\n }),\n ]\n },\n proxy: true,\n },\n ],\n null,\n false,\n 3410044941\n ),\n },\n [_vm._v(\"\\n\\t\\t\" + _vm._s(_vm.emptyMessage) + \"\\n\\t\")]\n )\n : _vm._e(),\n _vm._v(\" \"),\n _c(\"TiledLayout\", {\n attrs: { \"base-height\": _vm.baseHeight, items: _vm.items },\n scopedSlots: _vm._u([\n {\n key: \"default\",\n fn: function (ref) {\n var rows = ref.rows\n return _c(\"VirtualScrolling\", {\n attrs: {\n \"use-window\": _vm.useWindow,\n rows: rows,\n \"scroll-to-key\": _vm.scrollToSection,\n },\n on: { \"need-content\": _vm.needContent },\n scopedSlots: _vm._u(\n [\n {\n key: \"default\",\n fn: function (ref) {\n var renderedRows = ref.renderedRows\n return _c(\n \"ul\",\n {},\n _vm._l(renderedRows, function (row) {\n return _c(\n \"div\",\n {\n key: row.key,\n staticClass: \"tiled-row\",\n class: {\n \"files-list-viewer__section-header\":\n row.items[0].sectionHeader,\n },\n style: { height: row.height + \"px\" },\n },\n _vm._l(row.items, function (item) {\n return _c(\n \"li\",\n {\n key: item.id,\n style: {\n width: item.ratio\n ? row.height * item.ratio + \"px\"\n : \"100%\",\n height: row.height + \"px\",\n },\n },\n [\n _vm._t(\"default\", null, {\n file: item,\n visibility: row.visibility,\n }),\n ],\n 2\n )\n }),\n 0\n )\n }),\n 0\n )\n },\n },\n _vm.loading\n ? {\n key: \"loader\",\n fn: function () {\n return [\n _c(\"Loader\", {\n staticClass: \"files-list-viewer__loader\",\n }),\n ]\n },\n proxy: true,\n }\n : null,\n ],\n null,\n true\n ),\n })\n },\n },\n ]),\n }),\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { staticClass: \"loader\" },\n [\n _vm._t(\"icon\", function () {\n return [_c(\"span\", { staticClass: \"icon-loading\" })]\n }),\n ],\n 2\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { ref: \"tiledLayoutContainer\", staticClass: \"tiled-container\" },\n [\n _vm._t(\n \"default\",\n function () {\n return [_c(\"TiledRows\", { attrs: { rows: _vm.rows } })]\n },\n { rows: _vm.rows }\n ),\n ],\n 2\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function (_h, _vm) {\n var _c = _vm._c\n return _c(\n \"ul\",\n _vm._l(_vm.props.rows, function (row) {\n return _c(\n \"div\",\n {\n key: row.key,\n staticClass: \"tiled-row\",\n style: { height: row.height + \"px\" },\n },\n _vm._l(row.items, function (item) {\n return _c(\n \"li\",\n {\n key: item.id,\n style: {\n width: item.ratio ? row.height * item.ratio + \"px\" : \"100%\",\n height: row.height + \"px\",\n },\n },\n [_vm._t(\"default\", null, { row: row, item: item })],\n 2\n )\n }),\n 0\n )\n }),\n 0\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return !_vm.useWindow && _vm.containerElement === null\n ? _c(\"div\", { ref: \"container\", staticClass: \"vs-container\" }, [\n _c(\n \"div\",\n {\n ref: \"rowsContainer\",\n staticClass: \"vs-rows-container\",\n style: _vm.rowsContainerStyle,\n },\n [\n _vm._t(\"default\", null, { renderedRows: _vm.visibleRows }),\n _vm._v(\" \"),\n _vm._t(\"loader\"),\n ],\n 2\n ),\n ])\n : _c(\n \"div\",\n {\n ref: \"rowsContainer\",\n staticClass: \"vs-rows-container\",\n style: _vm.rowsContainerStyle,\n },\n [\n _vm._t(\"default\", null, { renderedRows: _vm.visibleRows }),\n _vm._v(\" \"),\n _vm._t(\"loader\"),\n ],\n 2\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-src_mixins_FetchFilesMixin_js.js b/js/photos-src_mixins_FetchFilesMixin_js.js deleted file mode 100644 index d8e53a8cc..000000000 --- a/js/photos-src_mixins_FetchFilesMixin_js.js +++ /dev/null @@ -1,372 +0,0 @@ -"use strict"; -(self["webpackChunkphotos"] = self["webpackChunkphotos"] || []).push([["src_mixins_FetchFilesMixin_js"],{ - -/***/ "./src/mixins/FetchFilesMixin.js": -/*!***************************************!*\ - !*** ./src/mixins/FetchFilesMixin.js ***! - \***************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _services_logger_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../services/logger.js */ "./src/services/logger.js"); -/* harmony import */ var _services_PhotoSearch_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../services/PhotoSearch.js */ "./src/services/PhotoSearch.js"); -/* harmony import */ var _utils_semaphoreWithPriority_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils/semaphoreWithPriority.js */ "./src/utils/semaphoreWithPriority.js"); -/* harmony import */ var _AbortControllerMixin_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./AbortControllerMixin.js */ "./src/mixins/AbortControllerMixin.js"); -/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js"); -function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); } - -function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } - -function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } - -function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); } - -function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); } - -function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; } - -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } - -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } - -function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } - -/** - * @copyright Copyright (c) 2022 Louis Chemineau - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ - - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'FetchFilesMixin', - mixins: [_AbortControllerMixin_js__WEBPACK_IMPORTED_MODULE_3__["default"]], - data: function data() { - return { - errorFetchingFiles: null, - loadingFiles: false, - doneFetchingFiles: false, - semaphore: new _utils_semaphoreWithPriority_js__WEBPACK_IMPORTED_MODULE_2__["default"](30), - fetchSemaphore: new _utils_semaphoreWithPriority_js__WEBPACK_IMPORTED_MODULE_2__["default"](1), - semaphoreSymbol: null, - fetchedFileIds: [] - }; - }, - watch: { - $route: function $route() { - this.resetFetchFilesState(); - } - }, - methods: { - /** - * @param {string} path - Path to pass to getPhotos. - * @param {object} options - Options to pass to getPhotos. - * @param {string[]} [blacklist=[]] - Array of ids to filter out. - * @return {Promise} - The next batch of data depending on global offset. - */ - fetchFiles: function fetchFiles() { - var _arguments = arguments, - _this = this; - - return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() { - var path, options, blacklist, semaphoreSymbol, fetchSemaphoreSymbol, _this$fetchedFileIds, numberOfImagesPerBatch, fetchedFiles, fileIds, _error$response; - - return regeneratorRuntime.wrap(function _callee$(_context) { - while (1) { - switch (_context.prev = _context.next) { - case 0: - path = _arguments.length > 0 && _arguments[0] !== undefined ? _arguments[0] : ''; - options = _arguments.length > 1 && _arguments[1] !== undefined ? _arguments[1] : {}; - blacklist = _arguments.length > 2 && _arguments[2] !== undefined ? _arguments[2] : []; - - if (!(_this.doneFetchingFiles || _this.loadingFiles)) { - _context.next = 5; - break; - } - - return _context.abrupt("return", []); - - case 5: - _context.next = 7; - return _this.semaphore.acquire(function () { - return 0; - }, 'fetchFiles'); - - case 7: - semaphoreSymbol = _context.sent; - _context.next = 10; - return _this.fetchSemaphore.acquire(); - - case 10: - fetchSemaphoreSymbol = _context.sent; - _context.prev = 11; - _this.errorFetchingFiles = null; - _this.loadingFiles = true; - _this.semaphoreSymbol = semaphoreSymbol; - numberOfImagesPerBatch = 200; // Load next batch of images - - _context.next = 18; - return (0,_services_PhotoSearch_js__WEBPACK_IMPORTED_MODULE_1__["default"])(path, _objectSpread(_objectSpread({ - firstResult: _this.fetchedFileIds.length, - nbResults: numberOfImagesPerBatch - }, options), {}, { - signal: _this.abortController.signal - })); - - case 18: - fetchedFiles = _context.sent; - - // If we get less files than requested that means we got to the end - if (fetchedFiles.length !== numberOfImagesPerBatch) { - _this.doneFetchingFiles = true; - } - - fileIds = fetchedFiles.map(function (file) { - return file.fileid; - }).filter(function (fileId) { - return !_this.fetchedFileIds.includes(fileId); - }); // Filter to prevent duplicate fileIds. - - (_this$fetchedFileIds = _this.fetchedFileIds).push.apply(_this$fetchedFileIds, _toConsumableArray(fileIds.map(function (fileId) { - return fileId.toString(); - }).filter(function (fileId) { - return !blacklist.includes(fileId); - }))); - - _this.$store.dispatch('appendFiles', fetchedFiles); - - _services_logger_js__WEBPACK_IMPORTED_MODULE_0__["default"].debug("[FetchFilesMixin] Fetched ".concat(fileIds.length, " new files: "), fileIds); - return _context.abrupt("return", fileIds); - - case 27: - _context.prev = 27; - _context.t0 = _context["catch"](11); - - if (!(((_error$response = _context.t0.response) === null || _error$response === void 0 ? void 0 : _error$response.status) === 404)) { - _context.next = 33; - break; - } - - _this.errorFetchingFiles = 404; - _context.next = 38; - break; - - case 33: - if (!(_context.t0.code === 'ERR_CANCELED')) { - _context.next = 37; - break; - } - - return _context.abrupt("return", []); - - case 37: - _this.errorFetchingFiles = _context.t0; - - case 38: - // cancelled request, moving on... - _services_logger_js__WEBPACK_IMPORTED_MODULE_0__["default"].error('Error fetching files', _context.t0); - console.error(_context.t0); - - case 40: - _context.prev = 40; - _this.loadingFiles = false; - - _this.semaphore.release(semaphoreSymbol); - - _this.fetchSemaphore.release(fetchSemaphoreSymbol); - - return _context.finish(40); - - case 45: - return _context.abrupt("return", []); - - case 46: - case "end": - return _context.stop(); - } - } - }, _callee, null, [[11, 27, 40, 45]]); - }))(); - }, - resetFetchFilesState: function resetFetchFilesState() { - this.doneFetchingFiles = false; - this.errorFetchingFiles = null; - this.loadingFiles = false; - this.fetchedFileIds = []; - } - } -}); - -/***/ }), - -/***/ "./src/services/PhotoSearch.js": -/*!*************************************!*\ - !*** ./src/services/PhotoSearch.js ***! - \*************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* export default binding */ __WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _utils_fileUtils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils/fileUtils.js */ "./src/utils/fileUtils.js"); -/* harmony import */ var _nextcloud_auth__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/auth */ "./node_modules/@nextcloud/auth/dist/index.esm.js"); -/* harmony import */ var _AllowedMimes_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./AllowedMimes.js */ "./src/services/AllowedMimes.js"); -/* harmony import */ var _DavClient_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./DavClient.js */ "./src/services/DavClient.js"); -/* harmony import */ var _DavRequest_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./DavRequest.js */ "./src/services/DavRequest.js"); -/* harmony import */ var _nextcloud_moment__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @nextcloud/moment */ "./node_modules/@nextcloud/moment/dist/index.js"); -/* harmony import */ var _nextcloud_moment__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_moment__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _nextcloud_router__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @nextcloud/router */ "./node_modules/@nextcloud/router/dist/index.js"); -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } - -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } - -function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } - -/** - * @copyright Copyright (c) 2019 John Molakvoæ - * - * @author John Molakvoæ - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ - - - - - - - -/** - * List files from a folder and filter out unwanted mimes - * - * @param {object} path the lookup path - * @param {object} [options] used for the cancellable requests - * @param {number} [options.firstResult=0] Index of the first result that we want (starts at 0) - * @param {number} [options.nbResults=200] The number of file to fetch - * @param {string[]} [options.mimesType=allMimes] Mime type of the files - * @param {boolean} [options.full=false] get full data of the files - * @param {boolean} [options.onThisDay=false] get only items from this day of year - * @param {boolean} [options.onlyFavorites=false] get only favorite items - * @return {Promise} the file list - */ - -/* harmony default export */ function __WEBPACK_DEFAULT_EXPORT__() { - return _ref.apply(this, arguments); -} - -function _ref() { - _ref = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() { - var path, - options, - prefixPath, - orMime, - eqFavorites, - onThisDay, - response, - _args = arguments; - return regeneratorRuntime.wrap(function _callee$(_context) { - while (1) { - switch (_context.prev = _context.next) { - case 0: - path = _args.length > 0 && _args[0] !== undefined ? _args[0] : ''; - options = _args.length > 1 && _args[1] !== undefined ? _args[1] : {}; - // default function options - options = _objectSpread({ - firstResult: 0, - nbResults: 200, - mimesType: _AllowedMimes_js__WEBPACK_IMPORTED_MODULE_2__.allMimes, - onThisDay: false, - onlyFavorites: false - }, options); - prefixPath = "/files/".concat((0,_nextcloud_auth__WEBPACK_IMPORTED_MODULE_1__.getCurrentUser)().uid); // generating the search or condition - // based on the allowed mimetypes - - orMime = options.mimesType.reduce(function (str, mime) { - return "".concat(str, "\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t").concat(mime, "\n\t\t\n\t"); - }, ''); - eqFavorites = options.onlyFavorites ? "\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t1\n\t\t\t" : ''; - onThisDay = options.onThisDay ? "".concat(Array(20).fill(1).map(function (_, years) { - var start = _nextcloud_moment__WEBPACK_IMPORTED_MODULE_5___default()(Date.now()).startOf('day').subtract(3, 'd').subtract(years + 1, 'y'); - var end = _nextcloud_moment__WEBPACK_IMPORTED_MODULE_5___default()(Date.now()).endOf('day').add(3, 'd').subtract(years + 1, 'y'); - return "\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t".concat(start.format((_nextcloud_moment__WEBPACK_IMPORTED_MODULE_5___default().defaultFormatUtc)), "\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t").concat(end.format((_nextcloud_moment__WEBPACK_IMPORTED_MODULE_5___default().defaultFormatUtc)), "\n\t\t\t\t\n\t\t\t"); - }).join('\n'), "") : ''; - options = Object.assign({ - method: 'SEARCH', - headers: { - 'content-Type': 'text/xml' - }, - data: "\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t".concat(_DavRequest_js__WEBPACK_IMPORTED_MODULE_4__.props, "\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t").concat(prefixPath, "/").concat(path, "\n\t\t\t\t\t\t\tinfinity\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t").concat(orMime, "\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t").concat(eqFavorites, "\n\t\t\t\t\t\t\t").concat(onThisDay, "\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t").concat(options.nbResults, "\n\t\t\t\t\t\t").concat(options.firstResult, "\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t"), - deep: true, - details: true - }, options); - _context.next = 10; - return _DavClient_js__WEBPACK_IMPORTED_MODULE_3__["default"].getDirectoryContents('', options); - - case 10: - response = _context.sent; - return _context.abrupt("return", response.data.map(function (data) { - return (0,_utils_fileUtils_js__WEBPACK_IMPORTED_MODULE_0__.genFileInfo)(data); - }).map(function (file) { - return _objectSpread(_objectSpread({}, file), {}, { - source: (0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_6__.generateRemoteUrl)("dav".concat(file.filename)) - }); - })); - - case 12: - case "end": - return _context.stop(); - } - } - }, _callee); - })); - return _ref.apply(this, arguments); -} - -/***/ }) - -}]); -//# sourceMappingURL=photos-src_mixins_FetchFilesMixin_js.js.map?v=4c8d0b922aa83262f119 \ No newline at end of file diff --git a/js/photos-src_mixins_FetchFilesMixin_js.js.map b/js/photos-src_mixins_FetchFilesMixin_js.js.map deleted file mode 100644 index 2284a7303..000000000 --- a/js/photos-src_mixins_FetchFilesMixin_js.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-src_mixins_FetchFilesMixin_js.js?v=4c8d0b922aa83262f119","mappings":";;;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;AC5MA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sources":["webpack:///photos/src/mixins/FetchFilesMixin.js","webpack:///photos/src/services/PhotoSearch.js"],"sourcesContent":["function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\n\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\n\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\n/**\n * @copyright Copyright (c) 2022 Louis Chemineau \n *\n * @author Louis Chemineau \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 .\n *\n */\nimport logger from '../services/logger.js';\nimport getPhotos from '../services/PhotoSearch.js';\nimport SemaphoreWithPriority from '../utils/semaphoreWithPriority.js';\nimport AbortControllerMixin from './AbortControllerMixin.js';\nexport default {\n name: 'FetchFilesMixin',\n mixins: [AbortControllerMixin],\n data: function data() {\n return {\n errorFetchingFiles: null,\n loadingFiles: false,\n doneFetchingFiles: false,\n semaphore: new SemaphoreWithPriority(30),\n fetchSemaphore: new SemaphoreWithPriority(1),\n semaphoreSymbol: null,\n fetchedFileIds: []\n };\n },\n watch: {\n $route: function $route() {\n this.resetFetchFilesState();\n }\n },\n methods: {\n /**\n * @param {string} path - Path to pass to getPhotos.\n * @param {object} options - Options to pass to getPhotos.\n * @param {string[]} [blacklist=[]] - Array of ids to filter out.\n * @return {Promise} - The next batch of data depending on global offset.\n */\n fetchFiles: function fetchFiles() {\n var _arguments = arguments,\n _this = this;\n\n return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {\n var path, options, blacklist, semaphoreSymbol, fetchSemaphoreSymbol, _this$fetchedFileIds, numberOfImagesPerBatch, fetchedFiles, fileIds, _error$response;\n\n return regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n path = _arguments.length > 0 && _arguments[0] !== undefined ? _arguments[0] : '';\n options = _arguments.length > 1 && _arguments[1] !== undefined ? _arguments[1] : {};\n blacklist = _arguments.length > 2 && _arguments[2] !== undefined ? _arguments[2] : [];\n\n if (!(_this.doneFetchingFiles || _this.loadingFiles)) {\n _context.next = 5;\n break;\n }\n\n return _context.abrupt(\"return\", []);\n\n case 5:\n _context.next = 7;\n return _this.semaphore.acquire(function () {\n return 0;\n }, 'fetchFiles');\n\n case 7:\n semaphoreSymbol = _context.sent;\n _context.next = 10;\n return _this.fetchSemaphore.acquire();\n\n case 10:\n fetchSemaphoreSymbol = _context.sent;\n _context.prev = 11;\n _this.errorFetchingFiles = null;\n _this.loadingFiles = true;\n _this.semaphoreSymbol = semaphoreSymbol;\n numberOfImagesPerBatch = 200; // Load next batch of images\n\n _context.next = 18;\n return getPhotos(path, _objectSpread(_objectSpread({\n firstResult: _this.fetchedFileIds.length,\n nbResults: numberOfImagesPerBatch\n }, options), {}, {\n signal: _this.abortController.signal\n }));\n\n case 18:\n fetchedFiles = _context.sent;\n\n // If we get less files than requested that means we got to the end\n if (fetchedFiles.length !== numberOfImagesPerBatch) {\n _this.doneFetchingFiles = true;\n }\n\n fileIds = fetchedFiles.map(function (file) {\n return file.fileid;\n }).filter(function (fileId) {\n return !_this.fetchedFileIds.includes(fileId);\n }); // Filter to prevent duplicate fileIds.\n\n (_this$fetchedFileIds = _this.fetchedFileIds).push.apply(_this$fetchedFileIds, _toConsumableArray(fileIds.map(function (fileId) {\n return fileId.toString();\n }).filter(function (fileId) {\n return !blacklist.includes(fileId);\n })));\n\n _this.$store.dispatch('appendFiles', fetchedFiles);\n\n logger.debug(\"[FetchFilesMixin] Fetched \".concat(fileIds.length, \" new files: \"), fileIds);\n return _context.abrupt(\"return\", fileIds);\n\n case 27:\n _context.prev = 27;\n _context.t0 = _context[\"catch\"](11);\n\n if (!(((_error$response = _context.t0.response) === null || _error$response === void 0 ? void 0 : _error$response.status) === 404)) {\n _context.next = 33;\n break;\n }\n\n _this.errorFetchingFiles = 404;\n _context.next = 38;\n break;\n\n case 33:\n if (!(_context.t0.code === 'ERR_CANCELED')) {\n _context.next = 37;\n break;\n }\n\n return _context.abrupt(\"return\", []);\n\n case 37:\n _this.errorFetchingFiles = _context.t0;\n\n case 38:\n // cancelled request, moving on...\n logger.error('Error fetching files', _context.t0);\n console.error(_context.t0);\n\n case 40:\n _context.prev = 40;\n _this.loadingFiles = false;\n\n _this.semaphore.release(semaphoreSymbol);\n\n _this.fetchSemaphore.release(fetchSemaphoreSymbol);\n\n return _context.finish(40);\n\n case 45:\n return _context.abrupt(\"return\", []);\n\n case 46:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, null, [[11, 27, 40, 45]]);\n }))();\n },\n resetFetchFilesState: function resetFetchFilesState() {\n this.doneFetchingFiles = false;\n this.errorFetchingFiles = null;\n this.loadingFiles = false;\n this.fetchedFileIds = [];\n }\n }\n};","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ \n *\n * @author John Molakvoæ \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 .\n *\n */\nimport { genFileInfo } from '../utils/fileUtils.js';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport { allMimes } from './AllowedMimes.js';\nimport client from './DavClient.js';\nimport { props } from './DavRequest.js';\nimport moment from '@nextcloud/moment';\nimport { generateRemoteUrl } from '@nextcloud/router';\n/**\n * List files from a folder and filter out unwanted mimes\n *\n * @param {object} path the lookup path\n * @param {object} [options] used for the cancellable requests\n * @param {number} [options.firstResult=0] Index of the first result that we want (starts at 0)\n * @param {number} [options.nbResults=200] The number of file to fetch\n * @param {string[]} [options.mimesType=allMimes] Mime type of the files\n * @param {boolean} [options.full=false] get full data of the files\n * @param {boolean} [options.onThisDay=false] get only items from this day of year\n * @param {boolean} [options.onlyFavorites=false] get only favorite items\n * @return {Promise} the file list\n */\n\nexport default function () {\n return _ref.apply(this, arguments);\n}\n\nfunction _ref() {\n _ref = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {\n var path,\n options,\n prefixPath,\n orMime,\n eqFavorites,\n onThisDay,\n response,\n _args = arguments;\n return regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n path = _args.length > 0 && _args[0] !== undefined ? _args[0] : '';\n options = _args.length > 1 && _args[1] !== undefined ? _args[1] : {};\n // default function options\n options = _objectSpread({\n firstResult: 0,\n nbResults: 200,\n mimesType: allMimes,\n onThisDay: false,\n onlyFavorites: false\n }, options);\n prefixPath = \"/files/\".concat(getCurrentUser().uid); // generating the search or condition\n // based on the allowed mimetypes\n\n orMime = options.mimesType.reduce(function (str, mime) {\n return \"\".concat(str, \"\\n\\t\\t\\n\\t\\t\\t\\n\\t\\t\\t\\t\\n\\t\\t\\t\\n\\t\\t\\t\").concat(mime, \"\\n\\t\\t\\n\\t\");\n }, '');\n eqFavorites = options.onlyFavorites ? \"\\n\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\n\\t\\t\\t\\t1\\n\\t\\t\\t\" : '';\n onThisDay = options.onThisDay ? \"\".concat(Array(20).fill(1).map(function (_, years) {\n var start = moment(Date.now()).startOf('day').subtract(3, 'd').subtract(years + 1, 'y');\n var end = moment(Date.now()).endOf('day').add(3, 'd').subtract(years + 1, 'y');\n return \"\\n\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\".concat(start.format(moment.defaultFormatUtc), \"\\n\\t\\t\\t\\t\\n\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\").concat(end.format(moment.defaultFormatUtc), \"\\n\\t\\t\\t\\t\\n\\t\\t\\t\");\n }).join('\\n'), \"\") : '';\n options = Object.assign({\n method: 'SEARCH',\n headers: {\n 'content-Type': 'text/xml'\n },\n data: \"\\n\\t\\t\\t\\n\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\".concat(props, \"\\n\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\").concat(prefixPath, \"/\").concat(path, \"\\n\\t\\t\\t\\t\\t\\t\\tinfinity\\n\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\\t\").concat(orMime, \"\\n\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\").concat(eqFavorites, \"\\n\\t\\t\\t\\t\\t\\t\\t\").concat(onThisDay, \"\\n\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\").concat(options.nbResults, \"\\n\\t\\t\\t\\t\\t\\t\").concat(options.firstResult, \"\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\n\\t\\t\\t\"),\n deep: true,\n details: true\n }, options);\n _context.next = 10;\n return client.getDirectoryContents('', options);\n\n case 10:\n response = _context.sent;\n return _context.abrupt(\"return\", response.data.map(function (data) {\n return genFileInfo(data);\n }).map(function (file) {\n return _objectSpread(_objectSpread({}, file), {}, {\n source: generateRemoteUrl(\"dav\".concat(file.filename))\n });\n }));\n\n case 12:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n return _ref.apply(this, arguments);\n}"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-src_mixins_FetchSharedAlbumsMixin_js-node_modules_vue-material-design-icons_AlertCircle_vue.js b/js/photos-src_mixins_FetchSharedAlbumsMixin_js-node_modules_vue-material-design-icons_AlertCircle_vue.js deleted file mode 100644 index 3c7bf17e7..000000000 --- a/js/photos-src_mixins_FetchSharedAlbumsMixin_js-node_modules_vue-material-design-icons_AlertCircle_vue.js +++ /dev/null @@ -1,398 +0,0 @@ -"use strict"; -(self["webpackChunkphotos"] = self["webpackChunkphotos"] || []).push([["src_mixins_FetchSharedAlbumsMixin_js-node_modules_vue-material-design-icons_AlertCircle_vue"],{ - -/***/ "./src/mixins/FetchSharedAlbumsMixin.js": -/*!**********************************************!*\ - !*** ./src/mixins/FetchSharedAlbumsMixin.js ***! - \**********************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! vuex */ "./node_modules/vuex/dist/vuex.esm.js"); -/* harmony import */ var _nextcloud_moment__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/moment */ "./node_modules/@nextcloud/moment/dist/index.js"); -/* harmony import */ var _nextcloud_moment__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_moment__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/dialogs */ "./node_modules/@nextcloud/dialogs/dist/index.es.js"); -/* harmony import */ var _nextcloud_auth__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @nextcloud/auth */ "./node_modules/@nextcloud/auth/dist/index.esm.js"); -/* harmony import */ var _services_DavClient_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../services/DavClient.js */ "./src/services/DavClient.js"); -/* harmony import */ var _services_logger_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../services/logger.js */ "./src/services/logger.js"); -/* harmony import */ var _utils_fileUtils_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../utils/fileUtils.js */ "./src/utils/fileUtils.js"); -/* harmony import */ var _AbortControllerMixin_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./AbortControllerMixin.js */ "./src/mixins/AbortControllerMixin.js"); -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } - -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } - -function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } - -/** - * @copyright Copyright (c) 2022 Louis Chemineau - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ - - - - - - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'FetchSharedAlbumsMixin', - data: function data() { - return { - errorFetchingAlbums: null, - loadingAlbums: false - }; - }, - mixins: [_AbortControllerMixin_js__WEBPACK_IMPORTED_MODULE_6__["default"]], - beforeMount: function beforeMount() { - var _this = this; - - return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() { - return regeneratorRuntime.wrap(function _callee$(_context) { - while (1) { - switch (_context.prev = _context.next) { - case 0: - _this.fetchAlbums(); - - case 1: - case "end": - return _context.stop(); - } - } - }, _callee); - }))(); - }, - computed: _objectSpread({}, (0,vuex__WEBPACK_IMPORTED_MODULE_7__.mapGetters)(['sharedAlbums'])), - methods: { - fetchAlbums: function fetchAlbums() { - var _this2 = this; - - return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() { - var _getCurrentUser, response, albums, _error$response; - - return regeneratorRuntime.wrap(function _callee2$(_context2) { - while (1) { - switch (_context2.prev = _context2.next) { - case 0: - if (!_this2.loadingAlbums) { - _context2.next = 2; - break; - } - - return _context2.abrupt("return"); - - case 2: - _context2.prev = 2; - _this2.loadingAlbums = true; - _this2.errorFetchingAlbums = null; - _context2.next = 7; - return _services_DavClient_js__WEBPACK_IMPORTED_MODULE_3__["default"].getDirectoryContents("/photos/".concat((_getCurrentUser = (0,_nextcloud_auth__WEBPACK_IMPORTED_MODULE_2__.getCurrentUser)()) === null || _getCurrentUser === void 0 ? void 0 : _getCurrentUser.uid, "/sharedalbums"), { - data: "\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t", - details: true, - signal: _this2.abortController.signal - }); - - case 7: - response = _context2.sent; - albums = response.data.filter(function (album) { - var _getCurrentUser2; - - return album.filename !== "/photos/".concat((_getCurrentUser2 = (0,_nextcloud_auth__WEBPACK_IMPORTED_MODULE_2__.getCurrentUser)()) === null || _getCurrentUser2 === void 0 ? void 0 : _getCurrentUser2.uid, "/sharedalbums"); - }).map(function (album) { - return (0,_utils_fileUtils_js__WEBPACK_IMPORTED_MODULE_5__.genFileInfo)(album); - }).map(function (album) { - var _album$dateRange$repl, _album$dateRange; - - album.collaborators = album.collaborators === '' ? [] : album.collaborators; - var dateRange = JSON.parse((_album$dateRange$repl = (_album$dateRange = album.dateRange) === null || _album$dateRange === void 0 ? void 0 : _album$dateRange.replace(/"/g, '"')) !== null && _album$dateRange$repl !== void 0 ? _album$dateRange$repl : '{}'); - - if (dateRange.start === null) { - dateRange.start = _nextcloud_moment__WEBPACK_IMPORTED_MODULE_0___default()().unix(); - dateRange.end = _nextcloud_moment__WEBPACK_IMPORTED_MODULE_0___default()().unix(); - } - - var dateRangeFormated = { - startDate: _nextcloud_moment__WEBPACK_IMPORTED_MODULE_0___default().unix(dateRange.start).format('MMMM YYYY'), - endDate: _nextcloud_moment__WEBPACK_IMPORTED_MODULE_0___default().unix(dateRange.end).format('MMMM YYYY') - }; - - if (dateRangeFormated.startDate === dateRangeFormated.endDate) { - return _objectSpread(_objectSpread({}, album), {}, { - date: dateRangeFormated.startDate - }); - } else { - return _objectSpread(_objectSpread({}, album), {}, { - date: _this2.t('photos', '{startDate} to {endDate}', dateRangeFormated) - }); - } - }); - - _this2.$store.dispatch('addSharedAlbums', { - albums: albums - }); - - _services_logger_js__WEBPACK_IMPORTED_MODULE_4__["default"].debug("[FetchSharedAlbumsMixin] Fetched ".concat(albums.length, " new files: "), albums); - _context2.next = 26; - break; - - case 13: - _context2.prev = 13; - _context2.t0 = _context2["catch"](2); - - if (!(((_error$response = _context2.t0.response) === null || _error$response === void 0 ? void 0 : _error$response.status) === 404)) { - _context2.next = 19; - break; - } - - _this2.errorFetchingAlbums = 404; - _context2.next = 24; - break; - - case 19: - if (!(_context2.t0.code === 'ERR_CANCELED')) { - _context2.next = 23; - break; - } - - return _context2.abrupt("return"); - - case 23: - _this2.errorFetchingAlbums = _context2.t0; - - case 24: - _services_logger_js__WEBPACK_IMPORTED_MODULE_4__["default"].error(t('photos', 'Failed to fetch albums list.'), _context2.t0); - (0,_nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_1__.showError)(t('photos', 'Failed to fetch albums list.')); - - case 26: - _context2.prev = 26; - _this2.loadingAlbums = false; - return _context2.finish(26); - - case 29: - case "end": - return _context2.stop(); - } - } - }, _callee2, null, [[2, 13, 26, 29]]); - }))(); - } - } -}); - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/AlertCircle.vue": -/*!****************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/AlertCircle.vue ***! - \****************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _AlertCircle_vue_vue_type_template_id_7b52a7d0___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./AlertCircle.vue?vue&type=template&id=7b52a7d0& */ "./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=template&id=7b52a7d0&"); -/* harmony import */ var _AlertCircle_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./AlertCircle.vue?vue&type=script&lang=js& */ "./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=script&lang=js&"); -/* harmony import */ var _vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - - - -/* normalize component */ -; -var component = (0,_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])( - _AlertCircle_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _AlertCircle_vue_vue_type_template_id_7b52a7d0___WEBPACK_IMPORTED_MODULE_0__.render, - _AlertCircle_vue_vue_type_template_id_7b52a7d0___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - null, - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "node_modules/vue-material-design-icons/AlertCircle.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=script&lang=js&": -/*!****************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=script&lang=js& ***! - \****************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: "AlertCircleIcon", - emits: ['click'], - props: { - title: { - type: String, - }, - fillColor: { - type: String, - default: "currentColor" - }, - size: { - type: Number, - default: 24 - } - } -}); - - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=script&lang=js&": -/*!*****************************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=script&lang=js& ***! - \*****************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _vue_loader_lib_index_js_vue_loader_options_AlertCircle_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/index.js??vue-loader-options!./AlertCircle.vue?vue&type=script&lang=js& */ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_vue_loader_lib_index_js_vue_loader_options_AlertCircle_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=template&id=7b52a7d0&": -/*!***********************************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=template&id=7b52a7d0& ***! - \***********************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_AlertCircle_vue_vue_type_template_id_7b52a7d0___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_AlertCircle_vue_vue_type_template_id_7b52a7d0___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_AlertCircle_vue_vue_type_template_id_7b52a7d0___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../vue-loader/lib/index.js??vue-loader-options!./AlertCircle.vue?vue&type=template&id=7b52a7d0& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=template&id=7b52a7d0&"); - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=template&id=7b52a7d0&": -/*!**************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=template&id=7b52a7d0& ***! - \**************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c( - "span", - _vm._b( - { - staticClass: "material-design-icon alert-circle-icon", - attrs: { - "aria-hidden": !_vm.title, - "aria-label": _vm.title, - role: "img", - }, - on: { - click: function ($event) { - return _vm.$emit("click", $event) - }, - }, - }, - "span", - _vm.$attrs, - false - ), - [ - _c( - "svg", - { - staticClass: "material-design-icon__svg", - attrs: { - fill: _vm.fillColor, - width: _vm.size, - height: _vm.size, - viewBox: "0 0 24 24", - }, - }, - [ - _c( - "path", - { - attrs: { - d: "M13,13H11V7H13M13,17H11V15H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z", - }, - }, - [_vm.title ? _c("title", [_vm._v(_vm._s(_vm.title))]) : _vm._e()] - ), - ] - ), - ] - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }) - -}]); -//# sourceMappingURL=photos-src_mixins_FetchSharedAlbumsMixin_js-node_modules_vue-material-design-icons_AlertCircle_vue.js.map?v=0291e193230f32b8bf4c \ No newline at end of file diff --git a/js/photos-src_mixins_FetchSharedAlbumsMixin_js-node_modules_vue-material-design-icons_AlertCircle_vue.js.map b/js/photos-src_mixins_FetchSharedAlbumsMixin_js-node_modules_vue-material-design-icons_AlertCircle_vue.js.map deleted file mode 100644 index de39a7529..000000000 --- a/js/photos-src_mixins_FetchSharedAlbumsMixin_js-node_modules_vue-material-design-icons_AlertCircle_vue.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-src_mixins_FetchSharedAlbumsMixin_js-node_modules_vue-material-design-icons_AlertCircle_vue.js?v=0291e193230f32b8bf4c","mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;ACrLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;ACtCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;ACpCA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sources":["webpack:///photos/src/mixins/FetchSharedAlbumsMixin.js","webpack:///photos/node_modules/vue-material-design-icons/AlertCircle.vue","webpack:///photos/node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/AlertCircle.vue?5363","webpack://photos/./node_modules/vue-material-design-icons/AlertCircle.vue?d55e"],"sourcesContent":["function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\n/**\n * @copyright Copyright (c) 2022 Louis Chemineau \n *\n * @author Louis Chemineau \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 .\n *\n */\nimport { mapGetters } from 'vuex';\nimport moment from '@nextcloud/moment';\nimport { showError } from '@nextcloud/dialogs';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport client from '../services/DavClient.js';\nimport logger from '../services/logger.js';\nimport { genFileInfo } from '../utils/fileUtils.js';\nimport AbortControllerMixin from './AbortControllerMixin.js';\nexport default {\n name: 'FetchSharedAlbumsMixin',\n data: function data() {\n return {\n errorFetchingAlbums: null,\n loadingAlbums: false\n };\n },\n mixins: [AbortControllerMixin],\n beforeMount: function beforeMount() {\n var _this = this;\n\n return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {\n return regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _this.fetchAlbums();\n\n case 1:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }))();\n },\n computed: _objectSpread({}, mapGetters(['sharedAlbums'])),\n methods: {\n fetchAlbums: function fetchAlbums() {\n var _this2 = this;\n\n return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() {\n var _getCurrentUser, response, albums, _error$response;\n\n return regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n if (!_this2.loadingAlbums) {\n _context2.next = 2;\n break;\n }\n\n return _context2.abrupt(\"return\");\n\n case 2:\n _context2.prev = 2;\n _this2.loadingAlbums = true;\n _this2.errorFetchingAlbums = null;\n _context2.next = 7;\n return client.getDirectoryContents(\"/photos/\".concat((_getCurrentUser = getCurrentUser()) === null || _getCurrentUser === void 0 ? void 0 : _getCurrentUser.uid, \"/sharedalbums\"), {\n data: \"\\n\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\",\n details: true,\n signal: _this2.abortController.signal\n });\n\n case 7:\n response = _context2.sent;\n albums = response.data.filter(function (album) {\n var _getCurrentUser2;\n\n return album.filename !== \"/photos/\".concat((_getCurrentUser2 = getCurrentUser()) === null || _getCurrentUser2 === void 0 ? void 0 : _getCurrentUser2.uid, \"/sharedalbums\");\n }).map(function (album) {\n return genFileInfo(album);\n }).map(function (album) {\n var _album$dateRange$repl, _album$dateRange;\n\n album.collaborators = album.collaborators === '' ? [] : album.collaborators;\n var dateRange = JSON.parse((_album$dateRange$repl = (_album$dateRange = album.dateRange) === null || _album$dateRange === void 0 ? void 0 : _album$dateRange.replace(/"/g, '\"')) !== null && _album$dateRange$repl !== void 0 ? _album$dateRange$repl : '{}');\n\n if (dateRange.start === null) {\n dateRange.start = moment().unix();\n dateRange.end = moment().unix();\n }\n\n var dateRangeFormated = {\n startDate: moment.unix(dateRange.start).format('MMMM YYYY'),\n endDate: moment.unix(dateRange.end).format('MMMM YYYY')\n };\n\n if (dateRangeFormated.startDate === dateRangeFormated.endDate) {\n return _objectSpread(_objectSpread({}, album), {}, {\n date: dateRangeFormated.startDate\n });\n } else {\n return _objectSpread(_objectSpread({}, album), {}, {\n date: _this2.t('photos', '{startDate} to {endDate}', dateRangeFormated)\n });\n }\n });\n\n _this2.$store.dispatch('addSharedAlbums', {\n albums: albums\n });\n\n logger.debug(\"[FetchSharedAlbumsMixin] Fetched \".concat(albums.length, \" new files: \"), albums);\n _context2.next = 26;\n break;\n\n case 13:\n _context2.prev = 13;\n _context2.t0 = _context2[\"catch\"](2);\n\n if (!(((_error$response = _context2.t0.response) === null || _error$response === void 0 ? void 0 : _error$response.status) === 404)) {\n _context2.next = 19;\n break;\n }\n\n _this2.errorFetchingAlbums = 404;\n _context2.next = 24;\n break;\n\n case 19:\n if (!(_context2.t0.code === 'ERR_CANCELED')) {\n _context2.next = 23;\n break;\n }\n\n return _context2.abrupt(\"return\");\n\n case 23:\n _this2.errorFetchingAlbums = _context2.t0;\n\n case 24:\n logger.error(t('photos', 'Failed to fetch albums list.'), _context2.t0);\n showError(t('photos', 'Failed to fetch albums list.'));\n\n case 26:\n _context2.prev = 26;\n _this2.loadingAlbums = false;\n return _context2.finish(26);\n\n case 29:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2, null, [[2, 13, 26, 29]]);\n }))();\n }\n }\n};","import { render, staticRenderFns } from \"./AlertCircle.vue?vue&type=template&id=7b52a7d0&\"\nimport script from \"./AlertCircle.vue?vue&type=script&lang=js&\"\nexport * from \"./AlertCircle.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/admin/Docker/apps2/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('7b52a7d0')) {\n api.createRecord('7b52a7d0', component.options)\n } else {\n api.reload('7b52a7d0', component.options)\n }\n module.hot.accept(\"./AlertCircle.vue?vue&type=template&id=7b52a7d0&\", function () {\n api.rerender('7b52a7d0', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"node_modules/vue-material-design-icons/AlertCircle.vue\"\nexport default component.exports","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nexport default {\n name: \"AlertCircleIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./AlertCircle.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./AlertCircle.vue?vue&type=script&lang=js&\"","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"span\",\n _vm._b(\n {\n staticClass: \"material-design-icon alert-circle-icon\",\n attrs: {\n \"aria-hidden\": !_vm.title,\n \"aria-label\": _vm.title,\n role: \"img\",\n },\n on: {\n click: function ($event) {\n return _vm.$emit(\"click\", $event)\n },\n },\n },\n \"span\",\n _vm.$attrs,\n false\n ),\n [\n _c(\n \"svg\",\n {\n staticClass: \"material-design-icon__svg\",\n attrs: {\n fill: _vm.fillColor,\n width: _vm.size,\n height: _vm.size,\n viewBox: \"0 0 24 24\",\n },\n },\n [\n _c(\n \"path\",\n {\n attrs: {\n d: \"M13,13H11V7H13M13,17H11V15H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z\",\n },\n },\n [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()]\n ),\n ]\n ),\n ]\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-src_mixins_FilesSelectionMixin_js-src_components_File_vue-src_components_FilesListViewer_vue.js b/js/photos-src_mixins_FilesSelectionMixin_js-src_components_File_vue-src_components_FilesListViewer_vue.js deleted file mode 100644 index 02aaf9a2d..000000000 --- a/js/photos-src_mixins_FilesSelectionMixin_js-src_components_File_vue-src_components_FilesListViewer_vue.js +++ /dev/null @@ -1,1844 +0,0 @@ -"use strict"; -(self["webpackChunkphotos"] = self["webpackChunkphotos"] || []).push([["src_mixins_FilesSelectionMixin_js-src_components_File_vue-src_components_FilesListViewer_vue"],{ - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/File.vue?vue&type=script&lang=js&": -/*!**************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/File.vue?vue&type=script&lang=js& ***! - \**************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var vue_material_design_icons_Star__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue-material-design-icons/Star */ "./node_modules/vue-material-design-icons/Star.vue"); -/* harmony import */ var vue_material_design_icons_Video_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! vue-material-design-icons/Video.vue */ "./node_modules/vue-material-design-icons/Video.vue"); -/* harmony import */ var _nextcloud_router__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @nextcloud/router */ "./node_modules/@nextcloud/router/dist/index.js"); -/* harmony import */ var _nextcloud_auth__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @nextcloud/auth */ "./node_modules/@nextcloud/auth/dist/index.esm.js"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @nextcloud/vue */ "./node_modules/@nextcloud/vue/dist/ncvuecomponents.js"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _mixins_UserConfig_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../mixins/UserConfig.js */ "./src/mixins/UserConfig.js"); -/* harmony import */ var _utils_semaphoreWithPriority_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../utils/semaphoreWithPriority.js */ "./src/utils/semaphoreWithPriority.js"); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - - - - - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'File', - components: { - NcCheckboxRadioSwitch: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_4__.NcCheckboxRadioSwitch, - Star: vue_material_design_icons_Star__WEBPACK_IMPORTED_MODULE_0__["default"], - VideoIcon: vue_material_design_icons_Video_vue__WEBPACK_IMPORTED_MODULE_1__["default"] - }, - mixins: [_mixins_UserConfig_js__WEBPACK_IMPORTED_MODULE_5__["default"]], - inheritAttrs: false, - props: { - file: { - type: Object, - required: true - }, - selected: { - type: Boolean, - required: true - }, - allowSelection: { - type: Boolean, - default: true - }, - visibility: { - type: String, - required: true - }, - semaphore: { - type: _utils_semaphoreWithPriority_js__WEBPACK_IMPORTED_MODULE_6__["default"], - required: true - } - }, - - data() { - return { - loaded: false, - error: false, - canLoad: false, - semaphoreSymbol: null, - isDestroyed: false - }; - }, - - computed: { - /** @return {string} */ - davPath() { - return (0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_2__.generateRemoteUrl)(`dav/files/${(0,_nextcloud_auth__WEBPACK_IMPORTED_MODULE_3__.getCurrentUser)().uid}`) + this.file.filename; - }, - - /** @return {string} */ - ariaDescription() { - return `image-description-${this.file.fileid}`; - }, - - /** @return {string} */ - ariaLabel() { - return t('photos', 'Open the full size "{name}" image', { - name: this.file.basename - }); - }, - - /** @return {boolean} */ - isImage() { - return this.file.mime.startsWith('image'); - }, - - /** @return {string} */ - decodedEtag() { - return this.file.etag.replace('"', '').replace('"', ''); - }, - - /** @return {string} */ - srcVisible() { - return this.getItemURL(512); - }, - - /** @return {string} */ - srcNear() { - return this.getItemURL(64); - } - - }, - - mounted() { - // Don't render the component right away as it is useless if the user is only scrolling - setTimeout(async () => { - this.semaphoreSymbol = await this.semaphore.acquire(() => { - switch (this.visibility) { - case 'visible': - return 1; - - case 'near': - return 2; - - default: - return 3; - } - }, this.file.fileid); - this.canLoad = true; - - if (this.visibility === 'none' || this.isDestroyed) { - this.releaseSemaphore(); - } - }, 250); - }, - - beforeDestroy() { - this.isDestroyed = true; - this.releaseSemaphore(); // cancel any pending load - - if (this.$refs.imgNear !== undefined) { - this.$refs.imgNear.src = ''; - } - - if (this.$refs.srcVisible !== undefined) { - this.$refs.srcVisible.src = ''; - } - }, - - methods: { - emitClick() { - this.$emit('click', this.file.fileid); - }, - - /** When the image is fully loaded by browser we remove the placeholder */ - onLoad() { - this.loaded = true; - this.releaseSemaphore(); - }, - - onError() { - this.error = true; - this.releaseSemaphore(); - }, - - onToggle(value) { - this.$emit('select-toggled', { - id: this.file.fileid, - value - }); - }, - - getItemURL(size) { - return (0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_2__.generateUrl)(`/apps/photos/api/v1/preview/${this.file.fileid}?x=${size}&y=${size}`); - }, - - releaseSemaphore() { - if (this.semaphoreSymbol === null) { - return; - } - - this.semaphore.release(this.semaphoreSymbol); - this.semaphoreSymbol = null; - } - - } -}); - -/***/ }), - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FilesListViewer.vue?vue&type=script&lang=js&": -/*!*************************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FilesListViewer.vue?vue&type=script&lang=js& ***! - \*************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! vuex */ "./node_modules/vuex/dist/vuex.esm.js"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/vue */ "./node_modules/@nextcloud/vue/dist/ncvuecomponents.js"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _components_TiledLayout_TiledLayout_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../components/TiledLayout/TiledLayout.vue */ "./src/components/TiledLayout/TiledLayout.vue"); -/* harmony import */ var _components_VirtualScrolling_vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../components/VirtualScrolling.vue */ "./src/components/VirtualScrolling.vue"); -/* harmony import */ var _assets_Illustrations_empty_svg__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../assets/Illustrations/empty.svg */ "./src/assets/Illustrations/empty.svg"); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - - - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'FilesListViewer', - components: { - NcEmptyContent: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_0__.NcEmptyContent, - NcLoadingIcon: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_0__.NcLoadingIcon, - TiledLayout: _components_TiledLayout_TiledLayout_vue__WEBPACK_IMPORTED_MODULE_1__["default"], - VirtualScrolling: _components_VirtualScrolling_vue__WEBPACK_IMPORTED_MODULE_2__["default"] - }, - props: { - // Array of file ids that should be rendered. - fileIds: { - type: Array, - default: undefined - }, - // An object mapping a list of section to a list of fileIds. - fileIdsBySection: { - type: Object, - default: undefined - }, - // The list of sorted sections. - sections: { - type: Array, - default: undefined - }, - // Whether we should display a loading indicator. - loading: { - type: Boolean, - default: false - }, - // Message to display when there is no files. - emptyMessage: { - type: String, - default: '' - }, - // The base height to forward to TileLayout. - baseHeight: { - type: Number, - default: 200 - }, - // The height to use for section headers. - sectionHeaderHeight: { - type: Number, - default: 75 - }, - // Instruct VirtualScrolling to scroll to the given section id. - scrollToSection: { - type: String, - default: '' - }, - // The containerElement props to forward to TileLayout. - containerElement: { - type: HTMLElement, - default: null - }, - // The useWindow props to forward to TileLayout. - useWindow: { - type: Boolean, - default: false - } - }, - - data() { - return { - EmptyBox: _assets_Illustrations_empty_svg__WEBPACK_IMPORTED_MODULE_3__, - placeholderFiles: Array(20).fill(0).map((_, index) => { - const height = 200; - const width = height * (1 + Math.random() * 2); - return { - id: index, - width, - height, - ratio: width / height - }; - }) - }; - }, - - computed: { ...(0,vuex__WEBPACK_IMPORTED_MODULE_4__.mapGetters)(['files']), - - /** - * @return {object[]} The list of items to pass to TiledLayout. - */ - fileIdsToItems() { - if (this.fileIds === undefined) { - return []; - } - - return this.fileIds.map(this.mapFileToItem); - }, - - /** - * @return {object[]} The list of items separated by sections to pass to TiledLayout. - */ - sectionsToItems() { - if (this.sections === undefined) { - return []; - } - - return this.sections.flatMap(sectionId => { - return [{ - id: sectionId, - sectionHeader: true, - height: this.sectionHeaderHeight - }, ...this.fileIdsBySection[sectionId].map(this.mapFileToItem)]; - }); - }, - - /** - * @return {boolean} The list of items to pass to TiledLayout. - */ - showPlaceholders() { - return this.loading && (this.fileIds?.length === 0 || this.sections?.length === 0); - }, - - /** - * @return {object[]} The list of items to pass to TiledLayout. - */ - items() { - if (this.fileIds !== undefined) { - if (this.showPlaceholders) { - return this.placeholderFiles; - } - - return this.fileIdsToItems; - } - - if (this.sections !== undefined) { - if (this.showPlaceholders) { - return [{ - height: 75, - sectionHeader: true - }, ...this.placeholderFiles]; - } - - return this.sectionsToItems; - } - - return []; - }, - - showLoader() { - return this.loading && (this.fileIds?.length !== 0 || this.sections?.length !== 0); - } - - }, - methods: { - // Ask the parent for more content. - needContent() { - this.$emit('need-content'); - }, - - mapFileToItem(fileId) { - const file = this.files[fileId]; - return { - id: file.fileid, - width: file.fileMetadataSizeParsed.width, - height: file.fileMetadataSizeParsed.height, - ratio: file.fileMetadataSizeParsed.width / file.fileMetadataSizeParsed.height - }; - } - - } -}); - -/***/ }), - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/TiledLayout/TiledLayout.vue?vue&type=script&lang=js&": -/*!*********************************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/TiledLayout/TiledLayout.vue?vue&type=script&lang=js& ***! - \*********************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _services_logger_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../services/logger.js */ "./src/services/logger.js"); -/* harmony import */ var _services_TiledLayout_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../services/TiledLayout.js */ "./src/services/TiledLayout.js"); -/* harmony import */ var _TiledRows_vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./TiledRows.vue */ "./src/components/TiledLayout/TiledRows.vue"); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'TiledLayout', - components: { - TiledRows: _TiledRows_vue__WEBPACK_IMPORTED_MODULE_2__["default"] - }, - props: { - items: { - type: Array, - required: true - }, - baseHeight: { - type: Number, - default: 200 - } - }, - - data() { - return { - containerWidth: 0, - - /** @type {ResizeObserver} */ - resizeObserver: null - }; - }, - - computed: { - /** @return {import('../services/TiledLayout.js').TiledRow[]} */ - rows() { - _services_logger_js__WEBPACK_IMPORTED_MODULE_0__["default"].debug('[TiledLayout] Computing rows', this.items); - return (0,_services_TiledLayout_js__WEBPACK_IMPORTED_MODULE_1__.splitItemsInRows)(this.items, this.containerWidth, this.baseHeight); - } - - }, - - mounted() { - this.resizeObserver = new ResizeObserver(entries => { - for (const entry of entries) { - const cr = entry.contentRect; - - if (entry.target.classList.contains('tiled-container')) { - this.containerWidth = cr.width; - } - } - }); - this.resizeObserver.observe(this.$refs.tiledLayoutContainer); - }, - - beforeDestroy() { - this.resizeObserver.disconnect(); - } - -}); - -/***/ }), - -/***/ "./src/mixins/FilesSelectionMixin.js": -/*!*******************************************!*\ - !*** ./src/mixins/FilesSelectionMixin.js ***! - \*******************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/** - * @copyright Copyright (c) 2019 Louis Chemineau - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'FilesSelectionMixin', - - data() { - return { - /** @type {Object} */ - selection: {} - }; - }, - - methods: { - onFileSelectToggle(_ref) { - let { - id, - value - } = _ref; - this.$set(this.selection, id, value); - }, - - /** - * @param {string[]} filesIds - The ids of the files to uncheck. - */ - onUncheckFiles(filesIds) { - filesIds.forEach(( - /** @type {string} */ - filesId) => this.$set(this.selection, filesId, false)); - }, - - resetSelection() { - this.selection = {}; - } - - }, - computed: { - /** - * @return {string[]} - */ - selectedFileIds() { - return Object.keys(this.selection).filter(fileId => this.selection[fileId]); - } - - } -}); - -/***/ }), - -/***/ "./src/services/TiledLayout.js": -/*!*************************************!*\ - !*** ./src/services/TiledLayout.js ***! - \*************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "splitItemsInRows": () => (/* binding */ splitItemsInRows) -/* harmony export */ }); -/** - * @copyright Copyright (c) 2022 Louis Chemineau - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ - -/** - * @typedef {object} TiledItem - * @property {string} id - * @property {number} [width] Real width of the item. - * @property {number} height Real height of the item. - * @property {number} [ratio] The aspect ratio of the item. - * @property {boolean} [sectionHeader] Whether this row is a section header. - */ - -/** - * @typedef {object} TiledRow - * @property {TiledItem[]} items - - * @property {number} height - - * @property {string} key - - */ - -/** - * Split items in rows of equal width. - * The last row will not be forced to match containerWidth. - * - * @param {TiledItem[]} items The list of item to split in row of equal width. - * @param {number} containerWidth The width of a row. - * @param {number} baseHeight The base height of the rows. - * @return {TiledRow[]} - */ -function splitItemsInRows(items, containerWidth) { - let baseHeight = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 200; - - if (containerWidth === 0) { - return []; - } - - const rows = []; - let rowNumber = 0; - let currentItem = 0; - - while (currentItem < items.length) { - /** @type { TiledItem[] } */ - const rowItems = []; // Fill the row with new items as long as the width is less than containerWidth. - - do { - // @ts-ignore - We know that items.shift() is not undefined as we always check that items.length > 0. - rowItems.push(items[currentItem++]); - } while (currentItem < items.length && !items[currentItem - 1].sectionHeader && !items[currentItem].sectionHeader && computeRowWidth([...rowItems, items[currentItem]], baseHeight) <= containerWidth); - - rows[rowNumber] = { - items: rowItems, - height: computeRowHeight(rowItems, containerWidth, items.length === currentItem || items[currentItem].sectionHeader === true, baseHeight), - // Key to help vue to keep track of the row in VirtualScrolling. - key: rowItems.map(item => item.id).join('-') - }; - rowNumber += 1; - } - - return rows; -} -/** - * - * @param {TiledItem[]} items The list of items in the row. - * @param {number} baseHeight The base height of the rows. - * @return {number} The width of the row - */ - -function computeRowWidth(items, baseHeight) { - return items.map(item => baseHeight * item.ratio).reduce((sum, itemWidth) => sum + itemWidth); -} -/** - * Compute the row height based on its items and on the container's width. - * - * Math time ! - * With Rn the aspect ratio of item n - * Wn the width of item n - * Hn the height of item n - * Wc the width of the container - * Hr the height of the row - * For n items we want: Wc = W1 + W2 + ... + Wn - * We know Rn = Wn / Hn - * So Wn = Rn * Hn - * So Wc = (R1 * H1) + (R2 * H2) + ... + (Rn * Hn) - * But we also want Hr === H1 === H2 === ... === Hn - * So Wc = (R1 * Hr) + (R2 * Hr) + ... + (Rn * Hr) - * So Wc = Hr * (R1 + R2 + ... + Rn) - * So Hr = Wc / (R1 + R2 + ... + Rn) - * - * @param {TiledItem[]} items The list of items in the row. - * @param {number} containerWidth The width of the row. - * @param {boolean} isLastRow Whether we are computing the height for the last row. - * @param {number} baseHeight The base height of the rows. - * @return {number} The height of the row - */ - - -function computeRowHeight(items, containerWidth, isLastRow, baseHeight) { - // Exception 1: there is only one item and its width it is a sectionHeader, meaning take the full width. - if (items.length === 1 && items[0].sectionHeader) { - return items[0].height; - } - - const sumOfItemsRatio = items.map(item => item.ratio).reduce((sum, itemRatio) => sum + itemRatio); - let rowHeight = containerWidth / sumOfItemsRatio; // Exception 2: there is only one item which is larger than containerWidth. - // Limit its height so that itemWidth === containerWidth - - if (items.length === 1 && items[0].width > containerWidth) { - rowHeight = containerWidth / items[0].ratio; - } // Exception 3: we reached the last row. - // Force the items width to match containerWidth, and limit their heigh to baseHeight + 20. - - - if (isLastRow) { - rowHeight = Math.min(baseHeight + 20, rowHeight); - } - - return rowHeight; -} - -/***/ }), - -/***/ "./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!./src/components/File.vue?vue&type=style&index=0&id=ab80f8a8&lang=scss&scoped=true&": -/*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/components/File.vue?vue&type=style&index=0&id=ab80f8a8&lang=scss&scoped=true& ***! - \**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".file-container[data-v-ab80f8a8] {\n background: var(--color-primary-light);\n position: relative;\n height: 100%;\n width: 100%;\n border: 2px solid var(--color-main-background);\n box-sizing: border-box;\n}\n.file-container.selected[data-v-ab80f8a8]::after, .file-container[data-v-ab80f8a8]:focus-within::after {\n position: absolute;\n top: 0;\n left: 0;\n z-index: 2;\n width: 100%;\n height: 100%;\n content: \"\";\n outline: var(--color-primary) solid 4px;\n outline-offset: -4px;\n pointer-events: none;\n}\n.file-container .file[data-v-ab80f8a8] {\n width: 100%;\n height: 100%;\n box-sizing: border-box;\n outline: none;\n}\n.file-container .file__images[data-v-ab80f8a8] {\n display: contents;\n}\n.file-container .file__images .video-icon[data-v-ab80f8a8] {\n position: absolute;\n top: 0px;\n right: 0px;\n width: 100%;\n height: 100%;\n z-index: 1;\n opacity: 0.8;\n}\n.file-container .file__images .video-icon[data-v-ab80f8a8] .material-design-icon__svg {\n fill: var(--color-main-background);\n}\n.file-container .file__images img[data-v-ab80f8a8] {\n width: 100%;\n height: 100%;\n object-fit: cover;\n position: absolute;\n color: transparent;\n}\n.file-container .file__images .loading-overlay[data-v-ab80f8a8] {\n position: absolute;\n height: 100%;\n width: 100%;\n display: flex;\n align-content: center;\n align-items: center;\n justify-content: center;\n}\n.file-container .file__images .loading-overlay svg[data-v-ab80f8a8] {\n width: 70%;\n height: 70%;\n}\n.file-container .file__hidden-description[data-v-ab80f8a8] {\n position: absolute;\n left: -10000px;\n top: -10000px;\n width: 1px;\n height: 1px;\n overflow: hidden;\n}\n.file-container .file__hidden-description.show[data-v-ab80f8a8] {\n position: initial;\n width: fit-content;\n height: fit-content;\n}\n.file-container:hover .selection-checkbox[data-v-ab80f8a8], .file-container.selected .selection-checkbox[data-v-ab80f8a8], .file-container:focus-within .selection-checkbox[data-v-ab80f8a8] {\n display: flex;\n}\n.file-container:hover .favorite-state[data-v-ab80f8a8], .file-container.selected .favorite-state[data-v-ab80f8a8], .file-container:focus-within .favorite-state[data-v-ab80f8a8] {\n display: none;\n}\n.file-container .selection-checkbox[data-v-ab80f8a8] {\n display: none;\n position: absolute;\n top: 8px;\n right: min(22px, 50% - 7px);\n z-index: 1;\n width: fit-content;\n}\n.file-container .selection-checkbox[data-v-ab80f8a8] .checkbox-radio-switch__label {\n padding: 10px;\n box-sizing: border-box;\n}\n.file-container .selection-checkbox[data-v-ab80f8a8] .checkbox-radio-switch__label::after {\n content: \"\";\n background: var(--color-primary-light);\n width: 16px;\n height: 16px;\n position: absolute;\n left: 14px;\n z-index: -1;\n}\n.file-container .selection-checkbox[data-v-ab80f8a8] .checkbox-radio-switch__label .checkbox-radio-switch__icon {\n margin: 0;\n}\n.file-container .selection-checkbox .input-label[data-v-ab80f8a8] {\n position: fixed;\n z-index: -1;\n top: -5000px;\n left: -5000px;\n}\n.file-container .favorite-state[data-v-ab80f8a8] {\n position: absolute;\n top: 2px;\n right: min(2px, 50% - 7px);\n}\n.file-container .favorite-state[data-v-ab80f8a8] .material-design-icon__svg {\n fill: #FC0;\n}\n.file-container .favorite-state[data-v-ab80f8a8] .material-design-icon__svg path {\n stroke: var(--color-primary-light);\n stroke-width: 1px;\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./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!./src/components/FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true&": -/*!*************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/components/FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true& ***! - \*************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".files-list-viewer[data-v-3ebf26b2] {\n height: 100%;\n position: relative;\n}\n.files-list-viewer[data-v-3ebf26b2] .empty-content__icon {\n width: 200px;\n height: 200px;\n}\n.files-list-viewer[data-v-3ebf26b2] .empty-content__icon .empty-content-illustration svg {\n width: 200px;\n height: 200px;\n}\n.files-list-viewer__placeholder[data-v-3ebf26b2] {\n background: var(--color-primary-light);\n width: 100%;\n height: 100%;\n border: 2px solid var(--color-main-background);\n}\n.files-list-viewer .tiled-row[data-v-3ebf26b2] {\n display: flex;\n}\n.files-list-viewer__section-header[data-v-3ebf26b2] {\n position: sticky;\n top: 0;\n z-index: 3;\n background: var(--color-main-background);\n}\n.files-list-viewer__loader[data-v-3ebf26b2] {\n margin: 50px 0;\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./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!./src/components/TiledLayout/TiledLayout.vue?vue&type=style&index=0&id=d8ebab5e&scoped=true&lang=scss&": -/*!*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/components/TiledLayout/TiledLayout.vue?vue&type=style&index=0&id=d8ebab5e&scoped=true&lang=scss& ***! - \*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".tiled-container[data-v-d8ebab5e] {\n height: 100%;\n}\n.tiled-container .tiled-row[data-v-d8ebab5e] {\n display: flex;\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./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!./src/components/TiledLayout/TiledRows.vue?vue&type=style&index=0&id=20864d80&lang=scss&scoped=true&": -/*!*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/components/TiledLayout/TiledRows.vue?vue&type=style&index=0&id=20864d80&lang=scss&scoped=true& ***! - \*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".tiled-row[data-v-20864d80] {\n display: flex;\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/File.vue?vue&type=style&index=0&id=ab80f8a8&lang=scss&scoped=true&": -/*!******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/components/File.vue?vue&type=style&index=0&id=ab80f8a8&lang=scss&scoped=true& ***! - \******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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_File_vue_vue_type_style_index_0_id_ab80f8a8_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../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!./File.vue?vue&type=style&index=0&id=ab80f8a8&lang=scss&scoped=true& */ "./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!./src/components/File.vue?vue&type=style&index=0&id=ab80f8a8&lang=scss&scoped=true&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_File_vue_vue_type_style_index_0_id_ab80f8a8_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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_File_vue_vue_type_style_index_0_id_ab80f8a8_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_File_vue_vue_type_style_index_0_id_ab80f8a8_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_File_vue_vue_type_style_index_0_id_ab80f8a8_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true&": -/*!*****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/components/FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true& ***! - \*****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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_FilesListViewer_vue_vue_type_style_index_0_id_3ebf26b2_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../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!./FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true& */ "./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!./src/components/FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_FilesListViewer_vue_vue_type_style_index_0_id_3ebf26b2_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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_FilesListViewer_vue_vue_type_style_index_0_id_3ebf26b2_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_FilesListViewer_vue_vue_type_style_index_0_id_3ebf26b2_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_FilesListViewer_vue_vue_type_style_index_0_id_3ebf26b2_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/TiledLayout/TiledLayout.vue?vue&type=style&index=0&id=d8ebab5e&scoped=true&lang=scss&": -/*!*************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/components/TiledLayout/TiledLayout.vue?vue&type=style&index=0&id=d8ebab5e&scoped=true&lang=scss& ***! - \*************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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_TiledLayout_vue_vue_type_style_index_0_id_d8ebab5e_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../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!./TiledLayout.vue?vue&type=style&index=0&id=d8ebab5e&scoped=true&lang=scss& */ "./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!./src/components/TiledLayout/TiledLayout.vue?vue&type=style&index=0&id=d8ebab5e&scoped=true&lang=scss&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_TiledLayout_vue_vue_type_style_index_0_id_d8ebab5e_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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_TiledLayout_vue_vue_type_style_index_0_id_d8ebab5e_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_TiledLayout_vue_vue_type_style_index_0_id_d8ebab5e_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_TiledLayout_vue_vue_type_style_index_0_id_d8ebab5e_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/TiledLayout/TiledRows.vue?vue&type=style&index=0&id=20864d80&lang=scss&scoped=true&": -/*!***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/components/TiledLayout/TiledRows.vue?vue&type=style&index=0&id=20864d80&lang=scss&scoped=true& ***! - \***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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_TiledRows_vue_vue_type_style_index_0_id_20864d80_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../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!./TiledRows.vue?vue&type=style&index=0&id=20864d80&lang=scss&scoped=true& */ "./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!./src/components/TiledLayout/TiledRows.vue?vue&type=style&index=0&id=20864d80&lang=scss&scoped=true&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_TiledRows_vue_vue_type_style_index_0_id_20864d80_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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_TiledRows_vue_vue_type_style_index_0_id_20864d80_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_TiledRows_vue_vue_type_style_index_0_id_20864d80_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_TiledRows_vue_vue_type_style_index_0_id_20864d80_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./src/components/File.vue": -/*!*********************************!*\ - !*** ./src/components/File.vue ***! - \*********************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _File_vue_vue_type_template_id_ab80f8a8_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./File.vue?vue&type=template&id=ab80f8a8&scoped=true& */ "./src/components/File.vue?vue&type=template&id=ab80f8a8&scoped=true&"); -/* harmony import */ var _File_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./File.vue?vue&type=script&lang=js& */ "./src/components/File.vue?vue&type=script&lang=js&"); -/* harmony import */ var _File_vue_vue_type_style_index_0_id_ab80f8a8_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./File.vue?vue&type=style&index=0&id=ab80f8a8&lang=scss&scoped=true& */ "./src/components/File.vue?vue&type=style&index=0&id=ab80f8a8&lang=scss&scoped=true&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( - _File_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _File_vue_vue_type_template_id_ab80f8a8_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render, - _File_vue_vue_type_template_id_ab80f8a8_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - "ab80f8a8", - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/File.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/FilesListViewer.vue": -/*!********************************************!*\ - !*** ./src/components/FilesListViewer.vue ***! - \********************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _FilesListViewer_vue_vue_type_template_id_3ebf26b2_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./FilesListViewer.vue?vue&type=template&id=3ebf26b2&scoped=true& */ "./src/components/FilesListViewer.vue?vue&type=template&id=3ebf26b2&scoped=true&"); -/* harmony import */ var _FilesListViewer_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./FilesListViewer.vue?vue&type=script&lang=js& */ "./src/components/FilesListViewer.vue?vue&type=script&lang=js&"); -/* harmony import */ var _FilesListViewer_vue_vue_type_style_index_0_id_3ebf26b2_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true& */ "./src/components/FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( - _FilesListViewer_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _FilesListViewer_vue_vue_type_template_id_3ebf26b2_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render, - _FilesListViewer_vue_vue_type_template_id_3ebf26b2_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - "3ebf26b2", - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/FilesListViewer.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/TiledLayout/TiledLayout.vue": -/*!****************************************************!*\ - !*** ./src/components/TiledLayout/TiledLayout.vue ***! - \****************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _TiledLayout_vue_vue_type_template_id_d8ebab5e_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./TiledLayout.vue?vue&type=template&id=d8ebab5e&scoped=true& */ "./src/components/TiledLayout/TiledLayout.vue?vue&type=template&id=d8ebab5e&scoped=true&"); -/* harmony import */ var _TiledLayout_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./TiledLayout.vue?vue&type=script&lang=js& */ "./src/components/TiledLayout/TiledLayout.vue?vue&type=script&lang=js&"); -/* harmony import */ var _TiledLayout_vue_vue_type_style_index_0_id_d8ebab5e_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./TiledLayout.vue?vue&type=style&index=0&id=d8ebab5e&scoped=true&lang=scss& */ "./src/components/TiledLayout/TiledLayout.vue?vue&type=style&index=0&id=d8ebab5e&scoped=true&lang=scss&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( - _TiledLayout_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _TiledLayout_vue_vue_type_template_id_d8ebab5e_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render, - _TiledLayout_vue_vue_type_template_id_d8ebab5e_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - "d8ebab5e", - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/TiledLayout/TiledLayout.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/TiledLayout/TiledRows.vue": -/*!**************************************************!*\ - !*** ./src/components/TiledLayout/TiledRows.vue ***! - \**************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _TiledRows_vue_vue_type_template_id_20864d80_scoped_true_functional_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./TiledRows.vue?vue&type=template&id=20864d80&scoped=true&functional=true& */ "./src/components/TiledLayout/TiledRows.vue?vue&type=template&id=20864d80&scoped=true&functional=true&"); -/* harmony import */ var _TiledRows_vue_vue_type_style_index_0_id_20864d80_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./TiledRows.vue?vue&type=style&index=0&id=20864d80&lang=scss&scoped=true& */ "./src/components/TiledLayout/TiledRows.vue?vue&type=style&index=0&id=20864d80&lang=scss&scoped=true&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - -var script = {} -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])( - script, - _TiledRows_vue_vue_type_template_id_20864d80_scoped_true_functional_true___WEBPACK_IMPORTED_MODULE_0__.render, - _TiledRows_vue_vue_type_template_id_20864d80_scoped_true_functional_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - true, - null, - "20864d80", - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/TiledLayout/TiledRows.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/File.vue?vue&type=script&lang=js&": -/*!**********************************************************!*\ - !*** ./src/components/File.vue?vue&type=script&lang=js& ***! - \**********************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_File_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./File.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/File.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_File_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/components/FilesListViewer.vue?vue&type=script&lang=js&": -/*!*********************************************************************!*\ - !*** ./src/components/FilesListViewer.vue?vue&type=script&lang=js& ***! - \*********************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListViewer_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListViewer.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FilesListViewer.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListViewer_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/components/TiledLayout/TiledLayout.vue?vue&type=script&lang=js&": -/*!*****************************************************************************!*\ - !*** ./src/components/TiledLayout/TiledLayout.vue?vue&type=script&lang=js& ***! - \*****************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_TiledLayout_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TiledLayout.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/TiledLayout/TiledLayout.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_TiledLayout_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/components/File.vue?vue&type=style&index=0&id=ab80f8a8&lang=scss&scoped=true&": -/*!*******************************************************************************************!*\ - !*** ./src/components/File.vue?vue&type=style&index=0&id=ab80f8a8&lang=scss&scoped=true& ***! - \*******************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_File_vue_vue_type_style_index_0_id_ab80f8a8_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/style-loader/dist/cjs.js!../../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!./File.vue?vue&type=style&index=0&id=ab80f8a8&lang=scss&scoped=true& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/File.vue?vue&type=style&index=0&id=ab80f8a8&lang=scss&scoped=true&"); - - -/***/ }), - -/***/ "./src/components/FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true&": -/*!******************************************************************************************************!*\ - !*** ./src/components/FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true& ***! - \******************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_FilesListViewer_vue_vue_type_style_index_0_id_3ebf26b2_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/style-loader/dist/cjs.js!../../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!./FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true&"); - - -/***/ }), - -/***/ "./src/components/TiledLayout/TiledLayout.vue?vue&type=style&index=0&id=d8ebab5e&scoped=true&lang=scss&": -/*!**************************************************************************************************************!*\ - !*** ./src/components/TiledLayout/TiledLayout.vue?vue&type=style&index=0&id=d8ebab5e&scoped=true&lang=scss& ***! - \**************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_TiledLayout_vue_vue_type_style_index_0_id_d8ebab5e_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/style-loader/dist/cjs.js!../../../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!./TiledLayout.vue?vue&type=style&index=0&id=d8ebab5e&scoped=true&lang=scss& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/TiledLayout/TiledLayout.vue?vue&type=style&index=0&id=d8ebab5e&scoped=true&lang=scss&"); - - -/***/ }), - -/***/ "./src/components/TiledLayout/TiledRows.vue?vue&type=style&index=0&id=20864d80&lang=scss&scoped=true&": -/*!************************************************************************************************************!*\ - !*** ./src/components/TiledLayout/TiledRows.vue?vue&type=style&index=0&id=20864d80&lang=scss&scoped=true& ***! - \************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_TiledRows_vue_vue_type_style_index_0_id_20864d80_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/style-loader/dist/cjs.js!../../../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!./TiledRows.vue?vue&type=style&index=0&id=20864d80&lang=scss&scoped=true& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/TiledLayout/TiledRows.vue?vue&type=style&index=0&id=20864d80&lang=scss&scoped=true&"); - - -/***/ }), - -/***/ "./src/components/File.vue?vue&type=template&id=ab80f8a8&scoped=true&": -/*!****************************************************************************!*\ - !*** ./src/components/File.vue?vue&type=template&id=ab80f8a8&scoped=true& ***! - \****************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_File_vue_vue_type_template_id_ab80f8a8_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_File_vue_vue_type_template_id_ab80f8a8_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_File_vue_vue_type_template_id_ab80f8a8_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./File.vue?vue&type=template&id=ab80f8a8&scoped=true& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/File.vue?vue&type=template&id=ab80f8a8&scoped=true&"); - - -/***/ }), - -/***/ "./src/components/FilesListViewer.vue?vue&type=template&id=3ebf26b2&scoped=true&": -/*!***************************************************************************************!*\ - !*** ./src/components/FilesListViewer.vue?vue&type=template&id=3ebf26b2&scoped=true& ***! - \***************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListViewer_vue_vue_type_template_id_3ebf26b2_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListViewer_vue_vue_type_template_id_3ebf26b2_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListViewer_vue_vue_type_template_id_3ebf26b2_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListViewer.vue?vue&type=template&id=3ebf26b2&scoped=true& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FilesListViewer.vue?vue&type=template&id=3ebf26b2&scoped=true&"); - - -/***/ }), - -/***/ "./src/components/TiledLayout/TiledLayout.vue?vue&type=template&id=d8ebab5e&scoped=true&": -/*!***********************************************************************************************!*\ - !*** ./src/components/TiledLayout/TiledLayout.vue?vue&type=template&id=d8ebab5e&scoped=true& ***! - \***********************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_TiledLayout_vue_vue_type_template_id_d8ebab5e_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_TiledLayout_vue_vue_type_template_id_d8ebab5e_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_TiledLayout_vue_vue_type_template_id_d8ebab5e_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TiledLayout.vue?vue&type=template&id=d8ebab5e&scoped=true& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/TiledLayout/TiledLayout.vue?vue&type=template&id=d8ebab5e&scoped=true&"); - - -/***/ }), - -/***/ "./src/components/TiledLayout/TiledRows.vue?vue&type=template&id=20864d80&scoped=true&functional=true&": -/*!*************************************************************************************************************!*\ - !*** ./src/components/TiledLayout/TiledRows.vue?vue&type=template&id=20864d80&scoped=true&functional=true& ***! - \*************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_TiledRows_vue_vue_type_template_id_20864d80_scoped_true_functional_true___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_TiledRows_vue_vue_type_template_id_20864d80_scoped_true_functional_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_TiledRows_vue_vue_type_template_id_20864d80_scoped_true_functional_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TiledRows.vue?vue&type=template&id=20864d80&scoped=true&functional=true& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/TiledLayout/TiledRows.vue?vue&type=template&id=20864d80&scoped=true&functional=true&"); - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/File.vue?vue&type=template&id=ab80f8a8&scoped=true&": -/*!*******************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/File.vue?vue&type=template&id=ab80f8a8&scoped=true& ***! - \*******************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c( - "div", - { - staticClass: "file-container", - class: { selected: _vm.selected }, - attrs: { "data-test": "media" }, - }, - [ - _c( - "a", - { - staticClass: "file", - attrs: { href: _vm.davPath, "aria-label": _vm.ariaLabel }, - on: { - click: function ($event) { - $event.stopPropagation() - $event.preventDefault() - return _vm.emitClick.apply(null, arguments) - }, - }, - }, - [ - _c( - "div", - { staticClass: "file__images" }, - [ - _vm.file.mime.includes("video") - ? _c("VideoIcon", { - staticClass: "video-icon", - attrs: { size: 64 }, - }) - : _vm._e(), - _vm._v(" "), - _vm.visibility !== "none" && _vm.canLoad && !_vm.error - ? _c("img", { - key: _vm.file.basename + "-near", - ref: "imgNear", - attrs: { - src: _vm.srcNear, - alt: _vm.file.basename, - "aria-describedby": _vm.ariaDescription, - }, - on: { load: _vm.onLoad, error: _vm.onError }, - }) - : _vm._e(), - _vm._v(" "), - _vm.visibility === "visible" && _vm.canLoad && !_vm.error - ? _c("img", { - key: _vm.file.basename + "-visible", - ref: "imgVisible", - attrs: { - src: _vm.srcVisible, - alt: _vm.file.basename, - "aria-describedby": _vm.ariaDescription, - }, - on: { load: _vm.onLoad, error: _vm.onError }, - }) - : _vm._e(), - ], - 1 - ), - _vm._v(" "), - _c( - "p", - { - staticClass: "file__hidden-description", - class: { show: _vm.error }, - attrs: { id: _vm.ariaDescription }, - }, - [_vm._v(_vm._s(_vm.file.basename))] - ), - ] - ), - _vm._v(" "), - _vm.allowSelection - ? _c( - "NcCheckboxRadioSwitch", - { - staticClass: "selection-checkbox", - attrs: { checked: _vm.selected }, - on: { "update:checked": _vm.onToggle }, - }, - [ - _c("span", { staticClass: "input-label" }, [ - _vm._v( - _vm._s( - _vm.t("photos", "Select image {imageName}", { - imageName: _vm.file.basename, - }) - ) - ), - ]), - ] - ) - : _vm._e(), - _vm._v(" "), - _vm.file.favorite === 1 - ? _c("Star", { - staticClass: "favorite-state", - attrs: { - "aria-label": _vm.t("photos", "The file is in the favorites"), - }, - }) - : _vm._e(), - ], - 1 - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FilesListViewer.vue?vue&type=template&id=3ebf26b2&scoped=true&": -/*!******************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FilesListViewer.vue?vue&type=template&id=3ebf26b2&scoped=true& ***! - \******************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c( - "div", - { staticClass: "files-list-viewer" }, - [ - _vm.emptyMessage !== "" && _vm.items.length === 0 && !_vm.loading - ? _c( - "NcEmptyContent", - { - key: "emptycontent", - scopedSlots: _vm._u( - [ - { - key: "icon", - fn: function () { - return [ - _c("span", { - staticClass: "empty-content-illustration", - domProps: { innerHTML: _vm._s(_vm.EmptyBox) }, - }), - ] - }, - proxy: true, - }, - ], - null, - false, - 3410044941 - ), - }, - [_vm._v("\n\t\t" + _vm._s(_vm.emptyMessage) + "\n\t")] - ) - : _vm._e(), - _vm._v(" "), - _c("TiledLayout", { - attrs: { "base-height": _vm.baseHeight, items: _vm.items }, - scopedSlots: _vm._u([ - { - key: "default", - fn: function (ref) { - var rows = ref.rows - return _c( - "VirtualScrolling", - { - attrs: { - "use-window": _vm.useWindow, - "container-element": _vm.containerElement, - rows: rows, - "scroll-to-key": _vm.scrollToSection, - }, - on: { "need-content": _vm.needContent }, - scopedSlots: _vm._u([ - { - key: "default", - fn: function (ref) { - var renderedRows = ref.renderedRows - return _c( - "ul", - {}, - _vm._l(renderedRows, function (row) { - return _c( - "div", - { - key: row.key, - staticClass: "tiled-row", - class: { - "files-list-viewer__section-header": - row.items[0].sectionHeader, - }, - style: { height: row.height + "px" }, - }, - _vm._l(row.items, function (item) { - return _c( - "li", - { - key: item.id, - style: { - width: item.ratio - ? row.height * item.ratio + "px" - : "100%", - height: row.height + "px", - }, - }, - [ - _vm.showPlaceholders - ? _c("div", { - staticClass: - "files-list-viewer__placeholder", - }) - : _vm._t("default", null, { - file: item, - visibility: row.visibility, - }), - ], - 2 - ) - }), - 0 - ) - }), - 0 - ) - }, - }, - ]), - }, - [ - _vm._v(" "), - _vm.loading && !_vm.showPlaceholders - ? _c("NcLoadingIcon", { - staticClass: "files-list-viewer__loader", - attrs: { slot: "loader" }, - slot: "loader", - }) - : _vm._e(), - ], - 1 - ) - }, - }, - ]), - }), - ], - 1 - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/TiledLayout/TiledLayout.vue?vue&type=template&id=d8ebab5e&scoped=true&": -/*!**************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/TiledLayout/TiledLayout.vue?vue&type=template&id=d8ebab5e&scoped=true& ***! - \**************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c( - "div", - { ref: "tiledLayoutContainer", staticClass: "tiled-container" }, - [ - _vm._t( - "default", - function () { - return [_c("TiledRows", { attrs: { rows: _vm.rows } })] - }, - { rows: _vm.rows } - ), - ], - 2 - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/TiledLayout/TiledRows.vue?vue&type=template&id=20864d80&scoped=true&functional=true&": -/*!****************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/TiledLayout/TiledRows.vue?vue&type=template&id=20864d80&scoped=true&functional=true& ***! - \****************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function (_h, _vm) { - var _c = _vm._c - return _c( - "ul", - _vm._l(_vm.props.rows, function (row) { - return _c( - "div", - { - key: row.key, - staticClass: "tiled-row", - style: { height: row.height + "px" }, - }, - _vm._l(row.items, function (item) { - return _c( - "li", - { - key: item.id, - style: { - width: item.ratio ? row.height * item.ratio + "px" : "100%", - height: row.height + "px", - }, - }, - [_vm._t("default", null, { row: row, item: item })], - 2 - ) - }), - 0 - ) - }), - 0 - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./src/assets/Illustrations/empty.svg": -/*!********************************************!*\ - !*** ./src/assets/Illustrations/empty.svg ***! - \********************************************/ -/***/ ((module) => { - -module.exports = "empty"; - -/***/ }) - -}]); -//# sourceMappingURL=photos-src_mixins_FilesSelectionMixin_js-src_components_File_vue-src_components_FilesListViewer_vue.js.map?v=cd6c332ab4fe0f95b7fb \ No newline at end of file diff --git a/js/photos-src_mixins_FilesSelectionMixin_js-src_components_File_vue-src_components_FilesListViewer_vue.js.map b/js/photos-src_mixins_FilesSelectionMixin_js-src_components_File_vue-src_components_FilesListViewer_vue.js.map deleted file mode 100644 index bd77b14ff..000000000 --- a/js/photos-src_mixins_FilesSelectionMixin_js-src_components_File_vue-src_components_FilesListViewer_vue.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-src_mixins_FilesSelectionMixin_js-src_components_File_vue-src_components_FilesListViewer_vue.js?v=cd6c332ab4fe0f95b7fb","mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;ACvOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;ACnOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;ACvFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;AC/DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;ACvIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;;;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;;;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;ACtCA;;;;;;;;;;;;;;;ACAA;;;;;;;;;;;;;;;ACAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ASAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;AClHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;ACnIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;ACrBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sources":["webpack:///photos/src/components/File.vue?vue&type=script&lang=js&","webpack:///photos/src/components/FilesListViewer.vue?vue&type=script&lang=js&","webpack:///photos/src/components/TiledLayout/TiledLayout.vue?vue&type=script&lang=js&","webpack:///photos/src/mixins/FilesSelectionMixin.js","webpack:///photos/src/services/TiledLayout.js","webpack:///photos/src/components/File.vue?vue&type=style&index=0&id=ab80f8a8&lang=scss&scoped=true&","webpack:///photos/src/components/FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true&","webpack:///photos/src/components/TiledLayout/TiledLayout.vue?vue&type=style&index=0&id=d8ebab5e&scoped=true&lang=scss&","webpack:///photos/src/components/TiledLayout/TiledRows.vue?vue&type=style&index=0&id=20864d80&lang=scss&scoped=true&","webpack://photos/./src/components/File.vue?737e","webpack://photos/./src/components/FilesListViewer.vue?9de2","webpack://photos/./src/components/TiledLayout/TiledLayout.vue?2d58","webpack://photos/./src/components/TiledLayout/TiledRows.vue?80a9","webpack:///photos/src/components/File.vue","webpack:///photos/src/components/FilesListViewer.vue","webpack:///photos/src/components/TiledLayout/TiledLayout.vue","webpack:///photos/src/components/TiledLayout/TiledRows.vue","webpack://photos/./src/components/File.vue?5012","webpack://photos/./src/components/FilesListViewer.vue?6af5","webpack://photos/./src/components/TiledLayout/TiledLayout.vue?7e8d","webpack://photos/./src/components/File.vue?147a","webpack://photos/./src/components/FilesListViewer.vue?2e22","webpack://photos/./src/components/TiledLayout/TiledLayout.vue?76c8","webpack://photos/./src/components/TiledLayout/TiledRows.vue?a04f","webpack:///photos/src/components/File.vue?vue&type=template&id=ab80f8a8&scoped=true&","webpack:///photos/src/components/FilesListViewer.vue?vue&type=template&id=3ebf26b2&scoped=true&","webpack:///photos/src/components/TiledLayout/TiledLayout.vue?vue&type=template&id=d8ebab5e&scoped=true&","webpack:///photos/src/components/TiledLayout/TiledRows.vue?vue&type=template&id=20864d80&scoped=true&functional=true&","webpack://photos/./src/components/File.vue?87a8","webpack://photos/./src/components/FilesListViewer.vue?1df8","webpack://photos/./src/components/TiledLayout/TiledLayout.vue?dbe4","webpack://photos/./src/components/TiledLayout/TiledRows.vue?b79e"],"sourcesContent":["//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport Star from 'vue-material-design-icons/Star';\nimport VideoIcon from 'vue-material-design-icons/Video.vue';\nimport { generateRemoteUrl, generateUrl } from '@nextcloud/router';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport { NcCheckboxRadioSwitch } from '@nextcloud/vue';\nimport UserConfig from '../mixins/UserConfig.js';\nimport Semaphore from '../utils/semaphoreWithPriority.js';\nexport default {\n name: 'File',\n components: {\n NcCheckboxRadioSwitch,\n Star,\n VideoIcon\n },\n mixins: [UserConfig],\n inheritAttrs: false,\n props: {\n file: {\n type: Object,\n required: true\n },\n selected: {\n type: Boolean,\n required: true\n },\n allowSelection: {\n type: Boolean,\n default: true\n },\n visibility: {\n type: String,\n required: true\n },\n semaphore: {\n type: Semaphore,\n required: true\n }\n },\n\n data() {\n return {\n loaded: false,\n error: false,\n canLoad: false,\n semaphoreSymbol: null,\n isDestroyed: false\n };\n },\n\n computed: {\n /** @return {string} */\n davPath() {\n return generateRemoteUrl(`dav/files/${getCurrentUser().uid}`) + this.file.filename;\n },\n\n /** @return {string} */\n ariaDescription() {\n return `image-description-${this.file.fileid}`;\n },\n\n /** @return {string} */\n ariaLabel() {\n return t('photos', 'Open the full size \"{name}\" image', {\n name: this.file.basename\n });\n },\n\n /** @return {boolean} */\n isImage() {\n return this.file.mime.startsWith('image');\n },\n\n /** @return {string} */\n decodedEtag() {\n return this.file.etag.replace('"', '').replace('"', '');\n },\n\n /** @return {string} */\n srcVisible() {\n return this.getItemURL(512);\n },\n\n /** @return {string} */\n srcNear() {\n return this.getItemURL(64);\n }\n\n },\n\n mounted() {\n // Don't render the component right away as it is useless if the user is only scrolling\n setTimeout(async () => {\n this.semaphoreSymbol = await this.semaphore.acquire(() => {\n switch (this.visibility) {\n case 'visible':\n return 1;\n\n case 'near':\n return 2;\n\n default:\n return 3;\n }\n }, this.file.fileid);\n this.canLoad = true;\n\n if (this.visibility === 'none' || this.isDestroyed) {\n this.releaseSemaphore();\n }\n }, 250);\n },\n\n beforeDestroy() {\n this.isDestroyed = true;\n this.releaseSemaphore(); // cancel any pending load\n\n if (this.$refs.imgNear !== undefined) {\n this.$refs.imgNear.src = '';\n }\n\n if (this.$refs.srcVisible !== undefined) {\n this.$refs.srcVisible.src = '';\n }\n },\n\n methods: {\n emitClick() {\n this.$emit('click', this.file.fileid);\n },\n\n /** When the image is fully loaded by browser we remove the placeholder */\n onLoad() {\n this.loaded = true;\n this.releaseSemaphore();\n },\n\n onError() {\n this.error = true;\n this.releaseSemaphore();\n },\n\n onToggle(value) {\n this.$emit('select-toggled', {\n id: this.file.fileid,\n value\n });\n },\n\n getItemURL(size) {\n return generateUrl(`/apps/photos/api/v1/preview/${this.file.fileid}?x=${size}&y=${size}`);\n },\n\n releaseSemaphore() {\n if (this.semaphoreSymbol === null) {\n return;\n }\n\n this.semaphore.release(this.semaphoreSymbol);\n this.semaphoreSymbol = null;\n }\n\n }\n};","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport { mapGetters } from 'vuex';\nimport { NcEmptyContent, NcLoadingIcon } from '@nextcloud/vue';\nimport TiledLayout from '../components/TiledLayout/TiledLayout.vue';\nimport VirtualScrolling from '../components/VirtualScrolling.vue';\nimport EmptyBox from '../assets/Illustrations/empty.svg';\nexport default {\n name: 'FilesListViewer',\n components: {\n NcEmptyContent,\n NcLoadingIcon,\n TiledLayout,\n VirtualScrolling\n },\n props: {\n // Array of file ids that should be rendered.\n fileIds: {\n type: Array,\n default: undefined\n },\n // An object mapping a list of section to a list of fileIds.\n fileIdsBySection: {\n type: Object,\n default: undefined\n },\n // The list of sorted sections.\n sections: {\n type: Array,\n default: undefined\n },\n // Whether we should display a loading indicator.\n loading: {\n type: Boolean,\n default: false\n },\n // Message to display when there is no files.\n emptyMessage: {\n type: String,\n default: ''\n },\n // The base height to forward to TileLayout.\n baseHeight: {\n type: Number,\n default: 200\n },\n // The height to use for section headers.\n sectionHeaderHeight: {\n type: Number,\n default: 75\n },\n // Instruct VirtualScrolling to scroll to the given section id.\n scrollToSection: {\n type: String,\n default: ''\n },\n // The containerElement props to forward to TileLayout.\n containerElement: {\n type: HTMLElement,\n default: null\n },\n // The useWindow props to forward to TileLayout.\n useWindow: {\n type: Boolean,\n default: false\n }\n },\n\n data() {\n return {\n EmptyBox,\n placeholderFiles: Array(20).fill(0).map((_, index) => {\n const height = 200;\n const width = height * (1 + Math.random() * 2);\n return {\n id: index,\n width,\n height,\n ratio: width / height\n };\n })\n };\n },\n\n computed: { ...mapGetters(['files']),\n\n /**\n * @return {object[]} The list of items to pass to TiledLayout.\n */\n fileIdsToItems() {\n if (this.fileIds === undefined) {\n return [];\n }\n\n return this.fileIds.map(this.mapFileToItem);\n },\n\n /**\n * @return {object[]} The list of items separated by sections to pass to TiledLayout.\n */\n sectionsToItems() {\n if (this.sections === undefined) {\n return [];\n }\n\n return this.sections.flatMap(sectionId => {\n return [{\n id: sectionId,\n sectionHeader: true,\n height: this.sectionHeaderHeight\n }, ...this.fileIdsBySection[sectionId].map(this.mapFileToItem)];\n });\n },\n\n /**\n * @return {boolean} The list of items to pass to TiledLayout.\n */\n showPlaceholders() {\n return this.loading && (this.fileIds?.length === 0 || this.sections?.length === 0);\n },\n\n /**\n * @return {object[]} The list of items to pass to TiledLayout.\n */\n items() {\n if (this.fileIds !== undefined) {\n if (this.showPlaceholders) {\n return this.placeholderFiles;\n }\n\n return this.fileIdsToItems;\n }\n\n if (this.sections !== undefined) {\n if (this.showPlaceholders) {\n return [{\n height: 75,\n sectionHeader: true\n }, ...this.placeholderFiles];\n }\n\n return this.sectionsToItems;\n }\n\n return [];\n },\n\n showLoader() {\n return this.loading && (this.fileIds?.length !== 0 || this.sections?.length !== 0);\n }\n\n },\n methods: {\n // Ask the parent for more content.\n needContent() {\n this.$emit('need-content');\n },\n\n mapFileToItem(fileId) {\n const file = this.files[fileId];\n return {\n id: file.fileid,\n width: file.fileMetadataSizeParsed.width,\n height: file.fileMetadataSizeParsed.height,\n ratio: file.fileMetadataSizeParsed.width / file.fileMetadataSizeParsed.height\n };\n }\n\n }\n};","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport logger from '../../services/logger.js';\nimport { splitItemsInRows } from '../../services/TiledLayout.js';\nimport TiledRows from './TiledRows.vue';\nexport default {\n name: 'TiledLayout',\n components: {\n TiledRows\n },\n props: {\n items: {\n type: Array,\n required: true\n },\n baseHeight: {\n type: Number,\n default: 200\n }\n },\n\n data() {\n return {\n containerWidth: 0,\n\n /** @type {ResizeObserver} */\n resizeObserver: null\n };\n },\n\n computed: {\n /** @return {import('../services/TiledLayout.js').TiledRow[]} */\n rows() {\n logger.debug('[TiledLayout] Computing rows', this.items);\n return splitItemsInRows(this.items, this.containerWidth, this.baseHeight);\n }\n\n },\n\n mounted() {\n this.resizeObserver = new ResizeObserver(entries => {\n for (const entry of entries) {\n const cr = entry.contentRect;\n\n if (entry.target.classList.contains('tiled-container')) {\n this.containerWidth = cr.width;\n }\n }\n });\n this.resizeObserver.observe(this.$refs.tiledLayoutContainer);\n },\n\n beforeDestroy() {\n this.resizeObserver.disconnect();\n }\n\n};","/**\n * @copyright Copyright (c) 2019 Louis Chemineau \n *\n * @author Louis Chemineau \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 .\n *\n */\nexport default {\n name: 'FilesSelectionMixin',\n\n data() {\n return {\n /** @type {Object} */\n selection: {}\n };\n },\n\n methods: {\n onFileSelectToggle(_ref) {\n let {\n id,\n value\n } = _ref;\n this.$set(this.selection, id, value);\n },\n\n /**\n * @param {string[]} filesIds - The ids of the files to uncheck.\n */\n onUncheckFiles(filesIds) {\n filesIds.forEach((\n /** @type {string} */\n filesId) => this.$set(this.selection, filesId, false));\n },\n\n resetSelection() {\n this.selection = {};\n }\n\n },\n computed: {\n /**\n * @return {string[]}\n */\n selectedFileIds() {\n return Object.keys(this.selection).filter(fileId => this.selection[fileId]);\n }\n\n }\n};","/**\n * @copyright Copyright (c) 2022 Louis Chemineau \n *\n * @author Louis Chemineau \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 .\n *\n */\n\n/**\n * @typedef {object} TiledItem\n * @property {string} id\n * @property {number} [width] Real width of the item.\n * @property {number} height Real height of the item.\n * @property {number} [ratio] The aspect ratio of the item.\n * @property {boolean} [sectionHeader] Whether this row is a section header.\n */\n\n/**\n * @typedef {object} TiledRow\n * @property {TiledItem[]} items -\n * @property {number} height -\n * @property {string} key -\n */\n\n/**\n * Split items in rows of equal width.\n * The last row will not be forced to match containerWidth.\n *\n * @param {TiledItem[]} items The list of item to split in row of equal width.\n * @param {number} containerWidth The width of a row.\n * @param {number} baseHeight The base height of the rows.\n * @return {TiledRow[]}\n */\nexport function splitItemsInRows(items, containerWidth) {\n let baseHeight = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 200;\n\n if (containerWidth === 0) {\n return [];\n }\n\n const rows = [];\n let rowNumber = 0;\n let currentItem = 0;\n\n while (currentItem < items.length) {\n /** @type { TiledItem[] } */\n const rowItems = []; // Fill the row with new items as long as the width is less than containerWidth.\n\n do {\n // @ts-ignore - We know that items.shift() is not undefined as we always check that items.length > 0.\n rowItems.push(items[currentItem++]);\n } while (currentItem < items.length && !items[currentItem - 1].sectionHeader && !items[currentItem].sectionHeader && computeRowWidth([...rowItems, items[currentItem]], baseHeight) <= containerWidth);\n\n rows[rowNumber] = {\n items: rowItems,\n height: computeRowHeight(rowItems, containerWidth, items.length === currentItem || items[currentItem].sectionHeader === true, baseHeight),\n // Key to help vue to keep track of the row in VirtualScrolling.\n key: rowItems.map(item => item.id).join('-')\n };\n rowNumber += 1;\n }\n\n return rows;\n}\n/**\n *\n * @param {TiledItem[]} items The list of items in the row.\n * @param {number} baseHeight The base height of the rows.\n * @return {number} The width of the row\n */\n\nfunction computeRowWidth(items, baseHeight) {\n return items.map(item => baseHeight * item.ratio).reduce((sum, itemWidth) => sum + itemWidth);\n}\n/**\n * Compute the row height based on its items and on the container's width.\n *\n * Math time !\n * With Rn the aspect ratio of item n\n * Wn the width of item n\n * Hn the height of item n\n * Wc the width of the container\n * Hr the height of the row\n * For n items we want: Wc = W1 + W2 + ... + Wn\n * We know Rn = Wn / Hn\n * So Wn = Rn * Hn\n * So Wc = (R1 * H1) + (R2 * H2) + ... + (Rn * Hn)\n * But we also want Hr === H1 === H2 === ... === Hn\n * So Wc = (R1 * Hr) + (R2 * Hr) + ... + (Rn * Hr)\n * So Wc = Hr * (R1 + R2 + ... + Rn)\n * So Hr = Wc / (R1 + R2 + ... + Rn)\n *\n * @param {TiledItem[]} items The list of items in the row.\n * @param {number} containerWidth The width of the row.\n * @param {boolean} isLastRow Whether we are computing the height for the last row.\n * @param {number} baseHeight The base height of the rows.\n * @return {number} The height of the row\n */\n\n\nfunction computeRowHeight(items, containerWidth, isLastRow, baseHeight) {\n // Exception 1: there is only one item and its width it is a sectionHeader, meaning take the full width.\n if (items.length === 1 && items[0].sectionHeader) {\n return items[0].height;\n }\n\n const sumOfItemsRatio = items.map(item => item.ratio).reduce((sum, itemRatio) => sum + itemRatio);\n let rowHeight = containerWidth / sumOfItemsRatio; // Exception 2: there is only one item which is larger than containerWidth.\n // Limit its height so that itemWidth === containerWidth\n\n if (items.length === 1 && items[0].width > containerWidth) {\n rowHeight = containerWidth / items[0].ratio;\n } // Exception 3: we reached the last row.\n // Force the items width to match containerWidth, and limit their heigh to baseHeight + 20.\n\n\n if (isLastRow) {\n rowHeight = Math.min(baseHeight + 20, rowHeight);\n }\n\n return rowHeight;\n}","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".file-container[data-v-ab80f8a8] {\\n background: var(--color-primary-light);\\n position: relative;\\n height: 100%;\\n width: 100%;\\n border: 2px solid var(--color-main-background);\\n box-sizing: border-box;\\n}\\n.file-container.selected[data-v-ab80f8a8]::after, .file-container[data-v-ab80f8a8]:focus-within::after {\\n position: absolute;\\n top: 0;\\n left: 0;\\n z-index: 2;\\n width: 100%;\\n height: 100%;\\n content: \\\"\\\";\\n outline: var(--color-primary) solid 4px;\\n outline-offset: -4px;\\n pointer-events: none;\\n}\\n.file-container .file[data-v-ab80f8a8] {\\n width: 100%;\\n height: 100%;\\n box-sizing: border-box;\\n outline: none;\\n}\\n.file-container .file__images[data-v-ab80f8a8] {\\n display: contents;\\n}\\n.file-container .file__images .video-icon[data-v-ab80f8a8] {\\n position: absolute;\\n top: 0px;\\n right: 0px;\\n width: 100%;\\n height: 100%;\\n z-index: 1;\\n opacity: 0.8;\\n}\\n.file-container .file__images .video-icon[data-v-ab80f8a8] .material-design-icon__svg {\\n fill: var(--color-main-background);\\n}\\n.file-container .file__images img[data-v-ab80f8a8] {\\n width: 100%;\\n height: 100%;\\n object-fit: cover;\\n position: absolute;\\n color: transparent;\\n}\\n.file-container .file__images .loading-overlay[data-v-ab80f8a8] {\\n position: absolute;\\n height: 100%;\\n width: 100%;\\n display: flex;\\n align-content: center;\\n align-items: center;\\n justify-content: center;\\n}\\n.file-container .file__images .loading-overlay svg[data-v-ab80f8a8] {\\n width: 70%;\\n height: 70%;\\n}\\n.file-container .file__hidden-description[data-v-ab80f8a8] {\\n position: absolute;\\n left: -10000px;\\n top: -10000px;\\n width: 1px;\\n height: 1px;\\n overflow: hidden;\\n}\\n.file-container .file__hidden-description.show[data-v-ab80f8a8] {\\n position: initial;\\n width: fit-content;\\n height: fit-content;\\n}\\n.file-container:hover .selection-checkbox[data-v-ab80f8a8], .file-container.selected .selection-checkbox[data-v-ab80f8a8], .file-container:focus-within .selection-checkbox[data-v-ab80f8a8] {\\n display: flex;\\n}\\n.file-container:hover .favorite-state[data-v-ab80f8a8], .file-container.selected .favorite-state[data-v-ab80f8a8], .file-container:focus-within .favorite-state[data-v-ab80f8a8] {\\n display: none;\\n}\\n.file-container .selection-checkbox[data-v-ab80f8a8] {\\n display: none;\\n position: absolute;\\n top: 8px;\\n right: min(22px, 50% - 7px);\\n z-index: 1;\\n width: fit-content;\\n}\\n.file-container .selection-checkbox[data-v-ab80f8a8] .checkbox-radio-switch__label {\\n padding: 10px;\\n box-sizing: border-box;\\n}\\n.file-container .selection-checkbox[data-v-ab80f8a8] .checkbox-radio-switch__label::after {\\n content: \\\"\\\";\\n background: var(--color-primary-light);\\n width: 16px;\\n height: 16px;\\n position: absolute;\\n left: 14px;\\n z-index: -1;\\n}\\n.file-container .selection-checkbox[data-v-ab80f8a8] .checkbox-radio-switch__label .checkbox-radio-switch__icon {\\n margin: 0;\\n}\\n.file-container .selection-checkbox .input-label[data-v-ab80f8a8] {\\n position: fixed;\\n z-index: -1;\\n top: -5000px;\\n left: -5000px;\\n}\\n.file-container .favorite-state[data-v-ab80f8a8] {\\n position: absolute;\\n top: 2px;\\n right: min(2px, 50% - 7px);\\n}\\n.file-container .favorite-state[data-v-ab80f8a8] .material-design-icon__svg {\\n fill: #FC0;\\n}\\n.file-container .favorite-state[data-v-ab80f8a8] .material-design-icon__svg path {\\n stroke: var(--color-primary-light);\\n stroke-width: 1px;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".files-list-viewer[data-v-3ebf26b2] {\\n height: 100%;\\n position: relative;\\n}\\n.files-list-viewer[data-v-3ebf26b2] .empty-content__icon {\\n width: 200px;\\n height: 200px;\\n}\\n.files-list-viewer[data-v-3ebf26b2] .empty-content__icon .empty-content-illustration svg {\\n width: 200px;\\n height: 200px;\\n}\\n.files-list-viewer__placeholder[data-v-3ebf26b2] {\\n background: var(--color-primary-light);\\n width: 100%;\\n height: 100%;\\n border: 2px solid var(--color-main-background);\\n}\\n.files-list-viewer .tiled-row[data-v-3ebf26b2] {\\n display: flex;\\n}\\n.files-list-viewer__section-header[data-v-3ebf26b2] {\\n position: sticky;\\n top: 0;\\n z-index: 3;\\n background: var(--color-main-background);\\n}\\n.files-list-viewer__loader[data-v-3ebf26b2] {\\n margin: 50px 0;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".tiled-container[data-v-d8ebab5e] {\\n height: 100%;\\n}\\n.tiled-container .tiled-row[data-v-d8ebab5e] {\\n display: flex;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".tiled-row[data-v-20864d80] {\\n display: flex;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./File.vue?vue&type=style&index=0&id=ab80f8a8&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./File.vue?vue&type=style&index=0&id=ab80f8a8&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","\n import API from \"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./TiledLayout.vue?vue&type=style&index=0&id=d8ebab5e&scoped=true&lang=scss&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./TiledLayout.vue?vue&type=style&index=0&id=d8ebab5e&scoped=true&lang=scss&\";\n export default content && content.locals ? content.locals : undefined;\n","\n import API from \"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./TiledRows.vue?vue&type=style&index=0&id=20864d80&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./TiledRows.vue?vue&type=style&index=0&id=20864d80&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./File.vue?vue&type=template&id=ab80f8a8&scoped=true&\"\nimport script from \"./File.vue?vue&type=script&lang=js&\"\nexport * from \"./File.vue?vue&type=script&lang=js&\"\nimport style0 from \"./File.vue?vue&type=style&index=0&id=ab80f8a8&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 \"ab80f8a8\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/louis/workspace/nextcloud/apps/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('ab80f8a8')) {\n api.createRecord('ab80f8a8', component.options)\n } else {\n api.reload('ab80f8a8', component.options)\n }\n module.hot.accept(\"./File.vue?vue&type=template&id=ab80f8a8&scoped=true&\", function () {\n api.rerender('ab80f8a8', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/File.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./FilesListViewer.vue?vue&type=template&id=3ebf26b2&scoped=true&\"\nimport script from \"./FilesListViewer.vue?vue&type=script&lang=js&\"\nexport * from \"./FilesListViewer.vue?vue&type=script&lang=js&\"\nimport style0 from \"./FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&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 \"3ebf26b2\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/louis/workspace/nextcloud/apps/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('3ebf26b2')) {\n api.createRecord('3ebf26b2', component.options)\n } else {\n api.reload('3ebf26b2', component.options)\n }\n module.hot.accept(\"./FilesListViewer.vue?vue&type=template&id=3ebf26b2&scoped=true&\", function () {\n api.rerender('3ebf26b2', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/FilesListViewer.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./TiledLayout.vue?vue&type=template&id=d8ebab5e&scoped=true&\"\nimport script from \"./TiledLayout.vue?vue&type=script&lang=js&\"\nexport * from \"./TiledLayout.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TiledLayout.vue?vue&type=style&index=0&id=d8ebab5e&scoped=true&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 \"d8ebab5e\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/louis/workspace/nextcloud/apps/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('d8ebab5e')) {\n api.createRecord('d8ebab5e', component.options)\n } else {\n api.reload('d8ebab5e', component.options)\n }\n module.hot.accept(\"./TiledLayout.vue?vue&type=template&id=d8ebab5e&scoped=true&\", function () {\n api.rerender('d8ebab5e', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/TiledLayout/TiledLayout.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./TiledRows.vue?vue&type=template&id=20864d80&scoped=true&functional=true&\"\nvar script = {}\nimport style0 from \"./TiledRows.vue?vue&type=style&index=0&id=20864d80&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 true,\n null,\n \"20864d80\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/louis/workspace/nextcloud/apps/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('20864d80')) {\n api.createRecord('20864d80', component.options)\n } else {\n api.rerender('20864d80', component.options)\n }\n module.hot.accept(\"./TiledRows.vue?vue&type=template&id=20864d80&scoped=true&functional=true&\", function () {\n api.rerender('20864d80', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/TiledLayout/TiledRows.vue\"\nexport default component.exports","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./File.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!./File.vue?vue&type=script&lang=js&\"","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListViewer.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!./FilesListViewer.vue?vue&type=script&lang=js&\"","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TiledLayout.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!./TiledLayout.vue?vue&type=script&lang=js&\"","export * from \"-!../../node_modules/style-loader/dist/cjs.js!../../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!./File.vue?vue&type=style&index=0&id=ab80f8a8&lang=scss&scoped=true&\"","export * from \"-!../../node_modules/style-loader/dist/cjs.js!../../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!./FilesListViewer.vue?vue&type=style&index=0&id=3ebf26b2&lang=scss&scoped=true&\"","export * from \"-!../../../node_modules/style-loader/dist/cjs.js!../../../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!./TiledLayout.vue?vue&type=style&index=0&id=d8ebab5e&scoped=true&lang=scss&\"","export * from \"-!../../../node_modules/style-loader/dist/cjs.js!../../../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!./TiledRows.vue?vue&type=style&index=0&id=20864d80&lang=scss&scoped=true&\"","export * from \"-!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./File.vue?vue&type=template&id=ab80f8a8&scoped=true&\"","export * from \"-!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListViewer.vue?vue&type=template&id=3ebf26b2&scoped=true&\"","export * from \"-!../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TiledLayout.vue?vue&type=template&id=d8ebab5e&scoped=true&\"","export * from \"-!../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TiledRows.vue?vue&type=template&id=20864d80&scoped=true&functional=true&\"","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n {\n staticClass: \"file-container\",\n class: { selected: _vm.selected },\n attrs: { \"data-test\": \"media\" },\n },\n [\n _c(\n \"a\",\n {\n staticClass: \"file\",\n attrs: { href: _vm.davPath, \"aria-label\": _vm.ariaLabel },\n on: {\n click: function ($event) {\n $event.stopPropagation()\n $event.preventDefault()\n return _vm.emitClick.apply(null, arguments)\n },\n },\n },\n [\n _c(\n \"div\",\n { staticClass: \"file__images\" },\n [\n _vm.file.mime.includes(\"video\")\n ? _c(\"VideoIcon\", {\n staticClass: \"video-icon\",\n attrs: { size: 64 },\n })\n : _vm._e(),\n _vm._v(\" \"),\n _vm.visibility !== \"none\" && _vm.canLoad && !_vm.error\n ? _c(\"img\", {\n key: _vm.file.basename + \"-near\",\n ref: \"imgNear\",\n attrs: {\n src: _vm.srcNear,\n alt: _vm.file.basename,\n \"aria-describedby\": _vm.ariaDescription,\n },\n on: { load: _vm.onLoad, error: _vm.onError },\n })\n : _vm._e(),\n _vm._v(\" \"),\n _vm.visibility === \"visible\" && _vm.canLoad && !_vm.error\n ? _c(\"img\", {\n key: _vm.file.basename + \"-visible\",\n ref: \"imgVisible\",\n attrs: {\n src: _vm.srcVisible,\n alt: _vm.file.basename,\n \"aria-describedby\": _vm.ariaDescription,\n },\n on: { load: _vm.onLoad, error: _vm.onError },\n })\n : _vm._e(),\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"p\",\n {\n staticClass: \"file__hidden-description\",\n class: { show: _vm.error },\n attrs: { id: _vm.ariaDescription },\n },\n [_vm._v(_vm._s(_vm.file.basename))]\n ),\n ]\n ),\n _vm._v(\" \"),\n _vm.allowSelection\n ? _c(\n \"NcCheckboxRadioSwitch\",\n {\n staticClass: \"selection-checkbox\",\n attrs: { checked: _vm.selected },\n on: { \"update:checked\": _vm.onToggle },\n },\n [\n _c(\"span\", { staticClass: \"input-label\" }, [\n _vm._v(\n _vm._s(\n _vm.t(\"photos\", \"Select image {imageName}\", {\n imageName: _vm.file.basename,\n })\n )\n ),\n ]),\n ]\n )\n : _vm._e(),\n _vm._v(\" \"),\n _vm.file.favorite === 1\n ? _c(\"Star\", {\n staticClass: \"favorite-state\",\n attrs: {\n \"aria-label\": _vm.t(\"photos\", \"The file is in the favorites\"),\n },\n })\n : _vm._e(),\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { staticClass: \"files-list-viewer\" },\n [\n _vm.emptyMessage !== \"\" && _vm.items.length === 0 && !_vm.loading\n ? _c(\n \"NcEmptyContent\",\n {\n key: \"emptycontent\",\n scopedSlots: _vm._u(\n [\n {\n key: \"icon\",\n fn: function () {\n return [\n _c(\"span\", {\n staticClass: \"empty-content-illustration\",\n domProps: { innerHTML: _vm._s(_vm.EmptyBox) },\n }),\n ]\n },\n proxy: true,\n },\n ],\n null,\n false,\n 3410044941\n ),\n },\n [_vm._v(\"\\n\\t\\t\" + _vm._s(_vm.emptyMessage) + \"\\n\\t\")]\n )\n : _vm._e(),\n _vm._v(\" \"),\n _c(\"TiledLayout\", {\n attrs: { \"base-height\": _vm.baseHeight, items: _vm.items },\n scopedSlots: _vm._u([\n {\n key: \"default\",\n fn: function (ref) {\n var rows = ref.rows\n return _c(\n \"VirtualScrolling\",\n {\n attrs: {\n \"use-window\": _vm.useWindow,\n \"container-element\": _vm.containerElement,\n rows: rows,\n \"scroll-to-key\": _vm.scrollToSection,\n },\n on: { \"need-content\": _vm.needContent },\n scopedSlots: _vm._u([\n {\n key: \"default\",\n fn: function (ref) {\n var renderedRows = ref.renderedRows\n return _c(\n \"ul\",\n {},\n _vm._l(renderedRows, function (row) {\n return _c(\n \"div\",\n {\n key: row.key,\n staticClass: \"tiled-row\",\n class: {\n \"files-list-viewer__section-header\":\n row.items[0].sectionHeader,\n },\n style: { height: row.height + \"px\" },\n },\n _vm._l(row.items, function (item) {\n return _c(\n \"li\",\n {\n key: item.id,\n style: {\n width: item.ratio\n ? row.height * item.ratio + \"px\"\n : \"100%\",\n height: row.height + \"px\",\n },\n },\n [\n _vm.showPlaceholders\n ? _c(\"div\", {\n staticClass:\n \"files-list-viewer__placeholder\",\n })\n : _vm._t(\"default\", null, {\n file: item,\n visibility: row.visibility,\n }),\n ],\n 2\n )\n }),\n 0\n )\n }),\n 0\n )\n },\n },\n ]),\n },\n [\n _vm._v(\" \"),\n _vm.loading && !_vm.showPlaceholders\n ? _c(\"NcLoadingIcon\", {\n staticClass: \"files-list-viewer__loader\",\n attrs: { slot: \"loader\" },\n slot: \"loader\",\n })\n : _vm._e(),\n ],\n 1\n )\n },\n },\n ]),\n }),\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { ref: \"tiledLayoutContainer\", staticClass: \"tiled-container\" },\n [\n _vm._t(\n \"default\",\n function () {\n return [_c(\"TiledRows\", { attrs: { rows: _vm.rows } })]\n },\n { rows: _vm.rows }\n ),\n ],\n 2\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function (_h, _vm) {\n var _c = _vm._c\n return _c(\n \"ul\",\n _vm._l(_vm.props.rows, function (row) {\n return _c(\n \"div\",\n {\n key: row.key,\n staticClass: \"tiled-row\",\n style: { height: row.height + \"px\" },\n },\n _vm._l(row.items, function (item) {\n return _c(\n \"li\",\n {\n key: item.id,\n style: {\n width: item.ratio ? row.height * item.ratio + \"px\" : \"100%\",\n height: row.height + \"px\",\n },\n },\n [_vm._t(\"default\", null, { row: row, item: item })],\n 2\n )\n }),\n 0\n )\n }),\n 0\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-src_mixins_FilesSelectionMixin_js-src_utils_CancelableRequest_js-src_components_Loader_vue-sr-84f266.js b/js/photos-src_mixins_FilesSelectionMixin_js-src_utils_CancelableRequest_js-src_components_Loader_vue-sr-84f266.js deleted file mode 100644 index 690dd7c3a..000000000 --- a/js/photos-src_mixins_FilesSelectionMixin_js-src_utils_CancelableRequest_js-src_components_Loader_vue-sr-84f266.js +++ /dev/null @@ -1,926 +0,0 @@ -"use strict"; -(self["webpackChunkphotos"] = self["webpackChunkphotos"] || []).push([["src_mixins_FilesSelectionMixin_js-src_utils_CancelableRequest_js-src_components_Loader_vue-sr-84f266"],{ - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Loader.vue?vue&type=script&lang=js&": -/*!****************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Loader.vue?vue&type=script&lang=js& ***! - \****************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'Loader' -}); - -/***/ }), - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/VirtualScrolling.vue?vue&type=script&lang=js&": -/*!**************************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/VirtualScrolling.vue?vue&type=script&lang=js& ***! - \**************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var debounce__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! debounce */ "./node_modules/debounce/index.js"); -/* harmony import */ var debounce__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(debounce__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _services_logger_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../services/logger.js */ "./src/services/logger.js"); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - - -/** - * @typedef {object} Row - * @property {number} height - The height of the row. - */ - -/** - * @typedef {Row} VisibleRow - * @property {'none'|'near'|'visible'} visibility - The visibility state of the row - * @property {boolean} shouldRender - Whether the row should be renderer in the DOM - */ - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'VirtualScrolling', - props: { - rows: { - type: Array, - required: true - }, - containerElement: { - type: HTMLElement, - default: null - }, - useWindow: { - type: Boolean, - default: false - }, - renderWindowRatio: { - type: Number, - default: 4 - }, - willBeVisibleWindowRatio: { - type: Number, - default: 4 - }, - visibleWindowRatio: { - type: Number, - // A little bit more than the container's height to include items at its edges. - default: 0 - }, - bottomBufferRatio: { - type: Number, - default: 5 - }, - scrollToKey: { - type: String, - default: '' - } - }, - - data() { - return { - scrollPosition: 0, - containerHeight: 0, - rowsContainerHeight: 0, - - /** @type {ResizeObserver} */ - resizeObserver: null - }; - }, - - computed: { - /** - * @return {VisibleRow[]} - */ - visibleRows() { - _services_logger_js__WEBPACK_IMPORTED_MODULE_1__["default"].debug('[VirtualScrolling] Computing visible rows', this.rows); // Optimisation: get those computed properties once to not go through vue's internal every time we need them. - - const scrollPosition = this.scrollPosition; - const containerHeight = this.containerHeight; // Optimisation: different windows to hint the items how they should render themselves. - // This will be forwarded with the visibility props. - - const shouldRenderedWindow = containerHeight * this.renderWindowRatio; - const willBeVisibleWindow = containerHeight * this.willBeVisibleWindowRatio; - const visibleWindow = containerHeight * this.visibleWindowRatio; - let currentRowTopDistanceFromTop = 0; - let currentRowBottomDistanceFromTop = 0; // Compute whether a row should be included in the DOM (shouldRender) - // And how visible the row is. - - return this.rows.reduce((visibleRows, row) => { - currentRowTopDistanceFromTop = currentRowBottomDistanceFromTop; - currentRowBottomDistanceFromTop += row.height; - - if (currentRowTopDistanceFromTop < scrollPosition - shouldRenderedWindow || scrollPosition + containerHeight + shouldRenderedWindow < currentRowTopDistanceFromTop) { - return visibleRows; - } - - let visibility = 'none'; - - if (scrollPosition - willBeVisibleWindow < currentRowTopDistanceFromTop && currentRowTopDistanceFromTop < scrollPosition + containerHeight + willBeVisibleWindow) { - visibility = 'near'; - - if (scrollPosition - visibleWindow < currentRowTopDistanceFromTop && currentRowTopDistanceFromTop < scrollPosition + containerHeight + visibleWindow) { - visibility = 'visible'; - } - - if (scrollPosition - visibleWindow < currentRowBottomDistanceFromTop && currentRowBottomDistanceFromTop < scrollPosition + containerHeight + visibleWindow) { - visibility = 'visible'; - } - } - - return [...visibleRows, { ...row, - visibility - }]; - }, []); - }, - - /** - * Total height of all the rows + some room for the loader. - * - * @return {number} - */ - rowsHeight() { - const loaderHeight = 200; - return this.rows.map(row => row.height).reduce((totalHeight, rowHeight) => totalHeight + rowHeight, 0) + loaderHeight; - }, - - /** - * @return {number} - */ - paddingTop() { - if (this.visibleRows.length === 0) { - return 0; - } - - const firstVisibleRowIndex = this.rows.findIndex(row => row.items === this.visibleRows[0].items); - return this.rows.map(row => row.height).slice(0, firstVisibleRowIndex).reduce((totalHeight, rowHeight) => totalHeight + rowHeight, 0); - }, - - /** - * padding-top is used to replace not included item in the container. - * - * @return {object} - */ - rowsContainerStyle() { - return { - height: `${this.rowsHeight}px`, - paddingTop: `${this.paddingTop}px` - }; - }, - - /** - * Whether the user is near the bottom. - * If true, then the need-content event will be emitted. - * - * @return {boolean} - */ - isNearBottom() { - const buffer = this.containerHeight * this.bottomBufferRatio; - return this.scrollPosition + this.containerHeight >= this.rowsHeight - buffer; - }, - - /** - * @return {HTMLElement} - */ - container() { - _services_logger_js__WEBPACK_IMPORTED_MODULE_1__["default"].debug('[VirtualScrolling] Computing container'); - - if (this.containerElement !== null) { - return this.containerElement; - } else if (this.useWindow) { - return window; - } else { - return this.$refs.container; - } - } - - }, - watch: { - isNearBottom(value) { - if (value) { - this.$emit('need-content'); - } - }, - - rows() { - // Re-emit need-content when rows is updated and isNearBottom is still true. - // If the height of added rows is under `bottomBufferRatio`, `isNearBottom` will still be true so we need more content. - if (this.isNearBottom) { - this.$emit('need-content'); - } - }, - - scrollToKey(key) { - let currentRowTopDistanceFromTop = 0; - - for (const row of this.rows) { - if (row.key === key) { - this.$refs.container.scrollTo({ - top: currentRowTopDistanceFromTop, - behavior: 'smooth' - }); - return; - } - - currentRowTopDistanceFromTop += row.height; - } - } - - }, - - mounted() { - this.resizeObserver = new ResizeObserver(entries => { - for (const entry of entries) { - const cr = entry.contentRect; - - if (entry.target.classList.contains('vs-container')) { - this.containerHeight = cr.height; - } - - if (entry.target.classList.contains('vs-rows-container')) { - this.rowsContainerHeight = cr.height; - } - } - }); - - if (this.useWindow) { - window.addEventListener('resize', this.updateContainerSize); - this.containerHeight = window.innerHeight; - } else { - this.resizeObserver.observe(this.container); - } - - this.resizeObserver.observe(this.$refs.rowsContainer); - this.container.addEventListener('scroll', this.updateScrollPosition); - }, - - beforeDestroy() { - if (this.useWindow) { - window.removeEventListener('resize', this.updateContainerSize); - } - - this.resizeObserver.disconnect(); - this.container.removeEventListener('scroll', this.updateScrollPosition); - }, - - methods: { - updateScrollPosition: (0,debounce__WEBPACK_IMPORTED_MODULE_0__.debounce)(function () { - if (this.useWindow) { - this.scrollPosition = this.container.scrollY; - } else { - this.scrollPosition = this.container.scrollTop; - } - }, 200), - - updateContainerSize() { - this.containerHeight = window.innerHeight; - } - - } -}); - -/***/ }), - -/***/ "./src/mixins/FilesSelectionMixin.js": -/*!*******************************************!*\ - !*** ./src/mixins/FilesSelectionMixin.js ***! - \*******************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/** - * @copyright Copyright (c) 2019 Louis Chemineau - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'FilesSelectionMixin', - - data() { - return { - /** @type {Object} */ - selection: {} - }; - }, - - methods: { - onFileSelectToggle(_ref) { - let { - id, - value - } = _ref; - this.$set(this.selection, id, value); - }, - - /** - * @param {string[]} filesIds - The ids of the files to uncheck. - */ - onUncheckFiles(filesIds) { - filesIds.forEach(( - /** @type {string} */ - filesId) => this.$set(this.selection, filesId, false)); - }, - - resetSelection() { - this.selection = {}; - } - - }, - computed: { - /** - * @return {string[]} - */ - selectedFileIds() { - return Object.keys(this.selection).filter(fileId => this.selection[fileId]); - } - - } -}); - -/***/ }), - -/***/ "./src/utils/CancelableRequest.js": -/*!****************************************!*\ - !*** ./src/utils/CancelableRequest.js ***! - \****************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _nextcloud_axios__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/axios */ "./node_modules/@nextcloud/axios/dist/index.js"); -/** - * @copyright Copyright (c) 2019 Marco Ambrosini - * - * @author Marco Ambrosini - * - * @author John Molakvoæ - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ - -/** - * Create a cancel token - * - * @return {CancelTokenSource} - */ - -const createCancelToken = () => _nextcloud_axios__WEBPACK_IMPORTED_MODULE_0__["default"].CancelToken.source(); -/** - * Creates a cancelable axios 'request object'. - * - * @param {Function} request the axios promise request - * @return {object} - */ - - -const CancelableRequest = function (request) { - /** - * Generate an axios cancel token - */ - const cancelToken = createCancelToken(); - /** - * Execute the request - * - * @param {string} url the url to send the request to - * @param {object} [options] optional config for the request - */ - - const fetch = async function (url, options) { - return request(url, Object.assign({ - cancelToken: cancelToken.token - }, options)); - }; - - return { - request: fetch, - cancel: cancelToken.cancel - }; -}; - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (CancelableRequest); - -/***/ }), - -/***/ "./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!./src/components/Loader.vue?vue&type=style&index=0&lang=scss&": -/*!****************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/components/Loader.vue?vue&type=style&index=0&lang=scss& ***! - \****************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".loader {\n display: grid;\n height: 60px;\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./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!./src/components/VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss&": -/*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/components/VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss& ***! - \**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".vs-container[data-v-3d9f7b4c] {\n overflow-y: scroll;\n height: 100%;\n}\n.vs-rows-container[data-v-3d9f7b4c] {\n box-sizing: border-box;\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/Loader.vue?vue&type=style&index=0&lang=scss&": -/*!********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/components/Loader.vue?vue&type=style&index=0&lang=scss& ***! - \********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../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& */ "./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!./src/components/Loader.vue?vue&type=style&index=0&lang=scss&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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___WEBPACK_IMPORTED_MODULE_6__["default"] && _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___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss&": -/*!******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/components/VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss& ***! - \******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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_VirtualScrolling_vue_vue_type_style_index_0_id_3d9f7b4c_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../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!./VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss& */ "./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!./src/components/VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_VirtualScrolling_vue_vue_type_style_index_0_id_3d9f7b4c_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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_VirtualScrolling_vue_vue_type_style_index_0_id_3d9f7b4c_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_VirtualScrolling_vue_vue_type_style_index_0_id_3d9f7b4c_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_VirtualScrolling_vue_vue_type_style_index_0_id_3d9f7b4c_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./src/components/Loader.vue": -/*!***********************************!*\ - !*** ./src/components/Loader.vue ***! - \***********************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _Loader_vue_vue_type_template_id_04a0d67a___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Loader.vue?vue&type=template&id=04a0d67a& */ "./src/components/Loader.vue?vue&type=template&id=04a0d67a&"); -/* harmony import */ var _Loader_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Loader.vue?vue&type=script&lang=js& */ "./src/components/Loader.vue?vue&type=script&lang=js&"); -/* harmony import */ var _Loader_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Loader.vue?vue&type=style&index=0&lang=scss& */ "./src/components/Loader.vue?vue&type=style&index=0&lang=scss&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( - _Loader_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _Loader_vue_vue_type_template_id_04a0d67a___WEBPACK_IMPORTED_MODULE_0__.render, - _Loader_vue_vue_type_template_id_04a0d67a___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - null, - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/Loader.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/VirtualScrolling.vue": -/*!*********************************************!*\ - !*** ./src/components/VirtualScrolling.vue ***! - \*********************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _VirtualScrolling_vue_vue_type_template_id_3d9f7b4c_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true& */ "./src/components/VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true&"); -/* harmony import */ var _VirtualScrolling_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./VirtualScrolling.vue?vue&type=script&lang=js& */ "./src/components/VirtualScrolling.vue?vue&type=script&lang=js&"); -/* harmony import */ var _VirtualScrolling_vue_vue_type_style_index_0_id_3d9f7b4c_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss& */ "./src/components/VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( - _VirtualScrolling_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _VirtualScrolling_vue_vue_type_template_id_3d9f7b4c_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render, - _VirtualScrolling_vue_vue_type_template_id_3d9f7b4c_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - "3d9f7b4c", - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/VirtualScrolling.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/Loader.vue?vue&type=script&lang=js&": -/*!************************************************************!*\ - !*** ./src/components/Loader.vue?vue&type=script&lang=js& ***! - \************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Loader_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Loader.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Loader_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/components/VirtualScrolling.vue?vue&type=script&lang=js&": -/*!**********************************************************************!*\ - !*** ./src/components/VirtualScrolling.vue?vue&type=script&lang=js& ***! - \**********************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_VirtualScrolling_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VirtualScrolling.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/VirtualScrolling.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_VirtualScrolling_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/components/Loader.vue?vue&type=style&index=0&lang=scss&": -/*!*********************************************************************!*\ - !*** ./src/components/Loader.vue?vue&type=style&index=0&lang=scss& ***! - \*********************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/style-loader/dist/cjs.js!../../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& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/Loader.vue?vue&type=style&index=0&lang=scss&"); - - -/***/ }), - -/***/ "./src/components/VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss&": -/*!*******************************************************************************************************!*\ - !*** ./src/components/VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss& ***! - \*******************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_VirtualScrolling_vue_vue_type_style_index_0_id_3d9f7b4c_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/style-loader/dist/cjs.js!../../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!./VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss&"); - - -/***/ }), - -/***/ "./src/components/Loader.vue?vue&type=template&id=04a0d67a&": -/*!******************************************************************!*\ - !*** ./src/components/Loader.vue?vue&type=template&id=04a0d67a& ***! - \******************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Loader_vue_vue_type_template_id_04a0d67a___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Loader_vue_vue_type_template_id_04a0d67a___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Loader_vue_vue_type_template_id_04a0d67a___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=template&id=04a0d67a& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Loader.vue?vue&type=template&id=04a0d67a&"); - - -/***/ }), - -/***/ "./src/components/VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true&": -/*!****************************************************************************************!*\ - !*** ./src/components/VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true& ***! - \****************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_VirtualScrolling_vue_vue_type_template_id_3d9f7b4c_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_VirtualScrolling_vue_vue_type_template_id_3d9f7b4c_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_VirtualScrolling_vue_vue_type_template_id_3d9f7b4c_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true&"); - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Loader.vue?vue&type=template&id=04a0d67a&": -/*!*********************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Loader.vue?vue&type=template&id=04a0d67a& ***! - \*********************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -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 - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true&": -/*!*******************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true& ***! - \*******************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return !_vm.useWindow && _vm.containerElement === null - ? _c("div", { ref: "container", staticClass: "vs-container" }, [ - _c( - "div", - { - ref: "rowsContainer", - staticClass: "vs-rows-container", - style: _vm.rowsContainerStyle, - }, - [ - _vm._t("default", null, { renderedRows: _vm.visibleRows }), - _vm._v(" "), - _vm._t("loader"), - ], - 2 - ), - ]) - : _c( - "div", - { - ref: "rowsContainer", - staticClass: "vs-rows-container", - style: _vm.rowsContainerStyle, - }, - [ - _vm._t("default", null, { renderedRows: _vm.visibleRows }), - _vm._v(" "), - _vm._t("loader"), - ], - 2 - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }) - -}]); -//# sourceMappingURL=photos-src_mixins_FilesSelectionMixin_js-src_utils_CancelableRequest_js-src_components_Loader_vue-sr-84f266.js.map?v=c580f004c2fa72a3011f \ No newline at end of file diff --git a/js/photos-src_mixins_FilesSelectionMixin_js-src_utils_CancelableRequest_js-src_components_Loader_vue-sr-84f266.js.map b/js/photos-src_mixins_FilesSelectionMixin_js-src_utils_CancelableRequest_js-src_components_Loader_vue-sr-84f266.js.map deleted file mode 100644 index ebb1a8f40..000000000 --- a/js/photos-src_mixins_FilesSelectionMixin_js-src_utils_CancelableRequest_js-src_components_Loader_vue-sr-84f266.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-src_mixins_FilesSelectionMixin_js-src_utils_CancelableRequest_js-src_components_Loader_vue-sr-84f266.js?v=c580f004c2fa72a3011f","mappings":";;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;AChCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;AClSA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;AC/DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;AC/DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;;;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;ACvCA;;;;;;;;;;;;;;;ACAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sources":["webpack:///photos/src/components/Loader.vue?vue&type=script&lang=js&","webpack:///photos/src/components/VirtualScrolling.vue?vue&type=script&lang=js&","webpack:///photos/src/mixins/FilesSelectionMixin.js","webpack:///photos/src/utils/CancelableRequest.js","webpack:///photos/src/components/Loader.vue?vue&type=style&index=0&lang=scss&","webpack:///photos/src/components/VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss&","webpack://photos/./src/components/Loader.vue?eb1b","webpack://photos/./src/components/VirtualScrolling.vue?38b9","webpack:///photos/src/components/Loader.vue","webpack:///photos/src/components/VirtualScrolling.vue","webpack://photos/./src/components/Loader.vue?5453","webpack://photos/./src/components/VirtualScrolling.vue?de60","webpack:///photos/src/components/Loader.vue?vue&type=template&id=04a0d67a&","webpack:///photos/src/components/VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true&"],"sourcesContent":["//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nexport default {\n name: 'Loader'\n};","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport { debounce } from 'debounce';\nimport logger from '../services/logger.js';\n/**\n * @typedef {object} Row\n * @property {number} height - The height of the row.\n */\n\n/**\n * @typedef {Row} VisibleRow\n * @property {'none'|'near'|'visible'} visibility - The visibility state of the row\n * @property {boolean} shouldRender - Whether the row should be renderer in the DOM\n */\n\nexport default {\n name: 'VirtualScrolling',\n props: {\n rows: {\n type: Array,\n required: true\n },\n containerElement: {\n type: HTMLElement,\n default: null\n },\n useWindow: {\n type: Boolean,\n default: false\n },\n renderWindowRatio: {\n type: Number,\n default: 4\n },\n willBeVisibleWindowRatio: {\n type: Number,\n default: 4\n },\n visibleWindowRatio: {\n type: Number,\n // A little bit more than the container's height to include items at its edges.\n default: 0\n },\n bottomBufferRatio: {\n type: Number,\n default: 5\n },\n scrollToKey: {\n type: String,\n default: ''\n }\n },\n\n data() {\n return {\n scrollPosition: 0,\n containerHeight: 0,\n rowsContainerHeight: 0,\n\n /** @type {ResizeObserver} */\n resizeObserver: null\n };\n },\n\n computed: {\n /**\n * @return {VisibleRow[]}\n */\n visibleRows() {\n logger.debug('[VirtualScrolling] Computing visible rows', this.rows); // Optimisation: get those computed properties once to not go through vue's internal every time we need them.\n\n const scrollPosition = this.scrollPosition;\n const containerHeight = this.containerHeight; // Optimisation: different windows to hint the items how they should render themselves.\n // This will be forwarded with the visibility props.\n\n const shouldRenderedWindow = containerHeight * this.renderWindowRatio;\n const willBeVisibleWindow = containerHeight * this.willBeVisibleWindowRatio;\n const visibleWindow = containerHeight * this.visibleWindowRatio;\n let currentRowTopDistanceFromTop = 0;\n let currentRowBottomDistanceFromTop = 0; // Compute whether a row should be included in the DOM (shouldRender)\n // And how visible the row is.\n\n return this.rows.reduce((visibleRows, row) => {\n currentRowTopDistanceFromTop = currentRowBottomDistanceFromTop;\n currentRowBottomDistanceFromTop += row.height;\n\n if (currentRowTopDistanceFromTop < scrollPosition - shouldRenderedWindow || scrollPosition + containerHeight + shouldRenderedWindow < currentRowTopDistanceFromTop) {\n return visibleRows;\n }\n\n let visibility = 'none';\n\n if (scrollPosition - willBeVisibleWindow < currentRowTopDistanceFromTop && currentRowTopDistanceFromTop < scrollPosition + containerHeight + willBeVisibleWindow) {\n visibility = 'near';\n\n if (scrollPosition - visibleWindow < currentRowTopDistanceFromTop && currentRowTopDistanceFromTop < scrollPosition + containerHeight + visibleWindow) {\n visibility = 'visible';\n }\n\n if (scrollPosition - visibleWindow < currentRowBottomDistanceFromTop && currentRowBottomDistanceFromTop < scrollPosition + containerHeight + visibleWindow) {\n visibility = 'visible';\n }\n }\n\n return [...visibleRows, { ...row,\n visibility\n }];\n }, []);\n },\n\n /**\n * Total height of all the rows + some room for the loader.\n *\n * @return {number}\n */\n rowsHeight() {\n const loaderHeight = 200;\n return this.rows.map(row => row.height).reduce((totalHeight, rowHeight) => totalHeight + rowHeight, 0) + loaderHeight;\n },\n\n /**\n * @return {number}\n */\n paddingTop() {\n if (this.visibleRows.length === 0) {\n return 0;\n }\n\n const firstVisibleRowIndex = this.rows.findIndex(row => row.items === this.visibleRows[0].items);\n return this.rows.map(row => row.height).slice(0, firstVisibleRowIndex).reduce((totalHeight, rowHeight) => totalHeight + rowHeight, 0);\n },\n\n /**\n * padding-top is used to replace not included item in the container.\n *\n * @return {object}\n */\n rowsContainerStyle() {\n return {\n height: `${this.rowsHeight}px`,\n paddingTop: `${this.paddingTop}px`\n };\n },\n\n /**\n * Whether the user is near the bottom.\n * If true, then the need-content event will be emitted.\n *\n * @return {boolean}\n */\n isNearBottom() {\n const buffer = this.containerHeight * this.bottomBufferRatio;\n return this.scrollPosition + this.containerHeight >= this.rowsHeight - buffer;\n },\n\n /**\n * @return {HTMLElement}\n */\n container() {\n logger.debug('[VirtualScrolling] Computing container');\n\n if (this.containerElement !== null) {\n return this.containerElement;\n } else if (this.useWindow) {\n return window;\n } else {\n return this.$refs.container;\n }\n }\n\n },\n watch: {\n isNearBottom(value) {\n if (value) {\n this.$emit('need-content');\n }\n },\n\n rows() {\n // Re-emit need-content when rows is updated and isNearBottom is still true.\n // If the height of added rows is under `bottomBufferRatio`, `isNearBottom` will still be true so we need more content.\n if (this.isNearBottom) {\n this.$emit('need-content');\n }\n },\n\n scrollToKey(key) {\n let currentRowTopDistanceFromTop = 0;\n\n for (const row of this.rows) {\n if (row.key === key) {\n this.$refs.container.scrollTo({\n top: currentRowTopDistanceFromTop,\n behavior: 'smooth'\n });\n return;\n }\n\n currentRowTopDistanceFromTop += row.height;\n }\n }\n\n },\n\n mounted() {\n this.resizeObserver = new ResizeObserver(entries => {\n for (const entry of entries) {\n const cr = entry.contentRect;\n\n if (entry.target.classList.contains('vs-container')) {\n this.containerHeight = cr.height;\n }\n\n if (entry.target.classList.contains('vs-rows-container')) {\n this.rowsContainerHeight = cr.height;\n }\n }\n });\n\n if (this.useWindow) {\n window.addEventListener('resize', this.updateContainerSize);\n this.containerHeight = window.innerHeight;\n } else {\n this.resizeObserver.observe(this.container);\n }\n\n this.resizeObserver.observe(this.$refs.rowsContainer);\n this.container.addEventListener('scroll', this.updateScrollPosition);\n },\n\n beforeDestroy() {\n if (this.useWindow) {\n window.removeEventListener('resize', this.updateContainerSize);\n }\n\n this.resizeObserver.disconnect();\n this.container.removeEventListener('scroll', this.updateScrollPosition);\n },\n\n methods: {\n updateScrollPosition: debounce(function () {\n if (this.useWindow) {\n this.scrollPosition = this.container.scrollY;\n } else {\n this.scrollPosition = this.container.scrollTop;\n }\n }, 200),\n\n updateContainerSize() {\n this.containerHeight = window.innerHeight;\n }\n\n }\n};","/**\n * @copyright Copyright (c) 2019 Louis Chemineau \n *\n * @author Louis Chemineau \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 .\n *\n */\nexport default {\n name: 'FilesSelectionMixin',\n\n data() {\n return {\n /** @type {Object} */\n selection: {}\n };\n },\n\n methods: {\n onFileSelectToggle(_ref) {\n let {\n id,\n value\n } = _ref;\n this.$set(this.selection, id, value);\n },\n\n /**\n * @param {string[]} filesIds - The ids of the files to uncheck.\n */\n onUncheckFiles(filesIds) {\n filesIds.forEach((\n /** @type {string} */\n filesId) => this.$set(this.selection, filesId, false));\n },\n\n resetSelection() {\n this.selection = {};\n }\n\n },\n computed: {\n /**\n * @return {string[]}\n */\n selectedFileIds() {\n return Object.keys(this.selection).filter(fileId => this.selection[fileId]);\n }\n\n }\n};","/**\n * @copyright Copyright (c) 2019 Marco Ambrosini \n *\n * @author Marco Ambrosini \n *\n * @author John Molakvoæ \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 .\n *\n */\nimport axios from '@nextcloud/axios';\n/**\n * Create a cancel token\n *\n * @return {CancelTokenSource}\n */\n\nconst createCancelToken = () => axios.CancelToken.source();\n/**\n * Creates a cancelable axios 'request object'.\n *\n * @param {Function} request the axios promise request\n * @return {object}\n */\n\n\nconst CancelableRequest = function (request) {\n /**\n * Generate an axios cancel token\n */\n const cancelToken = createCancelToken();\n /**\n * Execute the request\n *\n * @param {string} url the url to send the request to\n * @param {object} [options] optional config for the request\n */\n\n const fetch = async function (url, options) {\n return request(url, Object.assign({\n cancelToken: cancelToken.token\n }, options));\n };\n\n return {\n request: fetch,\n cancel: cancelToken.cancel\n };\n};\n\nexport default CancelableRequest;","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".loader {\\n display: grid;\\n height: 60px;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".vs-container[data-v-3d9f7b4c] {\\n overflow-y: scroll;\\n height: 100%;\\n}\\n.vs-rows-container[data-v-3d9f7b4c] {\\n box-sizing: border-box;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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 \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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 export default content && content.locals ? content.locals : undefined;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Loader.vue?vue&type=template&id=04a0d67a&\"\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\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/louis/workspace/nextcloud/apps/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('04a0d67a')) {\n api.createRecord('04a0d67a', component.options)\n } else {\n api.reload('04a0d67a', component.options)\n }\n module.hot.accept(\"./Loader.vue?vue&type=template&id=04a0d67a&\", function () {\n api.rerender('04a0d67a', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/Loader.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true&\"\nimport script from \"./VirtualScrolling.vue?vue&type=script&lang=js&\"\nexport * from \"./VirtualScrolling.vue?vue&type=script&lang=js&\"\nimport style0 from \"./VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&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 \"3d9f7b4c\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/louis/workspace/nextcloud/apps/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('3d9f7b4c')) {\n api.createRecord('3d9f7b4c', component.options)\n } else {\n api.reload('3d9f7b4c', component.options)\n }\n module.hot.accept(\"./VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true&\", function () {\n api.rerender('3d9f7b4c', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/VirtualScrolling.vue\"\nexport default component.exports","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 mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VirtualScrolling.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!./VirtualScrolling.vue?vue&type=script&lang=js&\"","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { staticClass: \"loader\" },\n [\n _vm._t(\"icon\", function () {\n return [_c(\"span\", { staticClass: \"icon-loading\" })]\n }),\n ],\n 2\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return !_vm.useWindow && _vm.containerElement === null\n ? _c(\"div\", { ref: \"container\", staticClass: \"vs-container\" }, [\n _c(\n \"div\",\n {\n ref: \"rowsContainer\",\n staticClass: \"vs-rows-container\",\n style: _vm.rowsContainerStyle,\n },\n [\n _vm._t(\"default\", null, { renderedRows: _vm.visibleRows }),\n _vm._v(\" \"),\n _vm._t(\"loader\"),\n ],\n 2\n ),\n ])\n : _c(\n \"div\",\n {\n ref: \"rowsContainer\",\n staticClass: \"vs-rows-container\",\n style: _vm.rowsContainerStyle,\n },\n [\n _vm._t(\"default\", null, { renderedRows: _vm.visibleRows }),\n _vm._v(\" \"),\n _vm._t(\"loader\"),\n ],\n 2\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-src_mixins_GridConfig_js-src_components_EmptyContent_vue-src_components_FolderTagPreview_vue--cac48e.js b/js/photos-src_mixins_GridConfig_js-src_components_EmptyContent_vue-src_components_FolderTagPreview_vue--cac48e.js deleted file mode 100644 index 57dc39d48..000000000 --- a/js/photos-src_mixins_GridConfig_js-src_components_EmptyContent_vue-src_components_FolderTagPreview_vue--cac48e.js +++ /dev/null @@ -1,3 +0,0 @@ -/*! For license information please see photos-src_mixins_GridConfig_js-src_components_EmptyContent_vue-src_components_FolderTagPreview_vue--cac48e.js.LICENSE.txt */ -(self.webpackChunkphotos=self.webpackChunkphotos||[]).push([["src_mixins_GridConfig_js-src_components_EmptyContent_vue-src_components_FolderTagPreview_vue--cac48e"],{16897:n=>{n.exports={sizes:{400:{marginTop:66,marginW:8,count:3,gap:8},700:{marginTop:66,marginW:8,count:4,gap:8},1024:{marginTop:66,marginW:44,count:5,gap:8},1280:{marginTop:66,marginW:44,count:4,gap:8},1440:{marginTop:88,marginW:66,count:5,gap:8},1600:{marginTop:88,marginW:66,count:6,gap:8},2048:{marginTop:88,marginW:66,count:7,gap:8},2560:{marginTop:88,marginW:88,count:8,gap:8},3440:{marginTop:88,marginW:88,count:9,gap:8},max:{marginTop:88,marginW:88,count:10,gap:8}}}},85324:(n,t,a)=>{"use strict";a.d(t,{Z:()=>s});var e=a(20144),i=a(16897);const o=new e.ZP({data:function(){return{gridConfig:i.sizes.max}},watch:{gridConfig:function(n){this.$emit("changed",n)}},created:function(){window.addEventListener("resize",this.handleWindowResize),this.handleWindowResize()},beforeDestroy:function(){window.removeEventListener("resize",this.handleWindowResize)},methods:{handleWindowResize:function(){var n=Object.keys(i.sizes).find((function(n){return n>document.documentElement.clientWidth}));this.gridConfig=i.sizes[n]||i.sizes.max}}});var r=a(25108);const s={data:function(){return{gridConfig:{}}},created:function(){var n=this;o.$on("changed",(function(t){n.gridConfig=t})),r.debug("[".concat("photos","]"),"Grid config",Object.assign({},o.gridConfig)),this.gridConfig=o.gridConfig},beforeDestroy:function(){o.$off("changed",this.gridConfig)}}},86228:(n,t,a)=>{"use strict";a.d(t,{Z:()=>s});var e=a(87537),i=a.n(e),o=a(23645),r=a.n(o)()(i());r.push([n.id,'.emptycontent{grid-column:1/-1;margin-top:20vh}.illustration{min-width:200px;max-width:15%;width:300px;margin:auto;margin-bottom:20px;position:relative}.illustration svg{width:100%;height:100%;max-height:40vh}.illustration [fill*="6c63ff"]{fill:var(--color-primary-element)}',"",{version:3,sources:["webpack://./src/components/EmptyContent.vue"],names:[],mappings:"AAmHA,cAEC,gBAAA,CACA,eAAA,CAGD,cACC,eAAA,CACA,aAAA,CACA,WAAA,CACA,WAAA,CACA,kBAAA,CACA,iBAAA,CAEA,kBACC,UAAA,CACA,WAAA,CACA,eAAA,CAID,+BACC,iCAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.emptycontent {\n\t// span all the available columns\n\tgrid-column: 1/-1;\n\tmargin-top: 20vh;\n}\n\n.illustration {\n\tmin-width: 200px;\n\tmax-width: 15%;\n\twidth: 300px;\n\tmargin: auto;\n\tmargin-bottom: 20px;\n\tposition: relative;\n\n\tsvg {\n\t\twidth: 100%;\n\t\theight: 100%;\n\t\tmax-height: 40vh;\n\t}\n\n\t// change colour of illustration\n\t[fill*=\'6c63ff\'] {\n\t\tfill: var(--color-primary-element);\n\t}\n}\n'],sourceRoot:""}]);const s=r},10369:(n,t,a)=>{"use strict";a.d(t,{Z:()=>s});var e=a(87537),i=a.n(e),o=a(23645),r=a.n(o)()(i());r.push([n.id,".file[data-v-b8db2226],.folder[data-v-b8db2226]{position:relative;display:flex;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none;border-radius:var(--border-radius);overflow:hidden}.file .cover[data-v-b8db2226],.folder .cover[data-v-b8db2226]{z-index:2;width:100%;padding-bottom:100%;transition:opacity var(--animation-quick) ease-in-out;opacity:0;background-color:var(--color-main-text)}.file.active .cover[data-v-b8db2226],.file:active .cover[data-v-b8db2226],.file:hover .cover[data-v-b8db2226],.file:focus .cover[data-v-b8db2226],.folder.active .cover[data-v-b8db2226],.folder:active .cover[data-v-b8db2226],.folder:hover .cover[data-v-b8db2226],.folder:focus .cover[data-v-b8db2226]{opacity:.3}.file--clear.active .cover[data-v-b8db2226],.file--clear:active .cover[data-v-b8db2226],.file--clear:hover .cover[data-v-b8db2226],.file--clear:focus .cover[data-v-b8db2226],.folder--clear.active .cover[data-v-b8db2226],.folder--clear:active .cover[data-v-b8db2226],.folder--clear:hover .cover[data-v-b8db2226],.folder--clear:focus .cover[data-v-b8db2226]{opacity:.1}.fade-enter-active[data-v-b8db2226],.fade-leave-active[data-v-b8db2226]{transition:opacity var(--animation-quick) ease-in-out}.fade-enter[data-v-b8db2226],.fade-leave-to[data-v-b8db2226]{opacity:0}.folder-content[data-v-b8db2226]{position:absolute;display:grid;width:100%;height:100%}.folder-content--grid-1[data-v-b8db2226]{grid-template-columns:1fr;grid-template-rows:1fr}.folder-content--grid-2[data-v-b8db2226]{grid-template-columns:1fr;grid-template-rows:1fr 1fr}.folder-content--grid-3[data-v-b8db2226]{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}.folder-content--grid-3 img[data-v-b8db2226]:first-child{grid-column:span 2}.folder-content--grid-4[data-v-b8db2226]{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}.folder-content img[data-v-b8db2226]{width:100%;height:100%;object-fit:cover}.folder-name[data-v-b8db2226]{position:absolute;z-index:3;display:flex;overflow:hidden;flex-direction:column;width:100%;height:100%;transition:opacity var(--animation-quick) ease-in-out;opacity:1}.folder-name__icon[data-v-b8db2226]{height:40%;margin-top:calc(30% - 1rem / 2);background-size:40%}.folder-name__name[data-v-b8db2226]{overflow:hidden;height:1rem;padding:0 10px;text-align:center;white-space:nowrap;text-overflow:ellipsis;color:var(--color-main-background);text-shadow:0 0 8px var(--color-main-text);font-size:1rem;line-height:1rem}.folder--clear .folder-name__icon[data-v-b8db2226]{opacity:.3}.folder--clear .folder-name__name[data-v-b8db2226]{color:var(--color-main-text);text-shadow:0 0 8px var(--color-main-background)}.folder:not(.folder--clear) .cover[data-v-b8db2226]{opacity:.3}.folder:not(.folder--clear):active .folder-name[data-v-b8db2226],.folder:not(.folder--clear):active .cover[data-v-b8db2226],.folder:not(.folder--clear):hover .folder-name[data-v-b8db2226],.folder:not(.folder--clear):hover .cover[data-v-b8db2226],.folder:not(.folder--clear):focus .folder-name[data-v-b8db2226],.folder:not(.folder--clear):focus .cover[data-v-b8db2226]{opacity:0}","",{version:3,sources:["webpack://./src/mixins/FileFolder.scss","webpack://./src/components/FolderTagPreview.vue"],names:[],mappings:"AAsBA,gDAEC,iBAAA,CACA,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,wBAAA,CAAA,gBAAA,CACA,kCAAA,CACA,eAAA,CAEA,8DACC,SAAA,CAMA,UAAA,CACA,mBAAA,CACA,qDAAA,CACA,SAAA,CACA,uCAAA,CAOA,4SACC,UAAA,CAQD,oWACC,UAAA,CAKH,wEACC,qDAAA,CAGD,6DACC,SAAA,CCkFD,iCACC,iBAAA,CACA,YAAA,CACA,UAAA,CACA,WAAA,CAEA,yCACC,yBAAA,CACA,sBAAA,CAED,yCACC,yBAAA,CACA,0BAAA,CAED,yCACC,6BAAA,CACA,0BAAA,CACA,yDACC,kBAAA,CAGF,yCACC,6BAAA,CACA,0BAAA,CAED,qCACC,UAAA,CACA,WAAA,CAEA,gBAAA,CAMF,8BACC,iBAAA,CACA,SAAA,CACA,YAAA,CACA,eAAA,CACA,qBAAA,CACA,UAAA,CACA,WAAA,CACA,qDAAA,CACA,SAAA,CACA,oCACC,UAAA,CACA,+BAAA,CACA,mBAAA,CAED,oCACC,eAAA,CACA,WAnBY,CAoBZ,cAAA,CACA,iBAAA,CACA,kBAAA,CACA,sBAAA,CACA,kCAAA,CACA,0CAAA,CACA,cA1BY,CA2BZ,gBA3BY,CAmCZ,mDACC,UAAA,CAED,mDACC,4BAAA,CACA,gDAAA,CAQD,oDACC,UAAA,CAQA,gXAEC,SAAA",sourcesContent:["/**\n * @copyright Copyright (c) 2019 John Molakvoæ \n *\n * @author John Molakvoæ \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 .\n *\n */\n\n.file,\n.folder {\n\tposition: relative;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\tuser-select: none;\n\tborder-radius: var(--border-radius);\n\toverflow: hidden;\n\n\t.cover {\n\t\tz-index: 2;\n\t\t// We want nice squares despite anything that is in it.\n\t\t// The .cover is what makes the exact square size of the grid.\n\t\t// We use padding-bottom because padding with percentage\n\t\t// always refers to the width. And we only want to fit\n\t\t// the css grid's width.\n\t\twidth: 100%;\n\t\tpadding-bottom: 100%;\n\t\ttransition: opacity var(--animation-quick) ease-in-out;\n\t\topacity: 0;\n\t\tbackground-color: var(--color-main-text);\n\t}\n\n\t&.active,\n\t&:active,\n\t&:hover,\n\t&:focus {\n\t\t.cover {\n\t\t\topacity: .3;\n\t\t}\n\t}\n\n\t&--clear.active,\n\t&--clear:active,\n\t&--clear:hover,\n\t&--clear:focus {\n\t\t.cover {\n\t\t\topacity: .1;\n\t\t}\n\t}\n}\n\n.fade-enter-active, .fade-leave-active {\n\ttransition: opacity var(--animation-quick) ease-in-out;\n}\n\n.fade-enter, .fade-leave-to {\n\topacity: 0;\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@import \'../mixins/FileFolder\';\n\n.folder-content {\n\tposition: absolute;\n\tdisplay: grid;\n\twidth: 100%;\n\theight: 100%;\n\t// folder layout if less than 4 pictures\n\t&--grid-1 {\n\t\tgrid-template-columns: 1fr;\n\t\tgrid-template-rows: 1fr;\n\t}\n\t&--grid-2 {\n\t\tgrid-template-columns: 1fr;\n\t\tgrid-template-rows: 1fr 1fr;\n\t}\n\t&--grid-3 {\n\t\tgrid-template-columns: 1fr 1fr;\n\t\tgrid-template-rows: 1fr 1fr;\n\t\timg:first-child {\n\t\t\tgrid-column: span 2;\n\t\t}\n\t}\n\t&--grid-4 {\n\t\tgrid-template-columns: 1fr 1fr;\n\t\tgrid-template-rows: 1fr 1fr;\n\t}\n\timg {\n\t\twidth: 100%;\n\t\theight: 100%;\n\n\t\tobject-fit: cover;\n\t}\n}\n\n$name-height: 1rem;\n\n.folder-name {\n\tposition: absolute;\n\tz-index: 3;\n\tdisplay: flex;\n\toverflow: hidden;\n\tflex-direction: column;\n\twidth: 100%;\n\theight: 100%;\n\ttransition: opacity var(--animation-quick) ease-in-out;\n\topacity: 1;\n\t&__icon {\n\t\theight: 40%;\n\t\tmargin-top: calc(30% - #{$name-height} / 2); // center name+icon\n\t\tbackground-size: 40%;\n\t}\n\t&__name {\n\t\toverflow: hidden;\n\t\theight: $name-height;\n\t\tpadding: 0 10px;\n\t\ttext-align: center;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t\tcolor: var(--color-main-background);\n\t\ttext-shadow: 0 0 8px var(--color-main-text);\n\t\tfont-size: $name-height;\n\t\tline-height: $name-height;\n\t}\n}\n\n// Cover management empty/full\n.folder {\n\t// if no img, let\'s display the folder icon as default black\n\t&--clear {\n\t\t.folder-name__icon {\n\t\t\topacity: .3;\n\t\t}\n\t\t.folder-name__name {\n\t\t\tcolor: var(--color-main-text);\n\t\t\ttext-shadow: 0 0 8px var(--color-main-background);\n\t\t}\n\t}\n\n\t// show the cover as background\n\t// if there are pictures in it\n\t// so we can sho the folder+name above it\n\t&:not(.folder--clear) {\n\t\t.cover {\n\t\t\topacity: .3;\n\t\t}\n\n\t\t// hide everything but pictures\n\t\t// on hover/active/focus\n\t\t&:active,\n\t\t&:hover,\n\t\t&:focus {\n\t\t\t.folder-name,\n\t\t\t.cover {\n\t\t\t\topacity: 0;\n\t\t\t}\n\t\t}\n\t}\n}\n\n'],sourceRoot:""}]);const s=r},56222:(n,t,a)=>{"use strict";a.d(t,{Z:()=>s});var e=a(87537),i=a.n(e),o=a(23645),r=a.n(o)()(i());r.push([n.id,".icon-confirm[data-v-080cb7fa]{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.photos-navigation[data-v-080cb7fa]{display:flex;position:block;height:44px;padding:0 40px;align-items:center;max-width:100%}.photos-navigation__title[data-v-080cb7fa]{margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.photos-navigation__share[data-v-080cb7fa]{margin-left:10px}.photos-navigation__back[data-v-080cb7fa],.photos-navigation__share[data-v-080cb7fa]{flex-grow:0;flex-shrink:0}@media(min-width: 0px)and (max-width: 400px){.photos-navigation[data-v-080cb7fa]{margin-top:-7.3333333333px}.photos-navigation--root .photos-navigation__title[data-v-080cb7fa]{padding-left:-36px}}@media(min-width: 400px)and (max-width: 700px){.photos-navigation[data-v-080cb7fa]{margin-top:-7.3333333333px}.photos-navigation--root .photos-navigation__title[data-v-080cb7fa]{padding-left:-36px}}@media(min-width: 700px)and (max-width: 1024px){.photos-navigation[data-v-080cb7fa]{margin-top:-7.3333333333px}.photos-navigation__back[data-v-080cb7fa]{margin:0 0px}.photos-navigation--root .photos-navigation__title[data-v-080cb7fa]{padding-left:0px}}@media(min-width: 1024px)and (max-width: 1280px){.photos-navigation[data-v-080cb7fa]{margin-top:-7.3333333333px}.photos-navigation__back[data-v-080cb7fa]{margin:0 0px}.photos-navigation--root .photos-navigation__title[data-v-080cb7fa]{padding-left:0px}}@media(min-width: 1280px)and (max-width: 1440px){.photos-navigation[data-v-080cb7fa]{margin-top:0px}.photos-navigation__back[data-v-080cb7fa]{margin:0 11px}.photos-navigation--root .photos-navigation__title[data-v-080cb7fa]{padding-left:22px}}@media(min-width: 1440px)and (max-width: 1600px){.photos-navigation[data-v-080cb7fa]{margin-top:0px}.photos-navigation__back[data-v-080cb7fa]{margin:0 11px}.photos-navigation--root .photos-navigation__title[data-v-080cb7fa]{padding-left:22px}}@media(min-width: 1600px)and (max-width: 2048px){.photos-navigation[data-v-080cb7fa]{margin-top:0px}.photos-navigation__back[data-v-080cb7fa]{margin:0 11px}.photos-navigation--root .photos-navigation__title[data-v-080cb7fa]{padding-left:22px}}@media(min-width: 2048px)and (max-width: 2560px){.photos-navigation[data-v-080cb7fa]{margin-top:0px}.photos-navigation__back[data-v-080cb7fa]{margin:0 22px}.photos-navigation--root .photos-navigation__title[data-v-080cb7fa]{padding-left:44px}}@media(min-width: 2560px)and (max-width: 3440px){.photos-navigation[data-v-080cb7fa]{margin-top:0px}.photos-navigation__back[data-v-080cb7fa]{margin:0 22px}.photos-navigation--root .photos-navigation__title[data-v-080cb7fa]{padding-left:44px}}@media(min-width: 3440px){.photos-navigation[data-v-080cb7fa]{margin-top:0px}.photos-navigation__back[data-v-080cb7fa]{margin:0 22px}.photos-navigation--root .photos-navigation__title[data-v-080cb7fa]{padding-left:44px}}","",{version:3,sources:["webpack://./src/components/Navigation.vue","webpack://./src/mixins/GridSizes.scss"],names:[],mappings:"AAoJA,+BACC,gCAAA,CAAA,wBAAA,CAGD,oCACC,YAAA,CACA,cAAA,CACA,WAAA,CACA,cAAA,CACA,kBAAA,CACA,cAAA,CACA,2CACC,QAAA,CACA,kBAAA,CACA,eAAA,CACA,sBAAA,CAED,2CACC,gBAAA,CAED,qFAEC,WAAA,CACA,aAAA,CCvIC,6CDoHH,oCAyBE,0BAAA,CAOA,oEACC,kBAAA,CAAA,CCrJA,+CDoHH,oCAyBE,0BAAA,CAOA,oEACC,kBAAA,CAAA,CCrJA,gDDoHH,oCAyBE,0BAAA,CAGC,0CACC,YAAA,CAGF,oEACC,gBAAA,CAAA,CCrJA,iDDoHH,oCAyBE,0BAAA,CAGC,0CACC,YAAA,CAGF,oEACC,gBAAA,CAAA,CCrJA,iDDoHH,oCAyBE,cAAA,CAGC,0CACC,aAAA,CAGF,oEACC,iBAAA,CAAA,CCrJA,iDDoHH,oCAyBE,cAAA,CAGC,0CACC,aAAA,CAGF,oEACC,iBAAA,CAAA,CCrJA,iDDoHH,oCAyBE,cAAA,CAGC,0CACC,aAAA,CAGF,oEACC,iBAAA,CAAA,CCrJA,iDDoHH,oCAyBE,cAAA,CAGC,0CACC,aAAA,CAGF,oEACC,iBAAA,CAAA,CCrJA,iDDoHH,oCAyBE,cAAA,CAGC,0CACC,aAAA,CAGF,oEACC,iBAAA,CAAA,CCzJA,0BDwHH,oCAyBE,cAAA,CAGC,0CACC,aAAA,CAGF,oEACC,iBAAA,CAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n@use \'sass:math\';\n@import \'../mixins/GridSizes\';\n\n.icon-confirm {\n\ttransform: rotate(180deg)\n}\n\n.photos-navigation {\n\tdisplay: flex;\n\tposition: block;\n\theight: 44px;\n\tpadding: 0 40px;\n\talign-items: center;\n\tmax-width: 100%;\n\t&__title {\n\t\tmargin: 0;\n\t\twhite-space: nowrap;\n\t\toverflow: hidden;\n\t\ttext-overflow: ellipsis;\n\t}\n\t&__share {\n\t\tmargin-left: 10px;\n\t}\n\t&__back,\n\t&__share {\n\t\tflex-grow: 0;\n\t\tflex-shrink: 0;\n\t}\n\n\t// Specific grid spacing\n\t@include grid-sizes using ($marginTop, $marginW) {\n\t\t// we space this with 2/3 margin top, 1/3 margin bottom\n\t\tmargin-top: math.div($marginTop - 44px * 2, 3);\n\n\t\t@if $marginW >= 44px {\n\t\t\t&__back {\n\t\t\t\tmargin: 0 math.div($marginW - 44px, 2);\n\t\t\t}\n\t\t}\n\t\t&--root &__title {\n\t\t\tpadding-left: #{$marginW - 44}px;\n\t\t}\n\t}\n}\n',"/**\n * @copyright Copyright (c) 2019 John Molakvoæ \n *\n * @author John Molakvoæ \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 .\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"],sourceRoot:""}]);const s=r},66533:(n,t,a)=>{"use strict";a.d(t,{Z:()=>b});var e=a(25108);function i(n,t,a,e,i,o,r){try{var s=n[o](r),A=s.value}catch(n){return void a(n)}s.done?t(A):Promise.resolve(A).then(e,i)}const o={name:"EmptyContent",props:{illustrationName:{type:String,default:""}},data:function(){return{illustration:""}},computed:{haveIllustration:function(){return""!==this.illustrationName},isLoaded:function(){return!this.haveIllustration||""!==this.illustration},isReady:function(){return!this.haveIllustration||this.haveIllustration&&this.isLoaded}},watch:{illustrationName:function(){this.getIllustration()}},beforeMount:function(){this.getIllustration()},methods:{getIllustration:function(){var n,t=this;return(n=regeneratorRuntime.mark((function n(){var i;return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(t.illustration="",""===t.illustrationName){n.next=12;break}return n.prev=2,n.next=5,a(57767)("./".concat(t.illustrationName,".svg"));case 5:i=n.sent,t.illustration=i.default,n.next=12;break;case 9:n.prev=9,n.t0=n.catch(2),e.error("Could not get the error illustration",n.t0);case 12:case"end":return n.stop()}}),n,null,[[2,9]])})),function(){var t=this,a=arguments;return new Promise((function(e,o){var r=n.apply(t,a);function s(n){i(r,e,o,s,A,"next",n)}function A(n){i(r,e,o,s,A,"throw",n)}s(void 0)}))})()}}};var r=a(93379),s=a.n(r),A=a(7795),c=a.n(A),d=a(90569),l=a.n(d),p=a(3565),m=a.n(p),g=a(19216),h=a.n(g),f=a(44589),C=a.n(f),v=a(86228),u={};u.styleTagTransform=C(),u.setAttributes=m(),u.insert=l().bind(null,"head"),u.domAPI=c(),u.insertStyleElement=h();s()(v.Z,u);v.Z&&v.Z.locals&&v.Z.locals;const b=(0,a(51900).Z)(o,(function(){var n=this,t=n.$createElement,a=n._self._c||t;return n.isReady?a("div",{staticClass:"emptycontent"},[n.haveIllustration?a("div",{staticClass:"illustration",domProps:{innerHTML:n._s(n.illustration)}}):a("div",{staticClass:"icon-error"}),n._v(" "),a("h2",[n._t("default")],2),n._v(" "),a("p",{directives:[{name:"show",rawName:"v-show",value:n.$slots.desc,expression:"$slots.desc"}]},[n._t("desc")],2)]):n._e()}),[],!1,null,null,null).exports},88318:(n,a,e)=>{"use strict";e.d(a,{Z:()=>b});var i=e(79753);const o={name:"FolderTagPreview",props:{icon:{type:String,default:"icon-folder"},id:{type:Number,required:!0},name:{type:String,required:!0},path:{type:String,required:!0},fileList:{type:Array,default:function(){return[]}}},data:function(){return{loaded:!1,failed:[]}},computed:{isEmpty:function(){return 0===this.previewList.length},ariaUuid:function(){return"folder-".concat(this.id)},ariaLabel:function(){return t("photos",'Open the "{name}" sub-directory',{name:this.name})},previewList:function(){var n=this;return this.fileList.filter((function(t){return-1===n.failed.indexOf(t.fileid)}))},to:function(){var n=/^\/?(.+)/i.exec(this.path)[1];return Object.assign({},this.$route,{params:{path:n.split("/")}})}},methods:{generateImgSrc:function(n){var t=n.fileid,a=n.etag;return(0,i.generateUrl)("/core/preview?fileId=".concat(t,"&c=").concat(a,"&x=",250,"&y=",250,"&forceIcon=0&a=0"))},onPreviewFail:function(n){var t=n.fileid;this.failed.push(t)}}};var r=e(93379),s=e.n(r),A=e(7795),c=e.n(A),d=e(90569),l=e.n(d),p=e(3565),m=e.n(p),g=e(19216),h=e.n(g),f=e(44589),C=e.n(f),v=e(10369),u={};u.styleTagTransform=C(),u.setAttributes=m(),u.insert=l().bind(null,"head"),u.domAPI=c(),u.insertStyleElement=h();s()(v.Z,u);v.Z&&v.Z.locals&&v.Z.locals;const b=(0,e(51900).Z)(o,(function(){var n=this,t=n.$createElement,a=n._self._c||t;return a("router-link",{staticClass:"folder",class:{"folder--clear":n.isEmpty},attrs:{to:n.to,"aria-label":n.ariaLabel}},[a("transition",{attrs:{name:"fade"}},[a("div",{directives:[{name:"show",rawName:"v-show",value:n.loaded,expression:"loaded"}],staticClass:"folder-content",class:"folder-content--grid-"+n.previewList.length,attrs:{role:"none"}},n._l(n.previewList,(function(t){return a("img",{key:t.fileid,attrs:{src:n.generateImgSrc(t),alt:""},on:{load:function(t){n.loaded=!0},error:function(a){return n.onPreviewFail(t)}}})})),0)]),n._v(" "),a("div",{staticClass:"folder-name"},[a("span",{staticClass:"folder-name__icon",class:[n.isEmpty?"icon-dark":"icon-white",n.icon],attrs:{role:"img"}}),n._v(" "),a("p",{staticClass:"folder-name__name",attrs:{id:n.ariaUuid}},[n._v("\n\t\t\t"+n._s(n.name)+"\n\t\t")])]),n._v(" "),a("div",{staticClass:"cover",attrs:{role:"none"}})],1)}),[],!1,null,"b8db2226",null).exports},82390:(n,a,e)=>{"use strict";e.d(a,{Z:()=>x});var i=e(79440),o=e.n(i),r=e(56286);const s={name:"Navigation",components:{ActionButton:e.n(r)(),Actions:o()},inheritAttrs:!1,props:{basename:{type:String,required:!0},filename:{type:String,required:!0},showActions:{type:Boolean,default:!1},rootTitle:{type:String,default:t("photos","Photos")}},computed:{isRoot:function(){return"/"===this.filename},name:function(){return this.isRoot?this.rootTitle:this.basename},parentPath:function(){var n=this.filename.split("/");n.pop();var t=n.join("/");return this.isRoot||""===t.trim()?"/":n.join("/")},parentName:function(){return this.parentPath&&this.parentPath.split("/").pop()},backToText:function(){return"/"===this.parentPath?t("photos","Back to {folder}",{folder:this.rootTitle}):t("photos","Back to {folder}",{folder:this.parentName})},to:function(){var n=/^\/?(.*)/i.exec(this.parentPath)[1],t=Object.assign({},this.$route,{params:{path:n}}),a=t.name,e=t.params;return""===n?{name:a}:decodeURIComponent(this.$router.resolve({name:a,params:e}).resolved.path)}},methods:{folderUp:function(){this.$router.push(this.to)},showSidebar:function(){OCA.Files.Sidebar.open(this.filename)}}};var A=e(93379),c=e.n(A),d=e(7795),l=e.n(d),p=e(90569),m=e.n(p),g=e(3565),h=e.n(g),f=e(19216),C=e.n(f),v=e(44589),u=e.n(v),b=e(56222),w={};w.styleTagTransform=u(),w.setAttributes=h(),w.insert=m().bind(null,"head"),w.domAPI=l(),w.insertStyleElement=C();c()(b.Z,w);b.Z&&b.Z.locals&&b.Z.locals;const x=(0,e(51900).Z)(s,(function(){var n=this,t=n.$createElement,a=n._self._c||t;return a("div",{staticClass:"photos-navigation",class:{"photos-navigation--root":n.isRoot},attrs:{role:"toolbar"}},[n.isRoot?n._e():a("Actions",{staticClass:"photos-navigation__back"},[a("ActionButton",{attrs:{icon:"icon-confirm"},on:{click:n.folderUp}},[n._v("\n\t\t\t"+n._s(n.backToText)+"\n\t\t")])],1),n._v(" "),a("h2",{staticClass:"photos-navigation__title"},[n._v("\n\t\t"+n._s(n.name)+"\n\t")]),n._v(" "),!n.isRoot&&n.showActions?a("Actions",{staticClass:"photos-navigation__share"},[a("ActionButton",{attrs:{icon:"icon-shared"},on:{click:n.showSidebar}},[n._v("\n\t\t\t"+n._s(n.t("photos","Share this folder"))+"\n\t\t")])],1):n._e()],1)}),[],!1,null,"080cb7fa",null).exports},57767:(n,t,a)=>{var e={"./empty.svg":[51612,"src_assets_Illustrations_empty_svg"],"./folder.svg":[80917,"src_assets_Illustrations_folder_svg"],"./images.svg":[39777,"src_assets_Illustrations_images_svg"]};function i(n){if(!a.o(e,n))return Promise.resolve().then((()=>{var t=new Error("Cannot find module '"+n+"'");throw t.code="MODULE_NOT_FOUND",t}));var t=e[n],i=t[0];return a.e(t[1]).then((()=>a.t(i,17)))}i.keys=()=>Object.keys(e),i.id=57767,n.exports=i}}]); -//# sourceMappingURL=photos-src_mixins_GridConfig_js-src_components_EmptyContent_vue-src_components_FolderTagPreview_vue--cac48e.js.map?v=3afc7159512c68ca7652 \ No newline at end of file diff --git a/js/photos-src_mixins_GridConfig_js-src_components_EmptyContent_vue-src_components_FolderTagPreview_vue--cac48e.js.LICENSE.txt b/js/photos-src_mixins_GridConfig_js-src_components_EmptyContent_vue-src_components_FolderTagPreview_vue--cac48e.js.LICENSE.txt deleted file mode 100644 index 3eafa8b19..000000000 --- a/js/photos-src_mixins_GridConfig_js-src_components_EmptyContent_vue-src_components_FolderTagPreview_vue--cac48e.js.LICENSE.txt +++ /dev/null @@ -1,43 +0,0 @@ -/** - * @copyright Copyright (c) 2018 John Molakvoæ - * - * @author John Molakvoæ - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ - -/** - * @copyright Copyright (c) 2019 John Molakvoæ - * - * @author John Molakvoæ - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ diff --git a/js/photos-src_mixins_GridConfig_js-src_components_EmptyContent_vue-src_components_FolderTagPreview_vue--cac48e.js.map b/js/photos-src_mixins_GridConfig_js-src_components_EmptyContent_vue-src_components_FolderTagPreview_vue--cac48e.js.map deleted file mode 100644 index 014fa6ccb..000000000 --- a/js/photos-src_mixins_GridConfig_js-src_components_EmptyContent_vue-src_components_FolderTagPreview_vue--cac48e.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-src_mixins_GridConfig_js-src_components_EmptyContent_vue-src_components_FolderTagPreview_vue--cac48e.js?v=3afc7159512c68ca7652","mappings":";gLAgCAA,EAAOC,QAAU,CAChBC,MAAO,CACN,IAAK,CACJC,UAAW,GACXC,QAbS,EAcTC,MAAO,EACPC,IAfS,GAiBV,IAAK,CACJH,UAAW,GACXC,QAnBS,EAoBTC,MAAO,EACPC,IArBS,GAuBV,KAAM,CACLH,UAAW,GACXC,QAAS,GACTC,MAAO,EACPC,IA3BS,GA6BV,KAAM,CACLH,UAAW,GACXC,QAAS,GACTC,MAAO,EACPC,IAjCS,GAmCV,KAAM,CACLH,UAAW,GACXC,QAAS,GACTC,MAAO,EACPC,IAvCS,GAyCV,KAAM,CACLH,UAAW,GACXC,QAAS,GACTC,MAAO,EACPC,IA7CS,GA+CV,KAAM,CACLH,UAAW,GACXC,QAAS,GACTC,MAAO,EACPC,IAnDS,GAqDV,KAAM,CACLH,UAAW,GACXC,QAAS,GACTC,MAAO,EACPC,IAzDS,GA2DV,KAAM,CACLH,UAAW,GACXC,QAAS,GACTC,MAAO,EACPC,IA/DS,GAiEVC,IAAK,CACJJ,UAAW,GACXC,QAAS,GACTC,MAAO,GACPC,IArES,8ECEZ,YAAmBE,EAAAA,GAAI,CACtBC,KADsB,WAErB,MAAO,CACNC,WAAYR,EAAAA,MAAAA,IAEb,EACDS,MAAO,CACND,WADM,SACKE,GACVC,KAAKC,MAAM,UAAWF,EACtB,GAEFG,QAXsB,WAYrBC,OAAOC,iBAAiB,SAAUJ,KAAKK,oBACvCL,KAAKK,oBACL,EACDC,cAfsB,WAgBrBH,OAAOI,oBAAoB,SAAUP,KAAKK,mBAC1C,EACDG,QAAS,CACRH,mBADQ,WAGP,IAAMI,EAAcC,OAAOC,KAAKtB,EAAAA,OAAOuB,MAAK,SAAAC,GAAI,OAAIA,EAAOC,SAASC,gBAAgBC,WAApC,IAChDhB,KAAKH,WAAaR,EAAAA,MAAMoB,IAAgBpB,EAAAA,MAAAA,GACxC,oBCrBH,SACCO,KADc,WAEb,MAAO,CACNC,WAAY,CAAC,EAEd,EAEDK,QAPc,WAOJ,WACTe,EAAAA,IAAkB,WAAW,SAAAlB,GAC5B,EAAKF,WAAaE,CAClB,IACDmB,EAAQC,MAAR,WAAkBC,SAAlB,KAA8B,cAAeV,OAAOW,OAAO,CAAC,EAAGJ,EAAAA,aAC/DjB,KAAKH,WAAaoB,EAAAA,UAClB,EAEDX,cAfc,WAgBbW,EAAAA,KAAmB,UAAWjB,KAAKH,WACnC,qFCzCEyB,QAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACpC,EAAOqC,GAAI,qRAAwR,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,+CAA+C,MAAQ,GAAG,SAAW,qJAAqJ,eAAiB,CAAC,srCAAowC,WAAa,MAEz1D,4FCJIF,QAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACpC,EAAOqC,GAAI,uhGAAwhG,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,yCAAyC,mDAAmD,MAAQ,GAAG,SAAW,swBAAswB,eAAiB,CAAC,64DAA64D,u2FAAo7F,WAAa,MAEpzR,4FCJIF,QAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACpC,EAAOqC,GAAI,gxFAAixF,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,4CAA4C,yCAAyC,MAAQ,GAAG,SAAW,uxBAAuxB,eAAiB,CAAC,yqDAAqvD,+2CAA+2C,WAAa,MAE11N,yDCPA,wICmCA,MCnC6K,EDmC7K,CACA,oBACA,OACA,kBACA,YACA,aAGA,KARA,WASA,OACA,gBAEA,EACA,UAMA,iBANA,WAOA,gCACA,EAOA,SAfA,WAgBA,8BAGA,sBACA,EAQA,QA5BA,WA6BA,kEACA,GAMA,OACA,iBADA,WAEA,sBACA,GAEA,YAtDA,WAuDA,sBACA,EAEA,SAIA,gBAJA,WAIA,qJACA,kBACA,wBAFA,0CAIA,iDAJA,OAIA,EAJA,OAKA,yBALA,gDAOA,qDAPA,wOAUA,yIEhGIC,EAAU,CAAC,EAEfA,EAAQC,kBAAoB,IAC5BD,EAAQE,cAAgB,IAElBF,EAAQG,OAAS,SAAc,KAAM,QAE3CH,EAAQI,OAAS,IACjBJ,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKJ,KAAW,YAAiB,WCPlD,SAXgB,cACd,GJTW,WAAa,IAAIM,EAAI/B,KAASgC,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAQD,EAAW,QAAEG,EAAG,MAAM,CAACE,YAAY,gBAAgB,CAAEL,EAAoB,iBAAEG,EAAG,MAAM,CAACE,YAAY,eAAeC,SAAS,CAAC,UAAYN,EAAIO,GAAGP,EAAIQ,iBAAiBL,EAAG,MAAM,CAACE,YAAY,eAAeL,EAAIS,GAAG,KAAKN,EAAG,KAAK,CAACH,EAAIU,GAAG,YAAY,GAAGV,EAAIS,GAAG,KAAKN,EAAG,IAAI,CAACQ,WAAW,CAAC,CAACC,KAAK,OAAOC,QAAQ,SAASC,MAAOd,EAAIe,OAAW,KAAEC,WAAW,iBAAiB,CAAChB,EAAIU,GAAG,SAAS,KAAKV,EAAIiB,IAAI,GAC7c,IIWpB,EACA,KACA,KACA,MAI8B,uDCnBhC,eC0DA,MC1DiL,ED0DjL,CACA,wBAEA,OACA,MACA,YACA,uBAEA,IACA,YACA,aAEA,MACA,YACA,aAEA,MACA,YACA,aAEA,UACA,WACA,+BAIA,KA1BA,WA2BA,OACA,UACA,UAEA,EAEA,UAEA,QAFA,WAGA,kCACA,EAEA,SANA,WAOA,+BACA,EACA,UATA,WAUA,qEACA,EAOA,YAlBA,WAkBA,WACA,qBACA,4DACA,EAWA,GAhCA,WAmCA,IACA,EADA,YACA,mBAGA,qCACA,4BAEA,GAGA,SACA,eADA,YACA,wBAEA,iHACA,EACA,cALA,YAKA,eACA,mBACA,yIEpIIvB,EAAU,CAAC,EAEfA,EAAQC,kBAAoB,IAC5BD,EAAQE,cAAgB,IAElBF,EAAQG,OAAS,SAAc,KAAM,QAE3CH,EAAQI,OAAS,IACjBJ,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKJ,KAAW,YAAiB,WCPlD,SAXgB,cACd,GJTW,WAAa,IAAIM,EAAI/B,KAASgC,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAOE,EAAG,cAAc,CAACE,YAAY,SAASa,MAAM,CAAC,gBAAiBlB,EAAImB,SAASC,MAAM,CAAC,GAAKpB,EAAIqB,GAAG,aAAarB,EAAIsB,YAAY,CAACnB,EAAG,aAAa,CAACiB,MAAM,CAAC,KAAO,SAAS,CAACjB,EAAG,MAAM,CAACQ,WAAW,CAAC,CAACC,KAAK,OAAOC,QAAQ,SAASC,MAAOd,EAAU,OAAEgB,WAAW,WAAWX,YAAY,iBAAiBa,MAAO,wBAA2BlB,EAAIuB,YAAkB,OAAGH,MAAM,CAAC,KAAO,SAASpB,EAAIwB,GAAIxB,EAAe,aAAE,SAASyB,GAAM,OAAOtB,EAAG,MAAM,CAACuB,IAAID,EAAKE,OAAOP,MAAM,CAAC,IAAMpB,EAAI4B,eAAeH,GAAM,IAAM,IAAII,GAAG,CAAC,KAAO,SAASC,GAAQ9B,EAAI+B,QAAS,CAAI,EAAE,MAAQ,SAASD,GAAQ,OAAO9B,EAAIgC,cAAcP,EAAK,IAAI,IAAG,KAAKzB,EAAIS,GAAG,KAAKN,EAAG,MAAM,CAACE,YAAY,eAAe,CAACF,EAAG,OAAO,CAACE,YAAY,oBAAoBa,MAAM,CAAElB,EAAImB,QAAyB,YAAf,aAA4BnB,EAAIiC,MAAMb,MAAM,CAAC,KAAO,SAASpB,EAAIS,GAAG,KAAKN,EAAG,IAAI,CAACE,YAAY,oBAAoBe,MAAM,CAAC,GAAKpB,EAAIkC,WAAW,CAAClC,EAAIS,GAAG,WAAWT,EAAIO,GAAGP,EAAIY,MAAM,cAAcZ,EAAIS,GAAG,KAAKN,EAAG,MAAM,CAACE,YAAY,QAAQe,MAAM,CAAC,KAAO,WAAW,EAAE,GAC7hC,IIWpB,EACA,KACA,WACA,MAI8B,uDCnBhC,mCC6CA,MC7C2K,ED6C3K,CACA,kBAEA,YACA,sBACA,aAEA,gBAEA,OACA,UACA,YACA,aAEA,UACA,YACA,aAEA,aACA,aACA,YAEA,WACA,YACA,+BAIA,UACA,OADA,WAEA,yBACA,EACA,KAJA,WAKA,mBACA,eAEA,aACA,EACA,WAVA,WAWA,+BACA,QACA,kBACA,kCACA,IACA,WACA,EACA,WAlBA,WAmBA,wDACA,EACA,WArBA,WAsBA,4BACA,uDAEA,uDACA,EAUA,GApCA,WAuCA,IACA,EADA,YACA,yBAGA,gCACA,kBADA,oBAMA,aACA,SAIA,yEACA,GAGA,SACA,SADA,WAEA,0BACA,EACA,YAJA,WAKA,qCAEA,yIE/HI1B,EAAU,CAAC,EAEfA,EAAQC,kBAAoB,IAC5BD,EAAQE,cAAgB,IAElBF,EAAQG,OAAS,SAAc,KAAM,QAE3CH,EAAQI,OAAS,IACjBJ,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKJ,KAAW,YAAiB,WCPlD,SAXgB,cACd,GJTW,WAAa,IAAIM,EAAI/B,KAASgC,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACE,YAAY,oBAAoBa,MAAM,CAAC,0BAA2BlB,EAAImC,QAAQf,MAAM,CAAC,KAAO,YAAY,CAAGpB,EAAImC,OAAoMnC,EAAIiB,KAAhMd,EAAG,UAAU,CAACE,YAAY,2BAA2B,CAACF,EAAG,eAAe,CAACiB,MAAM,CAAC,KAAO,gBAAgBS,GAAG,CAAC,MAAQ7B,EAAIoC,WAAW,CAACpC,EAAIS,GAAG,WAAWT,EAAIO,GAAGP,EAAIqC,YAAY,aAAa,GAAYrC,EAAIS,GAAG,KAAKN,EAAG,KAAK,CAACE,YAAY,4BAA4B,CAACL,EAAIS,GAAG,SAAST,EAAIO,GAAGP,EAAIY,MAAM,UAAUZ,EAAIS,GAAG,MAAOT,EAAImC,QAAUnC,EAAIsC,YAAanC,EAAG,UAAU,CAACE,YAAY,4BAA4B,CAACF,EAAG,eAAe,CAACiB,MAAM,CAAC,KAAO,eAAeS,GAAG,CAAC,MAAQ7B,EAAIuC,cAAc,CAACvC,EAAIS,GAAG,WAAWT,EAAIO,GAAGP,EAAIwC,EAAE,SAAU,sBAAsB,aAAa,GAAGxC,EAAIiB,MAAM,EAAE,GACvwB,IIWpB,EACA,KACA,WACA,MAI8B,yBCnBhC,IAAIwB,EAAM,CACT,cAAe,CACd,MACA,sCAED,eAAgB,CACf,MACA,uCAED,eAAgB,CACf,MACA,wCAGF,SAASC,EAAoBC,GAC5B,IAAIC,EAAoBC,EAAEJ,EAAKE,GAC9B,OAAOG,QAAQC,UAAUC,MAAK,KAC7B,IAAIC,EAAI,IAAIC,MAAM,uBAAyBP,EAAM,KAEjD,MADAM,EAAEE,KAAO,mBACHF,CAAC,IAIT,IAAIG,EAAMX,EAAIE,GAAMlD,EAAK2D,EAAI,GAC7B,OAAOR,EAAoBK,EAAEG,EAAI,IAAIJ,MAAK,IAClCJ,EAAoBJ,EAAE/C,EAAI,KAEnC,CACAiD,EAAoB9D,KAAO,IAAOD,OAAOC,KAAK6D,GAC9CC,EAAoBjD,GAAK,MACzBrC,EAAOC,QAAUqF","sources":["webpack:///photos/src/assets/grid-sizes.js","webpack:///photos/src/services/GridConfig.js","webpack:///photos/src/mixins/GridConfig.js","webpack:///photos/src/components/EmptyContent.vue?vue&type=style&index=0&lang=scss&","webpack:///photos/src/components/FolderTagPreview.vue?vue&type=style&index=0&id=b8db2226&lang=scss&scoped=true&","webpack:///photos/src/components/Navigation.vue?vue&type=style&index=0&id=080cb7fa&lang=scss&scoped=true&","webpack:///photos/src/components/EmptyContent.vue?vue&type=template&id=b4c69d2c&","webpack:///photos/src/components/EmptyContent.vue","webpack:///photos/src/components/EmptyContent.vue?vue&type=script&lang=js&","webpack://photos/./src/components/EmptyContent.vue?7390","webpack://photos/./src/components/EmptyContent.vue?b265","webpack:///photos/src/components/FolderTagPreview.vue?vue&type=template&id=b8db2226&scoped=true&","webpack:///photos/src/components/FolderTagPreview.vue","webpack:///photos/src/components/FolderTagPreview.vue?vue&type=script&lang=js&","webpack://photos/./src/components/FolderTagPreview.vue?21a1","webpack://photos/./src/components/FolderTagPreview.vue?9d8b","webpack:///photos/src/components/Navigation.vue?vue&type=template&id=080cb7fa&scoped=true&","webpack:///photos/src/components/Navigation.vue","webpack:///photos/src/components/Navigation.vue?vue&type=script&lang=js&","webpack://photos/./src/components/Navigation.vue?d5b1","webpack://photos/./src/components/Navigation.vue?7f19","webpack:///photos/src/assets/Illustrations|lazy|/^\\.\\/.*\\.svg$/|groupOptions: {}|namespace object"],"sourcesContent":["/**\n * @copyright Copyright (c) 2018 John Molakvoæ \n *\n * @author John Molakvoæ \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 .\n *\n */\n\n// for now we want to keep the same gap everywhere\nconst gap = 8\n\n/**\n * Define the max width proportions\n * The number (key) indicate the MAX size\n *\n * needs to be compatible with webpack config\n * so no export default {}\n */\nmodule.exports = {\n\tsizes: {\n\t\t400: {\n\t\t\tmarginTop: 66,\n\t\t\tmarginW: gap,\n\t\t\tcount: 3,\n\t\t\tgap,\n\t\t},\n\t\t700: {\n\t\t\tmarginTop: 66,\n\t\t\tmarginW: gap,\n\t\t\tcount: 4,\n\t\t\tgap,\n\t\t},\n\t\t1024: {\n\t\t\tmarginTop: 66,\n\t\t\tmarginW: 44,\n\t\t\tcount: 5,\n\t\t\tgap,\n\t\t},\n\t\t1280: {\n\t\t\tmarginTop: 66,\n\t\t\tmarginW: 44,\n\t\t\tcount: 4,\n\t\t\tgap,\n\t\t},\n\t\t1440: {\n\t\t\tmarginTop: 88,\n\t\t\tmarginW: 66,\n\t\t\tcount: 5,\n\t\t\tgap,\n\t\t},\n\t\t1600: {\n\t\t\tmarginTop: 88,\n\t\t\tmarginW: 66,\n\t\t\tcount: 6,\n\t\t\tgap,\n\t\t},\n\t\t2048: {\n\t\t\tmarginTop: 88,\n\t\t\tmarginW: 66,\n\t\t\tcount: 7,\n\t\t\tgap,\n\t\t},\n\t\t2560: {\n\t\t\tmarginTop: 88,\n\t\t\tmarginW: 88,\n\t\t\tcount: 8,\n\t\t\tgap,\n\t\t},\n\t\t3440: {\n\t\t\tmarginTop: 88,\n\t\t\tmarginW: 88,\n\t\t\tcount: 9,\n\t\t\tgap,\n\t\t},\n\t\tmax: {\n\t\t\tmarginTop: 88,\n\t\t\tmarginW: 88,\n\t\t\tcount: 10,\n\t\t\tgap,\n\t\t},\n\t},\n}\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ \n *\n * @author John Molakvoæ \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 .\n *\n */\n\nimport Vue from 'vue'\nimport { sizes } from '../assets/grid-sizes'\n\nexport default new Vue({\n\tdata() {\n\t\treturn {\n\t\t\tgridConfig: sizes.max,\n\t\t}\n\t},\n\twatch: {\n\t\tgridConfig(val) {\n\t\t\tthis.$emit('changed', val)\n\t\t},\n\t},\n\tcreated() {\n\t\twindow.addEventListener('resize', this.handleWindowResize)\n\t\tthis.handleWindowResize()\n\t},\n\tbeforeDestroy() {\n\t\twindow.removeEventListener('resize', this.handleWindowResize)\n\t},\n\tmethods: {\n\t\thandleWindowResize() {\n\t\t\t// find the first grid size that fit the current window width\n\t\t\tconst currentSize = Object.keys(sizes).find(size => size > document.documentElement.clientWidth)\n\t\t\tthis.gridConfig = sizes[currentSize] || sizes.max\n\t\t},\n\t},\n})\n","/**\n * @copyright Copyright (c) 2018 John Molakvoæ \n *\n * @author John Molakvoæ \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 .\n *\n */\n\nimport getGridConfig from '../services/GridConfig'\n\n/**\n * Get the current used grid config\n */\nexport default {\n\tdata() {\n\t\treturn {\n\t\t\tgridConfig: {},\n\t\t}\n\t},\n\n\tcreated() {\n\t\tgetGridConfig.$on('changed', val => {\n\t\t\tthis.gridConfig = val\n\t\t})\n\t\tconsole.debug(`[${appName}]`, 'Grid config', Object.assign({}, getGridConfig.gridConfig))\n\t\tthis.gridConfig = getGridConfig.gridConfig\n\t},\n\n\tbeforeDestroy() {\n\t\tgetGridConfig.$off('changed', this.gridConfig)\n\t},\n}\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".emptycontent{grid-column:1/-1;margin-top:20vh}.illustration{min-width:200px;max-width:15%;width:300px;margin:auto;margin-bottom:20px;position:relative}.illustration svg{width:100%;height:100%;max-height:40vh}.illustration [fill*=\\\"6c63ff\\\"]{fill:var(--color-primary-element)}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/EmptyContent.vue\"],\"names\":[],\"mappings\":\"AAmHA,cAEC,gBAAA,CACA,eAAA,CAGD,cACC,eAAA,CACA,aAAA,CACA,WAAA,CACA,WAAA,CACA,kBAAA,CACA,iBAAA,CAEA,kBACC,UAAA,CACA,WAAA,CACA,eAAA,CAID,+BACC,iCAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.emptycontent {\\n\\t// span all the available columns\\n\\tgrid-column: 1/-1;\\n\\tmargin-top: 20vh;\\n}\\n\\n.illustration {\\n\\tmin-width: 200px;\\n\\tmax-width: 15%;\\n\\twidth: 300px;\\n\\tmargin: auto;\\n\\tmargin-bottom: 20px;\\n\\tposition: relative;\\n\\n\\tsvg {\\n\\t\\twidth: 100%;\\n\\t\\theight: 100%;\\n\\t\\tmax-height: 40vh;\\n\\t}\\n\\n\\t// change colour of illustration\\n\\t[fill*='6c63ff'] {\\n\\t\\tfill: var(--color-primary-element);\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".file[data-v-b8db2226],.folder[data-v-b8db2226]{position:relative;display:flex;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none;border-radius:var(--border-radius);overflow:hidden}.file .cover[data-v-b8db2226],.folder .cover[data-v-b8db2226]{z-index:2;width:100%;padding-bottom:100%;transition:opacity var(--animation-quick) ease-in-out;opacity:0;background-color:var(--color-main-text)}.file.active .cover[data-v-b8db2226],.file:active .cover[data-v-b8db2226],.file:hover .cover[data-v-b8db2226],.file:focus .cover[data-v-b8db2226],.folder.active .cover[data-v-b8db2226],.folder:active .cover[data-v-b8db2226],.folder:hover .cover[data-v-b8db2226],.folder:focus .cover[data-v-b8db2226]{opacity:.3}.file--clear.active .cover[data-v-b8db2226],.file--clear:active .cover[data-v-b8db2226],.file--clear:hover .cover[data-v-b8db2226],.file--clear:focus .cover[data-v-b8db2226],.folder--clear.active .cover[data-v-b8db2226],.folder--clear:active .cover[data-v-b8db2226],.folder--clear:hover .cover[data-v-b8db2226],.folder--clear:focus .cover[data-v-b8db2226]{opacity:.1}.fade-enter-active[data-v-b8db2226],.fade-leave-active[data-v-b8db2226]{transition:opacity var(--animation-quick) ease-in-out}.fade-enter[data-v-b8db2226],.fade-leave-to[data-v-b8db2226]{opacity:0}.folder-content[data-v-b8db2226]{position:absolute;display:grid;width:100%;height:100%}.folder-content--grid-1[data-v-b8db2226]{grid-template-columns:1fr;grid-template-rows:1fr}.folder-content--grid-2[data-v-b8db2226]{grid-template-columns:1fr;grid-template-rows:1fr 1fr}.folder-content--grid-3[data-v-b8db2226]{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}.folder-content--grid-3 img[data-v-b8db2226]:first-child{grid-column:span 2}.folder-content--grid-4[data-v-b8db2226]{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}.folder-content img[data-v-b8db2226]{width:100%;height:100%;object-fit:cover}.folder-name[data-v-b8db2226]{position:absolute;z-index:3;display:flex;overflow:hidden;flex-direction:column;width:100%;height:100%;transition:opacity var(--animation-quick) ease-in-out;opacity:1}.folder-name__icon[data-v-b8db2226]{height:40%;margin-top:calc(30% - 1rem / 2);background-size:40%}.folder-name__name[data-v-b8db2226]{overflow:hidden;height:1rem;padding:0 10px;text-align:center;white-space:nowrap;text-overflow:ellipsis;color:var(--color-main-background);text-shadow:0 0 8px var(--color-main-text);font-size:1rem;line-height:1rem}.folder--clear .folder-name__icon[data-v-b8db2226]{opacity:.3}.folder--clear .folder-name__name[data-v-b8db2226]{color:var(--color-main-text);text-shadow:0 0 8px var(--color-main-background)}.folder:not(.folder--clear) .cover[data-v-b8db2226]{opacity:.3}.folder:not(.folder--clear):active .folder-name[data-v-b8db2226],.folder:not(.folder--clear):active .cover[data-v-b8db2226],.folder:not(.folder--clear):hover .folder-name[data-v-b8db2226],.folder:not(.folder--clear):hover .cover[data-v-b8db2226],.folder:not(.folder--clear):focus .folder-name[data-v-b8db2226],.folder:not(.folder--clear):focus .cover[data-v-b8db2226]{opacity:0}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/mixins/FileFolder.scss\",\"webpack://./src/components/FolderTagPreview.vue\"],\"names\":[],\"mappings\":\"AAsBA,gDAEC,iBAAA,CACA,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,wBAAA,CAAA,gBAAA,CACA,kCAAA,CACA,eAAA,CAEA,8DACC,SAAA,CAMA,UAAA,CACA,mBAAA,CACA,qDAAA,CACA,SAAA,CACA,uCAAA,CAOA,4SACC,UAAA,CAQD,oWACC,UAAA,CAKH,wEACC,qDAAA,CAGD,6DACC,SAAA,CCkFD,iCACC,iBAAA,CACA,YAAA,CACA,UAAA,CACA,WAAA,CAEA,yCACC,yBAAA,CACA,sBAAA,CAED,yCACC,yBAAA,CACA,0BAAA,CAED,yCACC,6BAAA,CACA,0BAAA,CACA,yDACC,kBAAA,CAGF,yCACC,6BAAA,CACA,0BAAA,CAED,qCACC,UAAA,CACA,WAAA,CAEA,gBAAA,CAMF,8BACC,iBAAA,CACA,SAAA,CACA,YAAA,CACA,eAAA,CACA,qBAAA,CACA,UAAA,CACA,WAAA,CACA,qDAAA,CACA,SAAA,CACA,oCACC,UAAA,CACA,+BAAA,CACA,mBAAA,CAED,oCACC,eAAA,CACA,WAnBY,CAoBZ,cAAA,CACA,iBAAA,CACA,kBAAA,CACA,sBAAA,CACA,kCAAA,CACA,0CAAA,CACA,cA1BY,CA2BZ,gBA3BY,CAmCZ,mDACC,UAAA,CAED,mDACC,4BAAA,CACA,gDAAA,CAQD,oDACC,UAAA,CAQA,gXAEC,SAAA\",\"sourcesContent\":[\"/**\\n * @copyright Copyright (c) 2019 John Molakvoæ \\n *\\n * @author John Molakvoæ \\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 .\\n *\\n */\\n\\n.file,\\n.folder {\\n\\tposition: relative;\\n\\tdisplay: flex;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n\\tuser-select: none;\\n\\tborder-radius: var(--border-radius);\\n\\toverflow: hidden;\\n\\n\\t.cover {\\n\\t\\tz-index: 2;\\n\\t\\t// We want nice squares despite anything that is in it.\\n\\t\\t// The .cover is what makes the exact square size of the grid.\\n\\t\\t// We use padding-bottom because padding with percentage\\n\\t\\t// always refers to the width. And we only want to fit\\n\\t\\t// the css grid's width.\\n\\t\\twidth: 100%;\\n\\t\\tpadding-bottom: 100%;\\n\\t\\ttransition: opacity var(--animation-quick) ease-in-out;\\n\\t\\topacity: 0;\\n\\t\\tbackground-color: var(--color-main-text);\\n\\t}\\n\\n\\t&.active,\\n\\t&:active,\\n\\t&:hover,\\n\\t&:focus {\\n\\t\\t.cover {\\n\\t\\t\\topacity: .3;\\n\\t\\t}\\n\\t}\\n\\n\\t&--clear.active,\\n\\t&--clear:active,\\n\\t&--clear:hover,\\n\\t&--clear:focus {\\n\\t\\t.cover {\\n\\t\\t\\topacity: .1;\\n\\t\\t}\\n\\t}\\n}\\n\\n.fade-enter-active, .fade-leave-active {\\n\\ttransition: opacity var(--animation-quick) ease-in-out;\\n}\\n\\n.fade-enter, .fade-leave-to {\\n\\topacity: 0;\\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@import '../mixins/FileFolder';\\n\\n.folder-content {\\n\\tposition: absolute;\\n\\tdisplay: grid;\\n\\twidth: 100%;\\n\\theight: 100%;\\n\\t// folder layout if less than 4 pictures\\n\\t&--grid-1 {\\n\\t\\tgrid-template-columns: 1fr;\\n\\t\\tgrid-template-rows: 1fr;\\n\\t}\\n\\t&--grid-2 {\\n\\t\\tgrid-template-columns: 1fr;\\n\\t\\tgrid-template-rows: 1fr 1fr;\\n\\t}\\n\\t&--grid-3 {\\n\\t\\tgrid-template-columns: 1fr 1fr;\\n\\t\\tgrid-template-rows: 1fr 1fr;\\n\\t\\timg:first-child {\\n\\t\\t\\tgrid-column: span 2;\\n\\t\\t}\\n\\t}\\n\\t&--grid-4 {\\n\\t\\tgrid-template-columns: 1fr 1fr;\\n\\t\\tgrid-template-rows: 1fr 1fr;\\n\\t}\\n\\timg {\\n\\t\\twidth: 100%;\\n\\t\\theight: 100%;\\n\\n\\t\\tobject-fit: cover;\\n\\t}\\n}\\n\\n$name-height: 1rem;\\n\\n.folder-name {\\n\\tposition: absolute;\\n\\tz-index: 3;\\n\\tdisplay: flex;\\n\\toverflow: hidden;\\n\\tflex-direction: column;\\n\\twidth: 100%;\\n\\theight: 100%;\\n\\ttransition: opacity var(--animation-quick) ease-in-out;\\n\\topacity: 1;\\n\\t&__icon {\\n\\t\\theight: 40%;\\n\\t\\tmargin-top: calc(30% - #{$name-height} / 2); // center name+icon\\n\\t\\tbackground-size: 40%;\\n\\t}\\n\\t&__name {\\n\\t\\toverflow: hidden;\\n\\t\\theight: $name-height;\\n\\t\\tpadding: 0 10px;\\n\\t\\ttext-align: center;\\n\\t\\twhite-space: nowrap;\\n\\t\\ttext-overflow: ellipsis;\\n\\t\\tcolor: var(--color-main-background);\\n\\t\\ttext-shadow: 0 0 8px var(--color-main-text);\\n\\t\\tfont-size: $name-height;\\n\\t\\tline-height: $name-height;\\n\\t}\\n}\\n\\n// Cover management empty/full\\n.folder {\\n\\t// if no img, let's display the folder icon as default black\\n\\t&--clear {\\n\\t\\t.folder-name__icon {\\n\\t\\t\\topacity: .3;\\n\\t\\t}\\n\\t\\t.folder-name__name {\\n\\t\\t\\tcolor: var(--color-main-text);\\n\\t\\t\\ttext-shadow: 0 0 8px var(--color-main-background);\\n\\t\\t}\\n\\t}\\n\\n\\t// show the cover as background\\n\\t// if there are pictures in it\\n\\t// so we can sho the folder+name above it\\n\\t&:not(.folder--clear) {\\n\\t\\t.cover {\\n\\t\\t\\topacity: .3;\\n\\t\\t}\\n\\n\\t\\t// hide everything but pictures\\n\\t\\t// on hover/active/focus\\n\\t\\t&:active,\\n\\t\\t&:hover,\\n\\t\\t&:focus {\\n\\t\\t\\t.folder-name,\\n\\t\\t\\t.cover {\\n\\t\\t\\t\\topacity: 0;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".icon-confirm[data-v-080cb7fa]{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.photos-navigation[data-v-080cb7fa]{display:flex;position:block;height:44px;padding:0 40px;align-items:center;max-width:100%}.photos-navigation__title[data-v-080cb7fa]{margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.photos-navigation__share[data-v-080cb7fa]{margin-left:10px}.photos-navigation__back[data-v-080cb7fa],.photos-navigation__share[data-v-080cb7fa]{flex-grow:0;flex-shrink:0}@media(min-width: 0px)and (max-width: 400px){.photos-navigation[data-v-080cb7fa]{margin-top:-7.3333333333px}.photos-navigation--root .photos-navigation__title[data-v-080cb7fa]{padding-left:-36px}}@media(min-width: 400px)and (max-width: 700px){.photos-navigation[data-v-080cb7fa]{margin-top:-7.3333333333px}.photos-navigation--root .photos-navigation__title[data-v-080cb7fa]{padding-left:-36px}}@media(min-width: 700px)and (max-width: 1024px){.photos-navigation[data-v-080cb7fa]{margin-top:-7.3333333333px}.photos-navigation__back[data-v-080cb7fa]{margin:0 0px}.photos-navigation--root .photos-navigation__title[data-v-080cb7fa]{padding-left:0px}}@media(min-width: 1024px)and (max-width: 1280px){.photos-navigation[data-v-080cb7fa]{margin-top:-7.3333333333px}.photos-navigation__back[data-v-080cb7fa]{margin:0 0px}.photos-navigation--root .photos-navigation__title[data-v-080cb7fa]{padding-left:0px}}@media(min-width: 1280px)and (max-width: 1440px){.photos-navigation[data-v-080cb7fa]{margin-top:0px}.photos-navigation__back[data-v-080cb7fa]{margin:0 11px}.photos-navigation--root .photos-navigation__title[data-v-080cb7fa]{padding-left:22px}}@media(min-width: 1440px)and (max-width: 1600px){.photos-navigation[data-v-080cb7fa]{margin-top:0px}.photos-navigation__back[data-v-080cb7fa]{margin:0 11px}.photos-navigation--root .photos-navigation__title[data-v-080cb7fa]{padding-left:22px}}@media(min-width: 1600px)and (max-width: 2048px){.photos-navigation[data-v-080cb7fa]{margin-top:0px}.photos-navigation__back[data-v-080cb7fa]{margin:0 11px}.photos-navigation--root .photos-navigation__title[data-v-080cb7fa]{padding-left:22px}}@media(min-width: 2048px)and (max-width: 2560px){.photos-navigation[data-v-080cb7fa]{margin-top:0px}.photos-navigation__back[data-v-080cb7fa]{margin:0 22px}.photos-navigation--root .photos-navigation__title[data-v-080cb7fa]{padding-left:44px}}@media(min-width: 2560px)and (max-width: 3440px){.photos-navigation[data-v-080cb7fa]{margin-top:0px}.photos-navigation__back[data-v-080cb7fa]{margin:0 22px}.photos-navigation--root .photos-navigation__title[data-v-080cb7fa]{padding-left:44px}}@media(min-width: 3440px){.photos-navigation[data-v-080cb7fa]{margin-top:0px}.photos-navigation__back[data-v-080cb7fa]{margin:0 22px}.photos-navigation--root .photos-navigation__title[data-v-080cb7fa]{padding-left:44px}}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/Navigation.vue\",\"webpack://./src/mixins/GridSizes.scss\"],\"names\":[],\"mappings\":\"AAoJA,+BACC,gCAAA,CAAA,wBAAA,CAGD,oCACC,YAAA,CACA,cAAA,CACA,WAAA,CACA,cAAA,CACA,kBAAA,CACA,cAAA,CACA,2CACC,QAAA,CACA,kBAAA,CACA,eAAA,CACA,sBAAA,CAED,2CACC,gBAAA,CAED,qFAEC,WAAA,CACA,aAAA,CCvIC,6CDoHH,oCAyBE,0BAAA,CAOA,oEACC,kBAAA,CAAA,CCrJA,+CDoHH,oCAyBE,0BAAA,CAOA,oEACC,kBAAA,CAAA,CCrJA,gDDoHH,oCAyBE,0BAAA,CAGC,0CACC,YAAA,CAGF,oEACC,gBAAA,CAAA,CCrJA,iDDoHH,oCAyBE,0BAAA,CAGC,0CACC,YAAA,CAGF,oEACC,gBAAA,CAAA,CCrJA,iDDoHH,oCAyBE,cAAA,CAGC,0CACC,aAAA,CAGF,oEACC,iBAAA,CAAA,CCrJA,iDDoHH,oCAyBE,cAAA,CAGC,0CACC,aAAA,CAGF,oEACC,iBAAA,CAAA,CCrJA,iDDoHH,oCAyBE,cAAA,CAGC,0CACC,aAAA,CAGF,oEACC,iBAAA,CAAA,CCrJA,iDDoHH,oCAyBE,cAAA,CAGC,0CACC,aAAA,CAGF,oEACC,iBAAA,CAAA,CCrJA,iDDoHH,oCAyBE,cAAA,CAGC,0CACC,aAAA,CAGF,oEACC,iBAAA,CAAA,CCzJA,0BDwHH,oCAyBE,cAAA,CAGC,0CACC,aAAA,CAGF,oEACC,iBAAA,CAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n@use 'sass:math';\\n@import '../mixins/GridSizes';\\n\\n.icon-confirm {\\n\\ttransform: rotate(180deg)\\n}\\n\\n.photos-navigation {\\n\\tdisplay: flex;\\n\\tposition: block;\\n\\theight: 44px;\\n\\tpadding: 0 40px;\\n\\talign-items: center;\\n\\tmax-width: 100%;\\n\\t&__title {\\n\\t\\tmargin: 0;\\n\\t\\twhite-space: nowrap;\\n\\t\\toverflow: hidden;\\n\\t\\ttext-overflow: ellipsis;\\n\\t}\\n\\t&__share {\\n\\t\\tmargin-left: 10px;\\n\\t}\\n\\t&__back,\\n\\t&__share {\\n\\t\\tflex-grow: 0;\\n\\t\\tflex-shrink: 0;\\n\\t}\\n\\n\\t// Specific grid spacing\\n\\t@include grid-sizes using ($marginTop, $marginW) {\\n\\t\\t// we space this with 2/3 margin top, 1/3 margin bottom\\n\\t\\tmargin-top: math.div($marginTop - 44px * 2, 3);\\n\\n\\t\\t@if $marginW >= 44px {\\n\\t\\t\\t&__back {\\n\\t\\t\\t\\tmargin: 0 math.div($marginW - 44px, 2);\\n\\t\\t\\t}\\n\\t\\t}\\n\\t\\t&--root &__title {\\n\\t\\t\\tpadding-left: #{$marginW - 44}px;\\n\\t\\t}\\n\\t}\\n}\\n\",\"/**\\n * @copyright Copyright (c) 2019 John Molakvoæ \\n *\\n * @author John Molakvoæ \\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 .\\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\"],\"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.isReady)?_c('div',{staticClass:\"emptycontent\"},[(_vm.haveIllustration)?_c('div',{staticClass:\"illustration\",domProps:{\"innerHTML\":_vm._s(_vm.illustration)}}):_c('div',{staticClass:\"icon-error\"}),_vm._v(\" \"),_c('h2',[_vm._t(\"default\")],2),_vm._v(\" \"),_c('p',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.$slots.desc),expression:\"$slots.desc\"}]},[_vm._t(\"desc\")],2)]):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EmptyContent.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!./EmptyContent.vue?vue&type=script&lang=js&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./EmptyContent.vue?vue&type=style&index=0&lang=scss&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./EmptyContent.vue?vue&type=style&index=0&lang=scss&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./EmptyContent.vue?vue&type=template&id=b4c69d2c&\"\nimport script from \"./EmptyContent.vue?vue&type=script&lang=js&\"\nexport * from \"./EmptyContent.vue?vue&type=script&lang=js&\"\nimport style0 from \"./EmptyContent.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('router-link',{staticClass:\"folder\",class:{'folder--clear': _vm.isEmpty},attrs:{\"to\":_vm.to,\"aria-label\":_vm.ariaLabel}},[_c('transition',{attrs:{\"name\":\"fade\"}},[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.loaded),expression:\"loaded\"}],staticClass:\"folder-content\",class:(\"folder-content--grid-\" + (_vm.previewList.length)),attrs:{\"role\":\"none\"}},_vm._l((_vm.previewList),function(file){return _c('img',{key:file.fileid,attrs:{\"src\":_vm.generateImgSrc(file),\"alt\":\"\"},on:{\"load\":function($event){_vm.loaded = true},\"error\":function($event){return _vm.onPreviewFail(file)}}})}),0)]),_vm._v(\" \"),_c('div',{staticClass:\"folder-name\"},[_c('span',{staticClass:\"folder-name__icon\",class:[!_vm.isEmpty ? 'icon-white' : 'icon-dark', _vm.icon],attrs:{\"role\":\"img\"}}),_vm._v(\" \"),_c('p',{staticClass:\"folder-name__name\",attrs:{\"id\":_vm.ariaUuid}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.name)+\"\\n\\t\\t\")])]),_vm._v(\" \"),_c('div',{staticClass:\"cover\",attrs:{\"role\":\"none\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FolderTagPreview.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!./FolderTagPreview.vue?vue&type=script&lang=js&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./FolderTagPreview.vue?vue&type=style&index=0&id=b8db2226&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./FolderTagPreview.vue?vue&type=style&index=0&id=b8db2226&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FolderTagPreview.vue?vue&type=template&id=b8db2226&scoped=true&\"\nimport script from \"./FolderTagPreview.vue?vue&type=script&lang=js&\"\nexport * from \"./FolderTagPreview.vue?vue&type=script&lang=js&\"\nimport style0 from \"./FolderTagPreview.vue?vue&type=style&index=0&id=b8db2226&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 \"b8db2226\",\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:\"photos-navigation\",class:{'photos-navigation--root': _vm.isRoot},attrs:{\"role\":\"toolbar\"}},[(!_vm.isRoot)?_c('Actions',{staticClass:\"photos-navigation__back\"},[_c('ActionButton',{attrs:{\"icon\":\"icon-confirm\"},on:{\"click\":_vm.folderUp}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.backToText)+\"\\n\\t\\t\")])],1):_vm._e(),_vm._v(\" \"),_c('h2',{staticClass:\"photos-navigation__title\"},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.name)+\"\\n\\t\")]),_vm._v(\" \"),(!_vm.isRoot && _vm.showActions)?_c('Actions',{staticClass:\"photos-navigation__share\"},[_c('ActionButton',{attrs:{\"icon\":\"icon-shared\"},on:{\"click\":_vm.showSidebar}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('photos', 'Share this folder'))+\"\\n\\t\\t\")])],1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Navigation.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!./Navigation.vue?vue&type=script&lang=js&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./Navigation.vue?vue&type=style&index=0&id=080cb7fa&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./Navigation.vue?vue&type=style&index=0&id=080cb7fa&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Navigation.vue?vue&type=template&id=080cb7fa&scoped=true&\"\nimport script from \"./Navigation.vue?vue&type=script&lang=js&\"\nexport * from \"./Navigation.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Navigation.vue?vue&type=style&index=0&id=080cb7fa&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 \"080cb7fa\",\n null\n \n)\n\nexport default component.exports","var map = {\n\t\"./empty.svg\": [\n\t\t51612,\n\t\t\"src_assets_Illustrations_empty_svg\"\n\t],\n\t\"./folder.svg\": [\n\t\t80917,\n\t\t\"src_assets_Illustrations_folder_svg\"\n\t],\n\t\"./images.svg\": [\n\t\t39777,\n\t\t\"src_assets_Illustrations_images_svg\"\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(() => {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\n\tvar ids = map[req], id = ids[0];\n\treturn __webpack_require__.e(ids[1]).then(() => {\n\t\treturn __webpack_require__.t(id, 1 | 16);\n\t});\n}\nwebpackAsyncContext.keys = () => (Object.keys(map));\nwebpackAsyncContext.id = 57767;\nmodule.exports = webpackAsyncContext;"],"names":["module","exports","sizes","marginTop","marginW","count","gap","max","Vue","data","gridConfig","watch","val","this","$emit","created","window","addEventListener","handleWindowResize","beforeDestroy","removeEventListener","methods","currentSize","Object","keys","find","size","document","documentElement","clientWidth","getGridConfig","console","debug","appName","assign","___CSS_LOADER_EXPORT___","push","id","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","_vm","_h","$createElement","_c","_self","staticClass","domProps","_s","illustration","_v","_t","directives","name","rawName","value","$slots","expression","_e","class","isEmpty","attrs","to","ariaLabel","previewList","_l","file","key","fileid","generateImgSrc","on","$event","loaded","onPreviewFail","icon","ariaUuid","isRoot","folderUp","backToText","showActions","showSidebar","t","map","webpackAsyncContext","req","__webpack_require__","o","Promise","resolve","then","e","Error","code","ids"],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-src_mixins_GridConfig_js-src_utils_CancelableRequest_js-src_components_EmptyContent_vue-src_c-c08051.js b/js/photos-src_mixins_GridConfig_js-src_utils_CancelableRequest_js-src_components_EmptyContent_vue-src_c-c08051.js deleted file mode 100644 index 357ad0b6b..000000000 --- a/js/photos-src_mixins_GridConfig_js-src_utils_CancelableRequest_js-src_components_EmptyContent_vue-src_c-c08051.js +++ /dev/null @@ -1,3 +0,0 @@ -/*! For license information please see photos-src_mixins_GridConfig_js-src_utils_CancelableRequest_js-src_components_EmptyContent_vue-src_c-c08051.js.LICENSE.txt */ -(self.webpackChunkphotos=self.webpackChunkphotos||[]).push([["src_mixins_GridConfig_js-src_utils_CancelableRequest_js-src_components_EmptyContent_vue-src_c-c08051"],{16897:n=>{n.exports={sizes:{400:{marginTop:66,marginW:8,count:3,gap:8},700:{marginTop:66,marginW:8,count:4,gap:8},1024:{marginTop:66,marginW:44,count:5,gap:8},1280:{marginTop:66,marginW:44,count:4,gap:8},1440:{marginTop:88,marginW:66,count:5,gap:8},1600:{marginTop:88,marginW:66,count:6,gap:8},2048:{marginTop:88,marginW:66,count:7,gap:8},2560:{marginTop:88,marginW:88,count:8,gap:8},3440:{marginTop:88,marginW:88,count:9,gap:8},max:{marginTop:88,marginW:88,count:10,gap:8}}}},85324:(n,t,e)=>{"use strict";e.d(t,{Z:()=>s});var a=e(20144),i=e(16897);const o=new a.ZP({data:function(){return{gridConfig:i.sizes.max}},watch:{gridConfig:function(n){this.$emit("changed",n)}},created:function(){window.addEventListener("resize",this.handleWindowResize),this.handleWindowResize()},beforeDestroy:function(){window.removeEventListener("resize",this.handleWindowResize)},methods:{handleWindowResize:function(){var n=Object.keys(i.sizes).find((function(n){return n>document.documentElement.clientWidth}));this.gridConfig=i.sizes[n]||i.sizes.max}}});var r=e(25108);const s={data:function(){return{gridConfig:{}}},created:function(){var n=this;o.$on("changed",(function(t){n.gridConfig=t})),r.debug("[".concat("photos","]"),"Grid config",Object.assign({},o.gridConfig)),this.gridConfig=o.gridConfig},beforeDestroy:function(){o.$off("changed",this.gridConfig)}}},4615:(n,t,e)=>{"use strict";e.d(t,{Z:()=>o});var a=e(26937);function i(n,t,e,a,i,o,r){try{var s=n[o](r),A=s.value}catch(n){return void e(n)}s.done?t(A):Promise.resolve(A).then(a,i)}const o=function(n){var t=a.Z.CancelToken.source(),e=function(){var e,a=(e=regeneratorRuntime.mark((function e(a,i){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",n(a,Object.assign({cancelToken:t.token},i)));case 1:case"end":return e.stop()}}),e)})),function(){var n=this,t=arguments;return new Promise((function(a,o){var r=e.apply(n,t);function s(n){i(r,a,o,s,A,"next",n)}function A(n){i(r,a,o,s,A,"throw",n)}s(void 0)}))});return function(n,t){return a.apply(this,arguments)}}();return{request:e,cancel:t.cancel}}},86228:(n,t,e)=>{"use strict";e.d(t,{Z:()=>s});var a=e(87537),i=e.n(a),o=e(23645),r=e.n(o)()(i());r.push([n.id,'.emptycontent{grid-column:1/-1;margin-top:20vh}.illustration{min-width:200px;max-width:15%;width:300px;margin:auto;margin-bottom:20px;position:relative}.illustration svg{width:100%;height:100%;max-height:40vh}.illustration [fill*="6c63ff"]{fill:var(--color-primary-element)}',"",{version:3,sources:["webpack://./src/components/EmptyContent.vue"],names:[],mappings:"AAmHA,cAEC,gBAAA,CACA,eAAA,CAGD,cACC,eAAA,CACA,aAAA,CACA,WAAA,CACA,WAAA,CACA,kBAAA,CACA,iBAAA,CAEA,kBACC,UAAA,CACA,WAAA,CACA,eAAA,CAID,+BACC,iCAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.emptycontent {\n\t// span all the available columns\n\tgrid-column: 1/-1;\n\tmargin-top: 20vh;\n}\n\n.illustration {\n\tmin-width: 200px;\n\tmax-width: 15%;\n\twidth: 300px;\n\tmargin: auto;\n\tmargin-bottom: 20px;\n\tposition: relative;\n\n\tsvg {\n\t\twidth: 100%;\n\t\theight: 100%;\n\t\tmax-height: 40vh;\n\t}\n\n\t// change colour of illustration\n\t[fill*=\'6c63ff\'] {\n\t\tfill: var(--color-primary-element);\n\t}\n}\n'],sourceRoot:""}]);const s=r},10369:(n,t,e)=>{"use strict";e.d(t,{Z:()=>s});var a=e(87537),i=e.n(a),o=e(23645),r=e.n(o)()(i());r.push([n.id,".file[data-v-b8db2226],.folder[data-v-b8db2226]{position:relative;display:flex;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none;border-radius:var(--border-radius);overflow:hidden}.file .cover[data-v-b8db2226],.folder .cover[data-v-b8db2226]{z-index:2;width:100%;padding-bottom:100%;transition:opacity var(--animation-quick) ease-in-out;opacity:0;background-color:var(--color-main-text)}.file.active .cover[data-v-b8db2226],.file:active .cover[data-v-b8db2226],.file:hover .cover[data-v-b8db2226],.file:focus .cover[data-v-b8db2226],.folder.active .cover[data-v-b8db2226],.folder:active .cover[data-v-b8db2226],.folder:hover .cover[data-v-b8db2226],.folder:focus .cover[data-v-b8db2226]{opacity:.3}.file--clear.active .cover[data-v-b8db2226],.file--clear:active .cover[data-v-b8db2226],.file--clear:hover .cover[data-v-b8db2226],.file--clear:focus .cover[data-v-b8db2226],.folder--clear.active .cover[data-v-b8db2226],.folder--clear:active .cover[data-v-b8db2226],.folder--clear:hover .cover[data-v-b8db2226],.folder--clear:focus .cover[data-v-b8db2226]{opacity:.1}.fade-enter-active[data-v-b8db2226],.fade-leave-active[data-v-b8db2226]{transition:opacity var(--animation-quick) ease-in-out}.fade-enter[data-v-b8db2226],.fade-leave-to[data-v-b8db2226]{opacity:0}.folder-content[data-v-b8db2226]{position:absolute;display:grid;width:100%;height:100%}.folder-content--grid-1[data-v-b8db2226]{grid-template-columns:1fr;grid-template-rows:1fr}.folder-content--grid-2[data-v-b8db2226]{grid-template-columns:1fr;grid-template-rows:1fr 1fr}.folder-content--grid-3[data-v-b8db2226]{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}.folder-content--grid-3 img[data-v-b8db2226]:first-child{grid-column:span 2}.folder-content--grid-4[data-v-b8db2226]{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}.folder-content img[data-v-b8db2226]{width:100%;height:100%;object-fit:cover}.folder-name[data-v-b8db2226]{position:absolute;z-index:3;display:flex;overflow:hidden;flex-direction:column;width:100%;height:100%;transition:opacity var(--animation-quick) ease-in-out;opacity:1}.folder-name__icon[data-v-b8db2226]{height:40%;margin-top:calc(30% - 1rem / 2);background-size:40%}.folder-name__name[data-v-b8db2226]{overflow:hidden;height:1rem;padding:0 10px;text-align:center;white-space:nowrap;text-overflow:ellipsis;color:var(--color-main-background);text-shadow:0 0 8px var(--color-main-text);font-size:1rem;line-height:1rem}.folder--clear .folder-name__icon[data-v-b8db2226]{opacity:.3}.folder--clear .folder-name__name[data-v-b8db2226]{color:var(--color-main-text);text-shadow:0 0 8px var(--color-main-background)}.folder:not(.folder--clear) .cover[data-v-b8db2226]{opacity:.3}.folder:not(.folder--clear):active .folder-name[data-v-b8db2226],.folder:not(.folder--clear):active .cover[data-v-b8db2226],.folder:not(.folder--clear):hover .folder-name[data-v-b8db2226],.folder:not(.folder--clear):hover .cover[data-v-b8db2226],.folder:not(.folder--clear):focus .folder-name[data-v-b8db2226],.folder:not(.folder--clear):focus .cover[data-v-b8db2226]{opacity:0}","",{version:3,sources:["webpack://./src/mixins/FileFolder.scss","webpack://./src/components/FolderTagPreview.vue"],names:[],mappings:"AAsBA,gDAEC,iBAAA,CACA,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,wBAAA,CAAA,gBAAA,CACA,kCAAA,CACA,eAAA,CAEA,8DACC,SAAA,CAMA,UAAA,CACA,mBAAA,CACA,qDAAA,CACA,SAAA,CACA,uCAAA,CAOA,4SACC,UAAA,CAQD,oWACC,UAAA,CAKH,wEACC,qDAAA,CAGD,6DACC,SAAA,CCkFD,iCACC,iBAAA,CACA,YAAA,CACA,UAAA,CACA,WAAA,CAEA,yCACC,yBAAA,CACA,sBAAA,CAED,yCACC,yBAAA,CACA,0BAAA,CAED,yCACC,6BAAA,CACA,0BAAA,CACA,yDACC,kBAAA,CAGF,yCACC,6BAAA,CACA,0BAAA,CAED,qCACC,UAAA,CACA,WAAA,CAEA,gBAAA,CAMF,8BACC,iBAAA,CACA,SAAA,CACA,YAAA,CACA,eAAA,CACA,qBAAA,CACA,UAAA,CACA,WAAA,CACA,qDAAA,CACA,SAAA,CACA,oCACC,UAAA,CACA,+BAAA,CACA,mBAAA,CAED,oCACC,eAAA,CACA,WAnBY,CAoBZ,cAAA,CACA,iBAAA,CACA,kBAAA,CACA,sBAAA,CACA,kCAAA,CACA,0CAAA,CACA,cA1BY,CA2BZ,gBA3BY,CAmCZ,mDACC,UAAA,CAED,mDACC,4BAAA,CACA,gDAAA,CAQD,oDACC,UAAA,CAQA,gXAEC,SAAA",sourcesContent:["/**\n * @copyright Copyright (c) 2019 John Molakvoæ \n *\n * @author John Molakvoæ \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 .\n *\n */\n\n.file,\n.folder {\n\tposition: relative;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\tuser-select: none;\n\tborder-radius: var(--border-radius);\n\toverflow: hidden;\n\n\t.cover {\n\t\tz-index: 2;\n\t\t// We want nice squares despite anything that is in it.\n\t\t// The .cover is what makes the exact square size of the grid.\n\t\t// We use padding-bottom because padding with percentage\n\t\t// always refers to the width. And we only want to fit\n\t\t// the css grid's width.\n\t\twidth: 100%;\n\t\tpadding-bottom: 100%;\n\t\ttransition: opacity var(--animation-quick) ease-in-out;\n\t\topacity: 0;\n\t\tbackground-color: var(--color-main-text);\n\t}\n\n\t&.active,\n\t&:active,\n\t&:hover,\n\t&:focus {\n\t\t.cover {\n\t\t\topacity: .3;\n\t\t}\n\t}\n\n\t&--clear.active,\n\t&--clear:active,\n\t&--clear:hover,\n\t&--clear:focus {\n\t\t.cover {\n\t\t\topacity: .1;\n\t\t}\n\t}\n}\n\n.fade-enter-active, .fade-leave-active {\n\ttransition: opacity var(--animation-quick) ease-in-out;\n}\n\n.fade-enter, .fade-leave-to {\n\topacity: 0;\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@import \'../mixins/FileFolder\';\n\n.folder-content {\n\tposition: absolute;\n\tdisplay: grid;\n\twidth: 100%;\n\theight: 100%;\n\t// folder layout if less than 4 pictures\n\t&--grid-1 {\n\t\tgrid-template-columns: 1fr;\n\t\tgrid-template-rows: 1fr;\n\t}\n\t&--grid-2 {\n\t\tgrid-template-columns: 1fr;\n\t\tgrid-template-rows: 1fr 1fr;\n\t}\n\t&--grid-3 {\n\t\tgrid-template-columns: 1fr 1fr;\n\t\tgrid-template-rows: 1fr 1fr;\n\t\timg:first-child {\n\t\t\tgrid-column: span 2;\n\t\t}\n\t}\n\t&--grid-4 {\n\t\tgrid-template-columns: 1fr 1fr;\n\t\tgrid-template-rows: 1fr 1fr;\n\t}\n\timg {\n\t\twidth: 100%;\n\t\theight: 100%;\n\n\t\tobject-fit: cover;\n\t}\n}\n\n$name-height: 1rem;\n\n.folder-name {\n\tposition: absolute;\n\tz-index: 3;\n\tdisplay: flex;\n\toverflow: hidden;\n\tflex-direction: column;\n\twidth: 100%;\n\theight: 100%;\n\ttransition: opacity var(--animation-quick) ease-in-out;\n\topacity: 1;\n\t&__icon {\n\t\theight: 40%;\n\t\tmargin-top: calc(30% - #{$name-height} / 2); // center name+icon\n\t\tbackground-size: 40%;\n\t}\n\t&__name {\n\t\toverflow: hidden;\n\t\theight: $name-height;\n\t\tpadding: 0 10px;\n\t\ttext-align: center;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t\tcolor: var(--color-main-background);\n\t\ttext-shadow: 0 0 8px var(--color-main-text);\n\t\tfont-size: $name-height;\n\t\tline-height: $name-height;\n\t}\n}\n\n// Cover management empty/full\n.folder {\n\t// if no img, let\'s display the folder icon as default black\n\t&--clear {\n\t\t.folder-name__icon {\n\t\t\topacity: .3;\n\t\t}\n\t\t.folder-name__name {\n\t\t\tcolor: var(--color-main-text);\n\t\t\ttext-shadow: 0 0 8px var(--color-main-background);\n\t\t}\n\t}\n\n\t// show the cover as background\n\t// if there are pictures in it\n\t// so we can sho the folder+name above it\n\t&:not(.folder--clear) {\n\t\t.cover {\n\t\t\topacity: .3;\n\t\t}\n\n\t\t// hide everything but pictures\n\t\t// on hover/active/focus\n\t\t&:active,\n\t\t&:hover,\n\t\t&:focus {\n\t\t\t.folder-name,\n\t\t\t.cover {\n\t\t\t\topacity: 0;\n\t\t\t}\n\t\t}\n\t}\n}\n\n'],sourceRoot:""}]);const s=r},56222:(n,t,e)=>{"use strict";e.d(t,{Z:()=>s});var a=e(87537),i=e.n(a),o=e(23645),r=e.n(o)()(i());r.push([n.id,".icon-confirm[data-v-080cb7fa]{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.photos-navigation[data-v-080cb7fa]{display:flex;position:block;height:44px;padding:0 40px;align-items:center;max-width:100%}.photos-navigation__title[data-v-080cb7fa]{margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.photos-navigation__share[data-v-080cb7fa]{margin-left:10px}.photos-navigation__back[data-v-080cb7fa],.photos-navigation__share[data-v-080cb7fa]{flex-grow:0;flex-shrink:0}@media(min-width: 0px)and (max-width: 400px){.photos-navigation[data-v-080cb7fa]{margin-top:-7.3333333333px}.photos-navigation--root .photos-navigation__title[data-v-080cb7fa]{padding-left:-36px}}@media(min-width: 400px)and (max-width: 700px){.photos-navigation[data-v-080cb7fa]{margin-top:-7.3333333333px}.photos-navigation--root .photos-navigation__title[data-v-080cb7fa]{padding-left:-36px}}@media(min-width: 700px)and (max-width: 1024px){.photos-navigation[data-v-080cb7fa]{margin-top:-7.3333333333px}.photos-navigation__back[data-v-080cb7fa]{margin:0 0px}.photos-navigation--root .photos-navigation__title[data-v-080cb7fa]{padding-left:0px}}@media(min-width: 1024px)and (max-width: 1280px){.photos-navigation[data-v-080cb7fa]{margin-top:-7.3333333333px}.photos-navigation__back[data-v-080cb7fa]{margin:0 0px}.photos-navigation--root .photos-navigation__title[data-v-080cb7fa]{padding-left:0px}}@media(min-width: 1280px)and (max-width: 1440px){.photos-navigation[data-v-080cb7fa]{margin-top:0px}.photos-navigation__back[data-v-080cb7fa]{margin:0 11px}.photos-navigation--root .photos-navigation__title[data-v-080cb7fa]{padding-left:22px}}@media(min-width: 1440px)and (max-width: 1600px){.photos-navigation[data-v-080cb7fa]{margin-top:0px}.photos-navigation__back[data-v-080cb7fa]{margin:0 11px}.photos-navigation--root .photos-navigation__title[data-v-080cb7fa]{padding-left:22px}}@media(min-width: 1600px)and (max-width: 2048px){.photos-navigation[data-v-080cb7fa]{margin-top:0px}.photos-navigation__back[data-v-080cb7fa]{margin:0 11px}.photos-navigation--root .photos-navigation__title[data-v-080cb7fa]{padding-left:22px}}@media(min-width: 2048px)and (max-width: 2560px){.photos-navigation[data-v-080cb7fa]{margin-top:0px}.photos-navigation__back[data-v-080cb7fa]{margin:0 22px}.photos-navigation--root .photos-navigation__title[data-v-080cb7fa]{padding-left:44px}}@media(min-width: 2560px)and (max-width: 3440px){.photos-navigation[data-v-080cb7fa]{margin-top:0px}.photos-navigation__back[data-v-080cb7fa]{margin:0 22px}.photos-navigation--root .photos-navigation__title[data-v-080cb7fa]{padding-left:44px}}@media(min-width: 3440px){.photos-navigation[data-v-080cb7fa]{margin-top:0px}.photos-navigation__back[data-v-080cb7fa]{margin:0 22px}.photos-navigation--root .photos-navigation__title[data-v-080cb7fa]{padding-left:44px}}","",{version:3,sources:["webpack://./src/components/Navigation.vue","webpack://./src/mixins/GridSizes.scss"],names:[],mappings:"AAoJA,+BACC,gCAAA,CAAA,wBAAA,CAGD,oCACC,YAAA,CACA,cAAA,CACA,WAAA,CACA,cAAA,CACA,kBAAA,CACA,cAAA,CACA,2CACC,QAAA,CACA,kBAAA,CACA,eAAA,CACA,sBAAA,CAED,2CACC,gBAAA,CAED,qFAEC,WAAA,CACA,aAAA,CCvIC,6CDoHH,oCAyBE,0BAAA,CAOA,oEACC,kBAAA,CAAA,CCrJA,+CDoHH,oCAyBE,0BAAA,CAOA,oEACC,kBAAA,CAAA,CCrJA,gDDoHH,oCAyBE,0BAAA,CAGC,0CACC,YAAA,CAGF,oEACC,gBAAA,CAAA,CCrJA,iDDoHH,oCAyBE,0BAAA,CAGC,0CACC,YAAA,CAGF,oEACC,gBAAA,CAAA,CCrJA,iDDoHH,oCAyBE,cAAA,CAGC,0CACC,aAAA,CAGF,oEACC,iBAAA,CAAA,CCrJA,iDDoHH,oCAyBE,cAAA,CAGC,0CACC,aAAA,CAGF,oEACC,iBAAA,CAAA,CCrJA,iDDoHH,oCAyBE,cAAA,CAGC,0CACC,aAAA,CAGF,oEACC,iBAAA,CAAA,CCrJA,iDDoHH,oCAyBE,cAAA,CAGC,0CACC,aAAA,CAGF,oEACC,iBAAA,CAAA,CCrJA,iDDoHH,oCAyBE,cAAA,CAGC,0CACC,aAAA,CAGF,oEACC,iBAAA,CAAA,CCzJA,0BDwHH,oCAyBE,cAAA,CAGC,0CACC,aAAA,CAGF,oEACC,iBAAA,CAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n@use \'sass:math\';\n@import \'../mixins/GridSizes\';\n\n.icon-confirm {\n\ttransform: rotate(180deg)\n}\n\n.photos-navigation {\n\tdisplay: flex;\n\tposition: block;\n\theight: 44px;\n\tpadding: 0 40px;\n\talign-items: center;\n\tmax-width: 100%;\n\t&__title {\n\t\tmargin: 0;\n\t\twhite-space: nowrap;\n\t\toverflow: hidden;\n\t\ttext-overflow: ellipsis;\n\t}\n\t&__share {\n\t\tmargin-left: 10px;\n\t}\n\t&__back,\n\t&__share {\n\t\tflex-grow: 0;\n\t\tflex-shrink: 0;\n\t}\n\n\t// Specific grid spacing\n\t@include grid-sizes using ($marginTop, $marginW) {\n\t\t// we space this with 2/3 margin top, 1/3 margin bottom\n\t\tmargin-top: math.div($marginTop - 44px * 2, 3);\n\n\t\t@if $marginW >= 44px {\n\t\t\t&__back {\n\t\t\t\tmargin: 0 math.div($marginW - 44px, 2);\n\t\t\t}\n\t\t}\n\t\t&--root &__title {\n\t\t\tpadding-left: #{$marginW - 44}px;\n\t\t}\n\t}\n}\n',"/**\n * @copyright Copyright (c) 2019 John Molakvoæ \n *\n * @author John Molakvoæ \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 .\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"],sourceRoot:""}]);const s=r},66533:(n,t,e)=>{"use strict";e.d(t,{Z:()=>b});var a=e(25108);function i(n,t,e,a,i,o,r){try{var s=n[o](r),A=s.value}catch(n){return void e(n)}s.done?t(A):Promise.resolve(A).then(a,i)}const o={name:"EmptyContent",props:{illustrationName:{type:String,default:""}},data:function(){return{illustration:""}},computed:{haveIllustration:function(){return""!==this.illustrationName},isLoaded:function(){return!this.haveIllustration||""!==this.illustration},isReady:function(){return!this.haveIllustration||this.haveIllustration&&this.isLoaded}},watch:{illustrationName:function(){this.getIllustration()}},beforeMount:function(){this.getIllustration()},methods:{getIllustration:function(){var n,t=this;return(n=regeneratorRuntime.mark((function n(){var i;return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(t.illustration="",""===t.illustrationName){n.next=12;break}return n.prev=2,n.next=5,e(57767)("./".concat(t.illustrationName,".svg"));case 5:i=n.sent,t.illustration=i.default,n.next=12;break;case 9:n.prev=9,n.t0=n.catch(2),a.error("Could not get the error illustration",n.t0);case 12:case"end":return n.stop()}}),n,null,[[2,9]])})),function(){var t=this,e=arguments;return new Promise((function(a,o){var r=n.apply(t,e);function s(n){i(r,a,o,s,A,"next",n)}function A(n){i(r,a,o,s,A,"throw",n)}s(void 0)}))})()}}};var r=e(93379),s=e.n(r),A=e(7795),c=e.n(A),d=e(90569),l=e.n(d),p=e(3565),m=e.n(p),g=e(19216),f=e.n(g),h=e(44589),u=e.n(h),v=e(86228),C={};C.styleTagTransform=u(),C.setAttributes=m(),C.insert=l().bind(null,"head"),C.domAPI=c(),C.insertStyleElement=f();s()(v.Z,C);v.Z&&v.Z.locals&&v.Z.locals;const b=(0,e(51900).Z)(o,(function(){var n=this,t=n.$createElement,e=n._self._c||t;return n.isReady?e("div",{staticClass:"emptycontent"},[n.haveIllustration?e("div",{staticClass:"illustration",domProps:{innerHTML:n._s(n.illustration)}}):e("div",{staticClass:"icon-error"}),n._v(" "),e("h2",[n._t("default")],2),n._v(" "),e("p",{directives:[{name:"show",rawName:"v-show",value:n.$slots.desc,expression:"$slots.desc"}]},[n._t("desc")],2)]):n._e()}),[],!1,null,null,null).exports},88318:(n,e,a)=>{"use strict";a.d(e,{Z:()=>b});var i=a(79753);const o={name:"FolderTagPreview",props:{icon:{type:String,default:"icon-folder"},id:{type:Number,required:!0},name:{type:String,required:!0},path:{type:String,required:!0},fileList:{type:Array,default:function(){return[]}}},data:function(){return{loaded:!1,failed:[]}},computed:{isEmpty:function(){return 0===this.previewList.length},ariaUuid:function(){return"folder-".concat(this.id)},ariaLabel:function(){return t("photos",'Open the "{name}" sub-directory',{name:this.name})},previewList:function(){var n=this;return this.fileList.filter((function(t){return-1===n.failed.indexOf(t.fileid)}))},to:function(){var n=/^\/?(.+)/i.exec(this.path)[1];return Object.assign({},this.$route,{params:{path:n.split("/")}})}},methods:{generateImgSrc:function(n){var t=n.fileid,e=n.etag;return(0,i.generateUrl)("/core/preview?fileId=".concat(t,"&c=").concat(e,"&x=",250,"&y=",250,"&forceIcon=0&a=0"))},onPreviewFail:function(n){var t=n.fileid;this.failed.push(t)}}};var r=a(93379),s=a.n(r),A=a(7795),c=a.n(A),d=a(90569),l=a.n(d),p=a(3565),m=a.n(p),g=a(19216),f=a.n(g),h=a(44589),u=a.n(h),v=a(10369),C={};C.styleTagTransform=u(),C.setAttributes=m(),C.insert=l().bind(null,"head"),C.domAPI=c(),C.insertStyleElement=f();s()(v.Z,C);v.Z&&v.Z.locals&&v.Z.locals;const b=(0,a(51900).Z)(o,(function(){var n=this,t=n.$createElement,e=n._self._c||t;return e("router-link",{staticClass:"folder",class:{"folder--clear":n.isEmpty},attrs:{to:n.to,"aria-label":n.ariaLabel}},[e("transition",{attrs:{name:"fade"}},[e("div",{directives:[{name:"show",rawName:"v-show",value:n.loaded,expression:"loaded"}],staticClass:"folder-content",class:"folder-content--grid-"+n.previewList.length,attrs:{role:"none"}},n._l(n.previewList,(function(t){return e("img",{key:t.fileid,attrs:{src:n.generateImgSrc(t),alt:""},on:{load:function(t){n.loaded=!0},error:function(e){return n.onPreviewFail(t)}}})})),0)]),n._v(" "),e("div",{staticClass:"folder-name"},[e("span",{staticClass:"folder-name__icon",class:[n.isEmpty?"icon-dark":"icon-white",n.icon],attrs:{role:"img"}}),n._v(" "),e("p",{staticClass:"folder-name__name",attrs:{id:n.ariaUuid}},[n._v("\n\t\t\t"+n._s(n.name)+"\n\t\t")])]),n._v(" "),e("div",{staticClass:"cover",attrs:{role:"none"}})],1)}),[],!1,null,"b8db2226",null).exports},82390:(n,e,a)=>{"use strict";a.d(e,{Z:()=>x});var i=a(79440),o=a.n(i),r=a(56286);const s={name:"Navigation",components:{ActionButton:a.n(r)(),Actions:o()},inheritAttrs:!1,props:{basename:{type:String,required:!0},filename:{type:String,required:!0},showActions:{type:Boolean,default:!1},rootTitle:{type:String,default:t("photos","Photos")}},computed:{isRoot:function(){return"/"===this.filename},name:function(){return this.isRoot?this.rootTitle:this.basename},parentPath:function(){var n=this.filename.split("/");n.pop();var t=n.join("/");return this.isRoot||""===t.trim()?"/":n.join("/")},parentName:function(){return this.parentPath&&this.parentPath.split("/").pop()},backToText:function(){return"/"===this.parentPath?t("photos","Back to {folder}",{folder:this.rootTitle}):t("photos","Back to {folder}",{folder:this.parentName})},to:function(){var n=/^\/?(.*)/i.exec(this.parentPath)[1],t=Object.assign({},this.$route,{params:{path:n}}),e=t.name,a=t.params;return""===n?{name:e}:decodeURIComponent(this.$router.resolve({name:e,params:a}).resolved.path)}},methods:{folderUp:function(){this.$router.push(this.to)},showSidebar:function(){OCA.Files.Sidebar.open(this.filename)}}};var A=a(93379),c=a.n(A),d=a(7795),l=a.n(d),p=a(90569),m=a.n(p),g=a(3565),f=a.n(g),h=a(19216),u=a.n(h),v=a(44589),C=a.n(v),b=a(56222),w={};w.styleTagTransform=C(),w.setAttributes=f(),w.insert=m().bind(null,"head"),w.domAPI=l(),w.insertStyleElement=u();c()(b.Z,w);b.Z&&b.Z.locals&&b.Z.locals;const x=(0,a(51900).Z)(s,(function(){var n=this,t=n.$createElement,e=n._self._c||t;return e("div",{staticClass:"photos-navigation",class:{"photos-navigation--root":n.isRoot},attrs:{role:"toolbar"}},[n.isRoot?n._e():e("Actions",{staticClass:"photos-navigation__back"},[e("ActionButton",{attrs:{icon:"icon-confirm"},on:{click:n.folderUp}},[n._v("\n\t\t\t"+n._s(n.backToText)+"\n\t\t")])],1),n._v(" "),e("h2",{staticClass:"photos-navigation__title"},[n._v("\n\t\t"+n._s(n.name)+"\n\t")]),n._v(" "),!n.isRoot&&n.showActions?e("Actions",{staticClass:"photos-navigation__share"},[e("ActionButton",{attrs:{icon:"icon-shared"},on:{click:n.showSidebar}},[n._v("\n\t\t\t"+n._s(n.t("photos","Share this folder"))+"\n\t\t")])],1):n._e()],1)}),[],!1,null,"080cb7fa",null).exports},57767:(n,t,e)=>{var a={"./empty.svg":[51612,"src_assets_Illustrations_empty_svg"],"./folder.svg":[80917,"src_assets_Illustrations_folder_svg"],"./images.svg":[39777,"src_assets_Illustrations_images_svg"]};function i(n){if(!e.o(a,n))return Promise.resolve().then((()=>{var t=new Error("Cannot find module '"+n+"'");throw t.code="MODULE_NOT_FOUND",t}));var t=a[n],i=t[0];return e.e(t[1]).then((()=>e.t(i,17)))}i.keys=()=>Object.keys(a),i.id=57767,n.exports=i}}]); -//# sourceMappingURL=photos-src_mixins_GridConfig_js-src_utils_CancelableRequest_js-src_components_EmptyContent_vue-src_c-c08051.js.map?v=d048f658c135ebbcf6af \ No newline at end of file diff --git a/js/photos-src_mixins_GridConfig_js-src_utils_CancelableRequest_js-src_components_EmptyContent_vue-src_c-c08051.js.LICENSE.txt b/js/photos-src_mixins_GridConfig_js-src_utils_CancelableRequest_js-src_components_EmptyContent_vue-src_c-c08051.js.LICENSE.txt deleted file mode 100644 index 3eafa8b19..000000000 --- a/js/photos-src_mixins_GridConfig_js-src_utils_CancelableRequest_js-src_components_EmptyContent_vue-src_c-c08051.js.LICENSE.txt +++ /dev/null @@ -1,43 +0,0 @@ -/** - * @copyright Copyright (c) 2018 John Molakvoæ - * - * @author John Molakvoæ - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ - -/** - * @copyright Copyright (c) 2019 John Molakvoæ - * - * @author John Molakvoæ - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ diff --git a/js/photos-src_mixins_GridConfig_js-src_utils_CancelableRequest_js-src_components_EmptyContent_vue-src_c-c08051.js.map b/js/photos-src_mixins_GridConfig_js-src_utils_CancelableRequest_js-src_components_EmptyContent_vue-src_c-c08051.js.map deleted file mode 100644 index 21cb417b4..000000000 --- a/js/photos-src_mixins_GridConfig_js-src_utils_CancelableRequest_js-src_components_EmptyContent_vue-src_c-c08051.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-src_mixins_GridConfig_js-src_utils_CancelableRequest_js-src_components_EmptyContent_vue-src_c-c08051.js?v=d048f658c135ebbcf6af","mappings":";gLAgCAA,EAAOC,QAAU,CAChBC,MAAO,CACN,IAAK,CACJC,UAAW,GACXC,QAbS,EAcTC,MAAO,EACPC,IAfS,GAiBV,IAAK,CACJH,UAAW,GACXC,QAnBS,EAoBTC,MAAO,EACPC,IArBS,GAuBV,KAAM,CACLH,UAAW,GACXC,QAAS,GACTC,MAAO,EACPC,IA3BS,GA6BV,KAAM,CACLH,UAAW,GACXC,QAAS,GACTC,MAAO,EACPC,IAjCS,GAmCV,KAAM,CACLH,UAAW,GACXC,QAAS,GACTC,MAAO,EACPC,IAvCS,GAyCV,KAAM,CACLH,UAAW,GACXC,QAAS,GACTC,MAAO,EACPC,IA7CS,GA+CV,KAAM,CACLH,UAAW,GACXC,QAAS,GACTC,MAAO,EACPC,IAnDS,GAqDV,KAAM,CACLH,UAAW,GACXC,QAAS,GACTC,MAAO,EACPC,IAzDS,GA2DV,KAAM,CACLH,UAAW,GACXC,QAAS,GACTC,MAAO,EACPC,IA/DS,GAiEVC,IAAK,CACJJ,UAAW,GACXC,QAAS,GACTC,MAAO,GACPC,IArES,8ECEZ,YAAmBE,EAAAA,GAAI,CACtBC,KADsB,WAErB,MAAO,CACNC,WAAYR,EAAAA,MAAAA,IAEb,EACDS,MAAO,CACND,WADM,SACKE,GACVC,KAAKC,MAAM,UAAWF,EACtB,GAEFG,QAXsB,WAYrBC,OAAOC,iBAAiB,SAAUJ,KAAKK,oBACvCL,KAAKK,oBACL,EACDC,cAfsB,WAgBrBH,OAAOI,oBAAoB,SAAUP,KAAKK,mBAC1C,EACDG,QAAS,CACRH,mBADQ,WAGP,IAAMI,EAAcC,OAAOC,KAAKtB,EAAAA,OAAOuB,MAAK,SAAAC,GAAI,OAAIA,EAAOC,SAASC,gBAAgBC,WAApC,IAChDhB,KAAKH,WAAaR,EAAAA,MAAMoB,IAAgBpB,EAAAA,MAAAA,GACxC,oBCrBH,SACCO,KADc,WAEb,MAAO,CACNC,WAAY,CAAC,EAEd,EAEDK,QAPc,WAOJ,WACTe,EAAAA,IAAkB,WAAW,SAAAlB,GAC5B,EAAKF,WAAaE,CAClB,IACDmB,EAAQC,MAAR,WAAkBC,SAAlB,KAA8B,cAAeV,OAAOW,OAAO,CAAC,EAAGJ,EAAAA,aAC/DjB,KAAKH,WAAaoB,EAAAA,UAClB,EAEDX,cAfc,WAgBbW,EAAAA,KAAmB,UAAWjB,KAAKH,WACnC,yLCmBF,QAzB0B,SAASyB,GAIlC,IAAMC,EAZyBC,EAAAA,EAAAA,YAAAA,SAoBzBC,EAAK,+CAAG,WAAeC,EAAKC,GAApB,yGACNL,EACNI,EACAhB,OAAOW,OAAO,CAAEE,YAAaA,EAAYK,OAASD,KAHtC,yNAAH,wDAOX,MAAO,CACNL,QAASG,EACTI,OAAQN,EAAYM,OAErB,oFC1DGC,QAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAAC5C,EAAO6C,GAAI,qRAAwR,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,+CAA+C,MAAQ,GAAG,SAAW,qJAAqJ,eAAiB,CAAC,srCAAowC,WAAa,MAEz1D,4FCJIF,QAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAAC5C,EAAO6C,GAAI,uhGAAwhG,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,yCAAyC,mDAAmD,MAAQ,GAAG,SAAW,swBAAswB,eAAiB,CAAC,64DAA64D,u2FAAo7F,WAAa,MAEpzR,4FCJIF,QAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAAC5C,EAAO6C,GAAI,gxFAAixF,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,4CAA4C,yCAAyC,MAAQ,GAAG,SAAW,uxBAAuxB,eAAiB,CAAC,yqDAAqvD,+2CAA+2C,WAAa,MAE11N,yDCPA,wICmCA,MCnC6K,EDmC7K,CACA,oBACA,OACA,kBACA,YACA,aAGA,KARA,WASA,OACA,gBAEA,EACA,UAMA,iBANA,WAOA,gCACA,EAOA,SAfA,WAgBA,8BAGA,sBACA,EAQA,QA5BA,WA6BA,kEACA,GAMA,OACA,iBADA,WAEA,sBACA,GAEA,YAtDA,WAuDA,sBACA,EAEA,SAIA,gBAJA,WAIA,qJACA,kBACA,wBAFA,0CAIA,iDAJA,OAIA,EAJA,OAKA,yBALA,gDAOA,qDAPA,wOAUA,yIEhGIL,EAAU,CAAC,EAEfA,EAAQM,kBAAoB,IAC5BN,EAAQO,cAAgB,IAElBP,EAAQQ,OAAS,SAAc,KAAM,QAE3CR,EAAQS,OAAS,IACjBT,EAAQU,mBAAqB,IAEhB,IAAI,IAASV,GAKJ,KAAW,YAAiB,WCPlD,SAXgB,cACd,GJTW,WAAa,IAAIW,EAAItC,KAASuC,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAQD,EAAW,QAAEG,EAAG,MAAM,CAACE,YAAY,gBAAgB,CAAEL,EAAoB,iBAAEG,EAAG,MAAM,CAACE,YAAY,eAAeC,SAAS,CAAC,UAAYN,EAAIO,GAAGP,EAAIQ,iBAAiBL,EAAG,MAAM,CAACE,YAAY,eAAeL,EAAIS,GAAG,KAAKN,EAAG,KAAK,CAACH,EAAIU,GAAG,YAAY,GAAGV,EAAIS,GAAG,KAAKN,EAAG,IAAI,CAACQ,WAAW,CAAC,CAACC,KAAK,OAAOC,QAAQ,SAASC,MAAOd,EAAIe,OAAW,KAAEC,WAAW,iBAAiB,CAAChB,EAAIU,GAAG,SAAS,KAAKV,EAAIiB,IAAI,GAC7c,IIWpB,EACA,KACA,KACA,MAI8B,uDCnBhC,eC0DA,MC1DiL,ED0DjL,CACA,wBAEA,OACA,MACA,YACA,uBAEA,IACA,YACA,aAEA,MACA,YACA,aAEA,MACA,YACA,aAEA,UACA,WACA,+BAIA,KA1BA,WA2BA,OACA,UACA,UAEA,EAEA,UAEA,QAFA,WAGA,kCACA,EAEA,SANA,WAOA,+BACA,EACA,UATA,WAUA,qEACA,EAOA,YAlBA,WAkBA,WACA,qBACA,4DACA,EAWA,GAhCA,WAmCA,IACA,EADA,YACA,mBAGA,qCACA,4BAEA,GAGA,SACA,eADA,YACA,wBAEA,iHACA,EACA,cALA,YAKA,eACA,mBACA,yIEpII5B,EAAU,CAAC,EAEfA,EAAQM,kBAAoB,IAC5BN,EAAQO,cAAgB,IAElBP,EAAQQ,OAAS,SAAc,KAAM,QAE3CR,EAAQS,OAAS,IACjBT,EAAQU,mBAAqB,IAEhB,IAAI,IAASV,GAKJ,KAAW,YAAiB,WCPlD,SAXgB,cACd,GJTW,WAAa,IAAIW,EAAItC,KAASuC,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAOE,EAAG,cAAc,CAACE,YAAY,SAASa,MAAM,CAAC,gBAAiBlB,EAAImB,SAASC,MAAM,CAAC,GAAKpB,EAAIqB,GAAG,aAAarB,EAAIsB,YAAY,CAACnB,EAAG,aAAa,CAACiB,MAAM,CAAC,KAAO,SAAS,CAACjB,EAAG,MAAM,CAACQ,WAAW,CAAC,CAACC,KAAK,OAAOC,QAAQ,SAASC,MAAOd,EAAU,OAAEgB,WAAW,WAAWX,YAAY,iBAAiBa,MAAO,wBAA2BlB,EAAIuB,YAAkB,OAAGH,MAAM,CAAC,KAAO,SAASpB,EAAIwB,GAAIxB,EAAe,aAAE,SAASyB,GAAM,OAAOtB,EAAG,MAAM,CAACuB,IAAID,EAAKE,OAAOP,MAAM,CAAC,IAAMpB,EAAI4B,eAAeH,GAAM,IAAM,IAAII,GAAG,CAAC,KAAO,SAASC,GAAQ9B,EAAI+B,QAAS,CAAI,EAAE,MAAQ,SAASD,GAAQ,OAAO9B,EAAIgC,cAAcP,EAAK,IAAI,IAAG,KAAKzB,EAAIS,GAAG,KAAKN,EAAG,MAAM,CAACE,YAAY,eAAe,CAACF,EAAG,OAAO,CAACE,YAAY,oBAAoBa,MAAM,CAAElB,EAAImB,QAAyB,YAAf,aAA4BnB,EAAIiC,MAAMb,MAAM,CAAC,KAAO,SAASpB,EAAIS,GAAG,KAAKN,EAAG,IAAI,CAACE,YAAY,oBAAoBe,MAAM,CAAC,GAAKpB,EAAIkC,WAAW,CAAClC,EAAIS,GAAG,WAAWT,EAAIO,GAAGP,EAAIY,MAAM,cAAcZ,EAAIS,GAAG,KAAKN,EAAG,MAAM,CAACE,YAAY,QAAQe,MAAM,CAAC,KAAO,WAAW,EAAE,GAC7hC,IIWpB,EACA,KACA,WACA,MAI8B,uDCnBhC,mCC6CA,MC7C2K,ED6C3K,CACA,kBAEA,YACA,sBACA,aAEA,gBAEA,OACA,UACA,YACA,aAEA,UACA,YACA,aAEA,aACA,aACA,YAEA,WACA,YACA,+BAIA,UACA,OADA,WAEA,yBACA,EACA,KAJA,WAKA,mBACA,eAEA,aACA,EACA,WAVA,WAWA,+BACA,QACA,kBACA,kCACA,IACA,WACA,EACA,WAlBA,WAmBA,wDACA,EACA,WArBA,WAsBA,4BACA,uDAEA,uDACA,EAUA,GApCA,WAuCA,IACA,EADA,YACA,yBAGA,gCACA,kBADA,oBAMA,aACA,SAIA,yEACA,GAGA,SACA,SADA,WAEA,0BACA,EACA,YAJA,WAKA,qCAEA,yIE/HI/B,EAAU,CAAC,EAEfA,EAAQM,kBAAoB,IAC5BN,EAAQO,cAAgB,IAElBP,EAAQQ,OAAS,SAAc,KAAM,QAE3CR,EAAQS,OAAS,IACjBT,EAAQU,mBAAqB,IAEhB,IAAI,IAASV,GAKJ,KAAW,YAAiB,WCPlD,SAXgB,cACd,GJTW,WAAa,IAAIW,EAAItC,KAASuC,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACE,YAAY,oBAAoBa,MAAM,CAAC,0BAA2BlB,EAAImC,QAAQf,MAAM,CAAC,KAAO,YAAY,CAAGpB,EAAImC,OAAoMnC,EAAIiB,KAAhMd,EAAG,UAAU,CAACE,YAAY,2BAA2B,CAACF,EAAG,eAAe,CAACiB,MAAM,CAAC,KAAO,gBAAgBS,GAAG,CAAC,MAAQ7B,EAAIoC,WAAW,CAACpC,EAAIS,GAAG,WAAWT,EAAIO,GAAGP,EAAIqC,YAAY,aAAa,GAAYrC,EAAIS,GAAG,KAAKN,EAAG,KAAK,CAACE,YAAY,4BAA4B,CAACL,EAAIS,GAAG,SAAST,EAAIO,GAAGP,EAAIY,MAAM,UAAUZ,EAAIS,GAAG,MAAOT,EAAImC,QAAUnC,EAAIsC,YAAanC,EAAG,UAAU,CAACE,YAAY,4BAA4B,CAACF,EAAG,eAAe,CAACiB,MAAM,CAAC,KAAO,eAAeS,GAAG,CAAC,MAAQ7B,EAAIuC,cAAc,CAACvC,EAAIS,GAAG,WAAWT,EAAIO,GAAGP,EAAIwC,EAAE,SAAU,sBAAsB,aAAa,GAAGxC,EAAIiB,MAAM,EAAE,GACvwB,IIWpB,EACA,KACA,WACA,MAI8B,yBCnBhC,IAAIwB,EAAM,CACT,cAAe,CACd,MACA,sCAED,eAAgB,CACf,MACA,uCAED,eAAgB,CACf,MACA,wCAGF,SAASC,EAAoBC,GAC5B,IAAIC,EAAoBC,EAAEJ,EAAKE,GAC9B,OAAOG,QAAQC,UAAUC,MAAK,KAC7B,IAAIC,EAAI,IAAIC,MAAM,uBAAyBP,EAAM,KAEjD,MADAM,EAAEE,KAAO,mBACHF,CAAC,IAIT,IAAIG,EAAMX,EAAIE,GAAMjD,EAAK0D,EAAI,GAC7B,OAAOR,EAAoBK,EAAEG,EAAI,IAAIJ,MAAK,IAClCJ,EAAoBJ,EAAE9C,EAAI,KAEnC,CACAgD,EAAoBrE,KAAO,IAAOD,OAAOC,KAAKoE,GAC9CC,EAAoBhD,GAAK,MACzB7C,EAAOC,QAAU4F","sources":["webpack:///photos/src/assets/grid-sizes.js","webpack:///photos/src/services/GridConfig.js","webpack:///photos/src/mixins/GridConfig.js","webpack:///photos/src/utils/CancelableRequest.js","webpack:///photos/src/components/EmptyContent.vue?vue&type=style&index=0&lang=scss&","webpack:///photos/src/components/FolderTagPreview.vue?vue&type=style&index=0&id=b8db2226&lang=scss&scoped=true&","webpack:///photos/src/components/Navigation.vue?vue&type=style&index=0&id=080cb7fa&lang=scss&scoped=true&","webpack:///photos/src/components/EmptyContent.vue?vue&type=template&id=b4c69d2c&","webpack:///photos/src/components/EmptyContent.vue","webpack:///photos/src/components/EmptyContent.vue?vue&type=script&lang=js&","webpack://photos/./src/components/EmptyContent.vue?7390","webpack://photos/./src/components/EmptyContent.vue?b265","webpack:///photos/src/components/FolderTagPreview.vue?vue&type=template&id=b8db2226&scoped=true&","webpack:///photos/src/components/FolderTagPreview.vue","webpack:///photos/src/components/FolderTagPreview.vue?vue&type=script&lang=js&","webpack://photos/./src/components/FolderTagPreview.vue?21a1","webpack://photos/./src/components/FolderTagPreview.vue?9d8b","webpack:///photos/src/components/Navigation.vue?vue&type=template&id=080cb7fa&scoped=true&","webpack:///photos/src/components/Navigation.vue","webpack:///photos/src/components/Navigation.vue?vue&type=script&lang=js&","webpack://photos/./src/components/Navigation.vue?d5b1","webpack://photos/./src/components/Navigation.vue?7f19","webpack:///photos/src/assets/Illustrations|lazy|/^\\.\\/.*\\.svg$/|groupOptions: {}|namespace object"],"sourcesContent":["/**\n * @copyright Copyright (c) 2018 John Molakvoæ \n *\n * @author John Molakvoæ \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 .\n *\n */\n\n// for now we want to keep the same gap everywhere\nconst gap = 8\n\n/**\n * Define the max width proportions\n * The number (key) indicate the MAX size\n *\n * needs to be compatible with webpack config\n * so no export default {}\n */\nmodule.exports = {\n\tsizes: {\n\t\t400: {\n\t\t\tmarginTop: 66,\n\t\t\tmarginW: gap,\n\t\t\tcount: 3,\n\t\t\tgap,\n\t\t},\n\t\t700: {\n\t\t\tmarginTop: 66,\n\t\t\tmarginW: gap,\n\t\t\tcount: 4,\n\t\t\tgap,\n\t\t},\n\t\t1024: {\n\t\t\tmarginTop: 66,\n\t\t\tmarginW: 44,\n\t\t\tcount: 5,\n\t\t\tgap,\n\t\t},\n\t\t1280: {\n\t\t\tmarginTop: 66,\n\t\t\tmarginW: 44,\n\t\t\tcount: 4,\n\t\t\tgap,\n\t\t},\n\t\t1440: {\n\t\t\tmarginTop: 88,\n\t\t\tmarginW: 66,\n\t\t\tcount: 5,\n\t\t\tgap,\n\t\t},\n\t\t1600: {\n\t\t\tmarginTop: 88,\n\t\t\tmarginW: 66,\n\t\t\tcount: 6,\n\t\t\tgap,\n\t\t},\n\t\t2048: {\n\t\t\tmarginTop: 88,\n\t\t\tmarginW: 66,\n\t\t\tcount: 7,\n\t\t\tgap,\n\t\t},\n\t\t2560: {\n\t\t\tmarginTop: 88,\n\t\t\tmarginW: 88,\n\t\t\tcount: 8,\n\t\t\tgap,\n\t\t},\n\t\t3440: {\n\t\t\tmarginTop: 88,\n\t\t\tmarginW: 88,\n\t\t\tcount: 9,\n\t\t\tgap,\n\t\t},\n\t\tmax: {\n\t\t\tmarginTop: 88,\n\t\t\tmarginW: 88,\n\t\t\tcount: 10,\n\t\t\tgap,\n\t\t},\n\t},\n}\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ \n *\n * @author John Molakvoæ \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 .\n *\n */\n\nimport Vue from 'vue'\nimport { sizes } from '../assets/grid-sizes'\n\nexport default new Vue({\n\tdata() {\n\t\treturn {\n\t\t\tgridConfig: sizes.max,\n\t\t}\n\t},\n\twatch: {\n\t\tgridConfig(val) {\n\t\t\tthis.$emit('changed', val)\n\t\t},\n\t},\n\tcreated() {\n\t\twindow.addEventListener('resize', this.handleWindowResize)\n\t\tthis.handleWindowResize()\n\t},\n\tbeforeDestroy() {\n\t\twindow.removeEventListener('resize', this.handleWindowResize)\n\t},\n\tmethods: {\n\t\thandleWindowResize() {\n\t\t\t// find the first grid size that fit the current window width\n\t\t\tconst currentSize = Object.keys(sizes).find(size => size > document.documentElement.clientWidth)\n\t\t\tthis.gridConfig = sizes[currentSize] || sizes.max\n\t\t},\n\t},\n})\n","/**\n * @copyright Copyright (c) 2018 John Molakvoæ \n *\n * @author John Molakvoæ \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 .\n *\n */\n\nimport getGridConfig from '../services/GridConfig'\n\n/**\n * Get the current used grid config\n */\nexport default {\n\tdata() {\n\t\treturn {\n\t\t\tgridConfig: {},\n\t\t}\n\t},\n\n\tcreated() {\n\t\tgetGridConfig.$on('changed', val => {\n\t\t\tthis.gridConfig = val\n\t\t})\n\t\tconsole.debug(`[${appName}]`, 'Grid config', Object.assign({}, getGridConfig.gridConfig))\n\t\tthis.gridConfig = getGridConfig.gridConfig\n\t},\n\n\tbeforeDestroy() {\n\t\tgetGridConfig.$off('changed', this.gridConfig)\n\t},\n}\n","/**\n * @copyright Copyright (c) 2019 Marco Ambrosini \n *\n * @author Marco Ambrosini \n *\n * @author John Molakvoæ \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 .\n *\n */\n\nimport axios from '@nextcloud/axios'\n/**\n * Create a cancel token\n *\n * @return {CancelTokenSource}\n */\nconst createCancelToken = () => axios.CancelToken.source()\n\n/**\n * Creates a cancelable axios 'request object'.\n *\n * @param {Function} request the axios promise request\n * @return {object}\n */\nconst CancelableRequest = function(request) {\n\t/**\n\t * Generate an axios cancel token\n\t */\n\tconst cancelToken = createCancelToken()\n\n\t/**\n\t * Execute the request\n\t *\n\t * @param {string} url the url to send the request to\n\t * @param {object} [options] optional config for the request\n\t */\n\tconst fetch = async function(url, options) {\n\t\treturn request(\n\t\t\turl,\n\t\t\tObject.assign({ cancelToken: cancelToken.token }, options)\n\t\t)\n\t}\n\n\treturn {\n\t\trequest: fetch,\n\t\tcancel: cancelToken.cancel,\n\t}\n}\n\nexport default CancelableRequest\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".emptycontent{grid-column:1/-1;margin-top:20vh}.illustration{min-width:200px;max-width:15%;width:300px;margin:auto;margin-bottom:20px;position:relative}.illustration svg{width:100%;height:100%;max-height:40vh}.illustration [fill*=\\\"6c63ff\\\"]{fill:var(--color-primary-element)}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/EmptyContent.vue\"],\"names\":[],\"mappings\":\"AAmHA,cAEC,gBAAA,CACA,eAAA,CAGD,cACC,eAAA,CACA,aAAA,CACA,WAAA,CACA,WAAA,CACA,kBAAA,CACA,iBAAA,CAEA,kBACC,UAAA,CACA,WAAA,CACA,eAAA,CAID,+BACC,iCAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.emptycontent {\\n\\t// span all the available columns\\n\\tgrid-column: 1/-1;\\n\\tmargin-top: 20vh;\\n}\\n\\n.illustration {\\n\\tmin-width: 200px;\\n\\tmax-width: 15%;\\n\\twidth: 300px;\\n\\tmargin: auto;\\n\\tmargin-bottom: 20px;\\n\\tposition: relative;\\n\\n\\tsvg {\\n\\t\\twidth: 100%;\\n\\t\\theight: 100%;\\n\\t\\tmax-height: 40vh;\\n\\t}\\n\\n\\t// change colour of illustration\\n\\t[fill*='6c63ff'] {\\n\\t\\tfill: var(--color-primary-element);\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".file[data-v-b8db2226],.folder[data-v-b8db2226]{position:relative;display:flex;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none;border-radius:var(--border-radius);overflow:hidden}.file .cover[data-v-b8db2226],.folder .cover[data-v-b8db2226]{z-index:2;width:100%;padding-bottom:100%;transition:opacity var(--animation-quick) ease-in-out;opacity:0;background-color:var(--color-main-text)}.file.active .cover[data-v-b8db2226],.file:active .cover[data-v-b8db2226],.file:hover .cover[data-v-b8db2226],.file:focus .cover[data-v-b8db2226],.folder.active .cover[data-v-b8db2226],.folder:active .cover[data-v-b8db2226],.folder:hover .cover[data-v-b8db2226],.folder:focus .cover[data-v-b8db2226]{opacity:.3}.file--clear.active .cover[data-v-b8db2226],.file--clear:active .cover[data-v-b8db2226],.file--clear:hover .cover[data-v-b8db2226],.file--clear:focus .cover[data-v-b8db2226],.folder--clear.active .cover[data-v-b8db2226],.folder--clear:active .cover[data-v-b8db2226],.folder--clear:hover .cover[data-v-b8db2226],.folder--clear:focus .cover[data-v-b8db2226]{opacity:.1}.fade-enter-active[data-v-b8db2226],.fade-leave-active[data-v-b8db2226]{transition:opacity var(--animation-quick) ease-in-out}.fade-enter[data-v-b8db2226],.fade-leave-to[data-v-b8db2226]{opacity:0}.folder-content[data-v-b8db2226]{position:absolute;display:grid;width:100%;height:100%}.folder-content--grid-1[data-v-b8db2226]{grid-template-columns:1fr;grid-template-rows:1fr}.folder-content--grid-2[data-v-b8db2226]{grid-template-columns:1fr;grid-template-rows:1fr 1fr}.folder-content--grid-3[data-v-b8db2226]{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}.folder-content--grid-3 img[data-v-b8db2226]:first-child{grid-column:span 2}.folder-content--grid-4[data-v-b8db2226]{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}.folder-content img[data-v-b8db2226]{width:100%;height:100%;object-fit:cover}.folder-name[data-v-b8db2226]{position:absolute;z-index:3;display:flex;overflow:hidden;flex-direction:column;width:100%;height:100%;transition:opacity var(--animation-quick) ease-in-out;opacity:1}.folder-name__icon[data-v-b8db2226]{height:40%;margin-top:calc(30% - 1rem / 2);background-size:40%}.folder-name__name[data-v-b8db2226]{overflow:hidden;height:1rem;padding:0 10px;text-align:center;white-space:nowrap;text-overflow:ellipsis;color:var(--color-main-background);text-shadow:0 0 8px var(--color-main-text);font-size:1rem;line-height:1rem}.folder--clear .folder-name__icon[data-v-b8db2226]{opacity:.3}.folder--clear .folder-name__name[data-v-b8db2226]{color:var(--color-main-text);text-shadow:0 0 8px var(--color-main-background)}.folder:not(.folder--clear) .cover[data-v-b8db2226]{opacity:.3}.folder:not(.folder--clear):active .folder-name[data-v-b8db2226],.folder:not(.folder--clear):active .cover[data-v-b8db2226],.folder:not(.folder--clear):hover .folder-name[data-v-b8db2226],.folder:not(.folder--clear):hover .cover[data-v-b8db2226],.folder:not(.folder--clear):focus .folder-name[data-v-b8db2226],.folder:not(.folder--clear):focus .cover[data-v-b8db2226]{opacity:0}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/mixins/FileFolder.scss\",\"webpack://./src/components/FolderTagPreview.vue\"],\"names\":[],\"mappings\":\"AAsBA,gDAEC,iBAAA,CACA,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,wBAAA,CAAA,gBAAA,CACA,kCAAA,CACA,eAAA,CAEA,8DACC,SAAA,CAMA,UAAA,CACA,mBAAA,CACA,qDAAA,CACA,SAAA,CACA,uCAAA,CAOA,4SACC,UAAA,CAQD,oWACC,UAAA,CAKH,wEACC,qDAAA,CAGD,6DACC,SAAA,CCkFD,iCACC,iBAAA,CACA,YAAA,CACA,UAAA,CACA,WAAA,CAEA,yCACC,yBAAA,CACA,sBAAA,CAED,yCACC,yBAAA,CACA,0BAAA,CAED,yCACC,6BAAA,CACA,0BAAA,CACA,yDACC,kBAAA,CAGF,yCACC,6BAAA,CACA,0BAAA,CAED,qCACC,UAAA,CACA,WAAA,CAEA,gBAAA,CAMF,8BACC,iBAAA,CACA,SAAA,CACA,YAAA,CACA,eAAA,CACA,qBAAA,CACA,UAAA,CACA,WAAA,CACA,qDAAA,CACA,SAAA,CACA,oCACC,UAAA,CACA,+BAAA,CACA,mBAAA,CAED,oCACC,eAAA,CACA,WAnBY,CAoBZ,cAAA,CACA,iBAAA,CACA,kBAAA,CACA,sBAAA,CACA,kCAAA,CACA,0CAAA,CACA,cA1BY,CA2BZ,gBA3BY,CAmCZ,mDACC,UAAA,CAED,mDACC,4BAAA,CACA,gDAAA,CAQD,oDACC,UAAA,CAQA,gXAEC,SAAA\",\"sourcesContent\":[\"/**\\n * @copyright Copyright (c) 2019 John Molakvoæ \\n *\\n * @author John Molakvoæ \\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 .\\n *\\n */\\n\\n.file,\\n.folder {\\n\\tposition: relative;\\n\\tdisplay: flex;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n\\tuser-select: none;\\n\\tborder-radius: var(--border-radius);\\n\\toverflow: hidden;\\n\\n\\t.cover {\\n\\t\\tz-index: 2;\\n\\t\\t// We want nice squares despite anything that is in it.\\n\\t\\t// The .cover is what makes the exact square size of the grid.\\n\\t\\t// We use padding-bottom because padding with percentage\\n\\t\\t// always refers to the width. And we only want to fit\\n\\t\\t// the css grid's width.\\n\\t\\twidth: 100%;\\n\\t\\tpadding-bottom: 100%;\\n\\t\\ttransition: opacity var(--animation-quick) ease-in-out;\\n\\t\\topacity: 0;\\n\\t\\tbackground-color: var(--color-main-text);\\n\\t}\\n\\n\\t&.active,\\n\\t&:active,\\n\\t&:hover,\\n\\t&:focus {\\n\\t\\t.cover {\\n\\t\\t\\topacity: .3;\\n\\t\\t}\\n\\t}\\n\\n\\t&--clear.active,\\n\\t&--clear:active,\\n\\t&--clear:hover,\\n\\t&--clear:focus {\\n\\t\\t.cover {\\n\\t\\t\\topacity: .1;\\n\\t\\t}\\n\\t}\\n}\\n\\n.fade-enter-active, .fade-leave-active {\\n\\ttransition: opacity var(--animation-quick) ease-in-out;\\n}\\n\\n.fade-enter, .fade-leave-to {\\n\\topacity: 0;\\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@import '../mixins/FileFolder';\\n\\n.folder-content {\\n\\tposition: absolute;\\n\\tdisplay: grid;\\n\\twidth: 100%;\\n\\theight: 100%;\\n\\t// folder layout if less than 4 pictures\\n\\t&--grid-1 {\\n\\t\\tgrid-template-columns: 1fr;\\n\\t\\tgrid-template-rows: 1fr;\\n\\t}\\n\\t&--grid-2 {\\n\\t\\tgrid-template-columns: 1fr;\\n\\t\\tgrid-template-rows: 1fr 1fr;\\n\\t}\\n\\t&--grid-3 {\\n\\t\\tgrid-template-columns: 1fr 1fr;\\n\\t\\tgrid-template-rows: 1fr 1fr;\\n\\t\\timg:first-child {\\n\\t\\t\\tgrid-column: span 2;\\n\\t\\t}\\n\\t}\\n\\t&--grid-4 {\\n\\t\\tgrid-template-columns: 1fr 1fr;\\n\\t\\tgrid-template-rows: 1fr 1fr;\\n\\t}\\n\\timg {\\n\\t\\twidth: 100%;\\n\\t\\theight: 100%;\\n\\n\\t\\tobject-fit: cover;\\n\\t}\\n}\\n\\n$name-height: 1rem;\\n\\n.folder-name {\\n\\tposition: absolute;\\n\\tz-index: 3;\\n\\tdisplay: flex;\\n\\toverflow: hidden;\\n\\tflex-direction: column;\\n\\twidth: 100%;\\n\\theight: 100%;\\n\\ttransition: opacity var(--animation-quick) ease-in-out;\\n\\topacity: 1;\\n\\t&__icon {\\n\\t\\theight: 40%;\\n\\t\\tmargin-top: calc(30% - #{$name-height} / 2); // center name+icon\\n\\t\\tbackground-size: 40%;\\n\\t}\\n\\t&__name {\\n\\t\\toverflow: hidden;\\n\\t\\theight: $name-height;\\n\\t\\tpadding: 0 10px;\\n\\t\\ttext-align: center;\\n\\t\\twhite-space: nowrap;\\n\\t\\ttext-overflow: ellipsis;\\n\\t\\tcolor: var(--color-main-background);\\n\\t\\ttext-shadow: 0 0 8px var(--color-main-text);\\n\\t\\tfont-size: $name-height;\\n\\t\\tline-height: $name-height;\\n\\t}\\n}\\n\\n// Cover management empty/full\\n.folder {\\n\\t// if no img, let's display the folder icon as default black\\n\\t&--clear {\\n\\t\\t.folder-name__icon {\\n\\t\\t\\topacity: .3;\\n\\t\\t}\\n\\t\\t.folder-name__name {\\n\\t\\t\\tcolor: var(--color-main-text);\\n\\t\\t\\ttext-shadow: 0 0 8px var(--color-main-background);\\n\\t\\t}\\n\\t}\\n\\n\\t// show the cover as background\\n\\t// if there are pictures in it\\n\\t// so we can sho the folder+name above it\\n\\t&:not(.folder--clear) {\\n\\t\\t.cover {\\n\\t\\t\\topacity: .3;\\n\\t\\t}\\n\\n\\t\\t// hide everything but pictures\\n\\t\\t// on hover/active/focus\\n\\t\\t&:active,\\n\\t\\t&:hover,\\n\\t\\t&:focus {\\n\\t\\t\\t.folder-name,\\n\\t\\t\\t.cover {\\n\\t\\t\\t\\topacity: 0;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".icon-confirm[data-v-080cb7fa]{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.photos-navigation[data-v-080cb7fa]{display:flex;position:block;height:44px;padding:0 40px;align-items:center;max-width:100%}.photos-navigation__title[data-v-080cb7fa]{margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.photos-navigation__share[data-v-080cb7fa]{margin-left:10px}.photos-navigation__back[data-v-080cb7fa],.photos-navigation__share[data-v-080cb7fa]{flex-grow:0;flex-shrink:0}@media(min-width: 0px)and (max-width: 400px){.photos-navigation[data-v-080cb7fa]{margin-top:-7.3333333333px}.photos-navigation--root .photos-navigation__title[data-v-080cb7fa]{padding-left:-36px}}@media(min-width: 400px)and (max-width: 700px){.photos-navigation[data-v-080cb7fa]{margin-top:-7.3333333333px}.photos-navigation--root .photos-navigation__title[data-v-080cb7fa]{padding-left:-36px}}@media(min-width: 700px)and (max-width: 1024px){.photos-navigation[data-v-080cb7fa]{margin-top:-7.3333333333px}.photos-navigation__back[data-v-080cb7fa]{margin:0 0px}.photos-navigation--root .photos-navigation__title[data-v-080cb7fa]{padding-left:0px}}@media(min-width: 1024px)and (max-width: 1280px){.photos-navigation[data-v-080cb7fa]{margin-top:-7.3333333333px}.photos-navigation__back[data-v-080cb7fa]{margin:0 0px}.photos-navigation--root .photos-navigation__title[data-v-080cb7fa]{padding-left:0px}}@media(min-width: 1280px)and (max-width: 1440px){.photos-navigation[data-v-080cb7fa]{margin-top:0px}.photos-navigation__back[data-v-080cb7fa]{margin:0 11px}.photos-navigation--root .photos-navigation__title[data-v-080cb7fa]{padding-left:22px}}@media(min-width: 1440px)and (max-width: 1600px){.photos-navigation[data-v-080cb7fa]{margin-top:0px}.photos-navigation__back[data-v-080cb7fa]{margin:0 11px}.photos-navigation--root .photos-navigation__title[data-v-080cb7fa]{padding-left:22px}}@media(min-width: 1600px)and (max-width: 2048px){.photos-navigation[data-v-080cb7fa]{margin-top:0px}.photos-navigation__back[data-v-080cb7fa]{margin:0 11px}.photos-navigation--root .photos-navigation__title[data-v-080cb7fa]{padding-left:22px}}@media(min-width: 2048px)and (max-width: 2560px){.photos-navigation[data-v-080cb7fa]{margin-top:0px}.photos-navigation__back[data-v-080cb7fa]{margin:0 22px}.photos-navigation--root .photos-navigation__title[data-v-080cb7fa]{padding-left:44px}}@media(min-width: 2560px)and (max-width: 3440px){.photos-navigation[data-v-080cb7fa]{margin-top:0px}.photos-navigation__back[data-v-080cb7fa]{margin:0 22px}.photos-navigation--root .photos-navigation__title[data-v-080cb7fa]{padding-left:44px}}@media(min-width: 3440px){.photos-navigation[data-v-080cb7fa]{margin-top:0px}.photos-navigation__back[data-v-080cb7fa]{margin:0 22px}.photos-navigation--root .photos-navigation__title[data-v-080cb7fa]{padding-left:44px}}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/Navigation.vue\",\"webpack://./src/mixins/GridSizes.scss\"],\"names\":[],\"mappings\":\"AAoJA,+BACC,gCAAA,CAAA,wBAAA,CAGD,oCACC,YAAA,CACA,cAAA,CACA,WAAA,CACA,cAAA,CACA,kBAAA,CACA,cAAA,CACA,2CACC,QAAA,CACA,kBAAA,CACA,eAAA,CACA,sBAAA,CAED,2CACC,gBAAA,CAED,qFAEC,WAAA,CACA,aAAA,CCvIC,6CDoHH,oCAyBE,0BAAA,CAOA,oEACC,kBAAA,CAAA,CCrJA,+CDoHH,oCAyBE,0BAAA,CAOA,oEACC,kBAAA,CAAA,CCrJA,gDDoHH,oCAyBE,0BAAA,CAGC,0CACC,YAAA,CAGF,oEACC,gBAAA,CAAA,CCrJA,iDDoHH,oCAyBE,0BAAA,CAGC,0CACC,YAAA,CAGF,oEACC,gBAAA,CAAA,CCrJA,iDDoHH,oCAyBE,cAAA,CAGC,0CACC,aAAA,CAGF,oEACC,iBAAA,CAAA,CCrJA,iDDoHH,oCAyBE,cAAA,CAGC,0CACC,aAAA,CAGF,oEACC,iBAAA,CAAA,CCrJA,iDDoHH,oCAyBE,cAAA,CAGC,0CACC,aAAA,CAGF,oEACC,iBAAA,CAAA,CCrJA,iDDoHH,oCAyBE,cAAA,CAGC,0CACC,aAAA,CAGF,oEACC,iBAAA,CAAA,CCrJA,iDDoHH,oCAyBE,cAAA,CAGC,0CACC,aAAA,CAGF,oEACC,iBAAA,CAAA,CCzJA,0BDwHH,oCAyBE,cAAA,CAGC,0CACC,aAAA,CAGF,oEACC,iBAAA,CAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n@use 'sass:math';\\n@import '../mixins/GridSizes';\\n\\n.icon-confirm {\\n\\ttransform: rotate(180deg)\\n}\\n\\n.photos-navigation {\\n\\tdisplay: flex;\\n\\tposition: block;\\n\\theight: 44px;\\n\\tpadding: 0 40px;\\n\\talign-items: center;\\n\\tmax-width: 100%;\\n\\t&__title {\\n\\t\\tmargin: 0;\\n\\t\\twhite-space: nowrap;\\n\\t\\toverflow: hidden;\\n\\t\\ttext-overflow: ellipsis;\\n\\t}\\n\\t&__share {\\n\\t\\tmargin-left: 10px;\\n\\t}\\n\\t&__back,\\n\\t&__share {\\n\\t\\tflex-grow: 0;\\n\\t\\tflex-shrink: 0;\\n\\t}\\n\\n\\t// Specific grid spacing\\n\\t@include grid-sizes using ($marginTop, $marginW) {\\n\\t\\t// we space this with 2/3 margin top, 1/3 margin bottom\\n\\t\\tmargin-top: math.div($marginTop - 44px * 2, 3);\\n\\n\\t\\t@if $marginW >= 44px {\\n\\t\\t\\t&__back {\\n\\t\\t\\t\\tmargin: 0 math.div($marginW - 44px, 2);\\n\\t\\t\\t}\\n\\t\\t}\\n\\t\\t&--root &__title {\\n\\t\\t\\tpadding-left: #{$marginW - 44}px;\\n\\t\\t}\\n\\t}\\n}\\n\",\"/**\\n * @copyright Copyright (c) 2019 John Molakvoæ \\n *\\n * @author John Molakvoæ \\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 .\\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\"],\"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.isReady)?_c('div',{staticClass:\"emptycontent\"},[(_vm.haveIllustration)?_c('div',{staticClass:\"illustration\",domProps:{\"innerHTML\":_vm._s(_vm.illustration)}}):_c('div',{staticClass:\"icon-error\"}),_vm._v(\" \"),_c('h2',[_vm._t(\"default\")],2),_vm._v(\" \"),_c('p',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.$slots.desc),expression:\"$slots.desc\"}]},[_vm._t(\"desc\")],2)]):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EmptyContent.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!./EmptyContent.vue?vue&type=script&lang=js&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./EmptyContent.vue?vue&type=style&index=0&lang=scss&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./EmptyContent.vue?vue&type=style&index=0&lang=scss&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./EmptyContent.vue?vue&type=template&id=b4c69d2c&\"\nimport script from \"./EmptyContent.vue?vue&type=script&lang=js&\"\nexport * from \"./EmptyContent.vue?vue&type=script&lang=js&\"\nimport style0 from \"./EmptyContent.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('router-link',{staticClass:\"folder\",class:{'folder--clear': _vm.isEmpty},attrs:{\"to\":_vm.to,\"aria-label\":_vm.ariaLabel}},[_c('transition',{attrs:{\"name\":\"fade\"}},[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.loaded),expression:\"loaded\"}],staticClass:\"folder-content\",class:(\"folder-content--grid-\" + (_vm.previewList.length)),attrs:{\"role\":\"none\"}},_vm._l((_vm.previewList),function(file){return _c('img',{key:file.fileid,attrs:{\"src\":_vm.generateImgSrc(file),\"alt\":\"\"},on:{\"load\":function($event){_vm.loaded = true},\"error\":function($event){return _vm.onPreviewFail(file)}}})}),0)]),_vm._v(\" \"),_c('div',{staticClass:\"folder-name\"},[_c('span',{staticClass:\"folder-name__icon\",class:[!_vm.isEmpty ? 'icon-white' : 'icon-dark', _vm.icon],attrs:{\"role\":\"img\"}}),_vm._v(\" \"),_c('p',{staticClass:\"folder-name__name\",attrs:{\"id\":_vm.ariaUuid}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.name)+\"\\n\\t\\t\")])]),_vm._v(\" \"),_c('div',{staticClass:\"cover\",attrs:{\"role\":\"none\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FolderTagPreview.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!./FolderTagPreview.vue?vue&type=script&lang=js&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./FolderTagPreview.vue?vue&type=style&index=0&id=b8db2226&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./FolderTagPreview.vue?vue&type=style&index=0&id=b8db2226&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FolderTagPreview.vue?vue&type=template&id=b8db2226&scoped=true&\"\nimport script from \"./FolderTagPreview.vue?vue&type=script&lang=js&\"\nexport * from \"./FolderTagPreview.vue?vue&type=script&lang=js&\"\nimport style0 from \"./FolderTagPreview.vue?vue&type=style&index=0&id=b8db2226&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 \"b8db2226\",\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:\"photos-navigation\",class:{'photos-navigation--root': _vm.isRoot},attrs:{\"role\":\"toolbar\"}},[(!_vm.isRoot)?_c('Actions',{staticClass:\"photos-navigation__back\"},[_c('ActionButton',{attrs:{\"icon\":\"icon-confirm\"},on:{\"click\":_vm.folderUp}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.backToText)+\"\\n\\t\\t\")])],1):_vm._e(),_vm._v(\" \"),_c('h2',{staticClass:\"photos-navigation__title\"},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.name)+\"\\n\\t\")]),_vm._v(\" \"),(!_vm.isRoot && _vm.showActions)?_c('Actions',{staticClass:\"photos-navigation__share\"},[_c('ActionButton',{attrs:{\"icon\":\"icon-shared\"},on:{\"click\":_vm.showSidebar}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('photos', 'Share this folder'))+\"\\n\\t\\t\")])],1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Navigation.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!./Navigation.vue?vue&type=script&lang=js&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./Navigation.vue?vue&type=style&index=0&id=080cb7fa&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./Navigation.vue?vue&type=style&index=0&id=080cb7fa&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Navigation.vue?vue&type=template&id=080cb7fa&scoped=true&\"\nimport script from \"./Navigation.vue?vue&type=script&lang=js&\"\nexport * from \"./Navigation.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Navigation.vue?vue&type=style&index=0&id=080cb7fa&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 \"080cb7fa\",\n null\n \n)\n\nexport default component.exports","var map = {\n\t\"./empty.svg\": [\n\t\t51612,\n\t\t\"src_assets_Illustrations_empty_svg\"\n\t],\n\t\"./folder.svg\": [\n\t\t80917,\n\t\t\"src_assets_Illustrations_folder_svg\"\n\t],\n\t\"./images.svg\": [\n\t\t39777,\n\t\t\"src_assets_Illustrations_images_svg\"\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(() => {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\n\tvar ids = map[req], id = ids[0];\n\treturn __webpack_require__.e(ids[1]).then(() => {\n\t\treturn __webpack_require__.t(id, 1 | 16);\n\t});\n}\nwebpackAsyncContext.keys = () => (Object.keys(map));\nwebpackAsyncContext.id = 57767;\nmodule.exports = webpackAsyncContext;"],"names":["module","exports","sizes","marginTop","marginW","count","gap","max","Vue","data","gridConfig","watch","val","this","$emit","created","window","addEventListener","handleWindowResize","beforeDestroy","removeEventListener","methods","currentSize","Object","keys","find","size","document","documentElement","clientWidth","getGridConfig","console","debug","appName","assign","request","cancelToken","axios","fetch","url","options","token","cancel","___CSS_LOADER_EXPORT___","push","id","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","_vm","_h","$createElement","_c","_self","staticClass","domProps","_s","illustration","_v","_t","directives","name","rawName","value","$slots","expression","_e","class","isEmpty","attrs","to","ariaLabel","previewList","_l","file","key","fileid","generateImgSrc","on","$event","loaded","onPreviewFail","icon","ariaUuid","isRoot","folderUp","backToText","showActions","showSidebar","t","map","webpackAsyncContext","req","__webpack_require__","o","Promise","resolve","then","e","Error","code","ids"],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-src_services_DavRequest_js-src_components_File_vue.js b/js/photos-src_services_DavRequest_js-src_components_File_vue.js deleted file mode 100644 index 6cf529684..000000000 --- a/js/photos-src_services_DavRequest_js-src_components_File_vue.js +++ /dev/null @@ -1,3 +0,0 @@ -/*! For license information please see photos-src_services_DavRequest_js-src_components_File_vue.js.LICENSE.txt */ -"use strict";(self.webpackChunkphotos=self.webpackChunkphotos||[]).push([["src_services_DavRequest_js-src_components_File_vue"],{2161:(t,n,e)=>{e.d(n,{N:()=>i,Z:()=>o});var i="\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t";const o='\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t'.concat(i,"\n\t\t\t\t\n\t\t\t")},84496:(t,n,e)=>{e.d(n,{Z:()=>r});var i=e(87537),o=e.n(i),a=e(23645),A=e.n(a)()(o());A.push([t.id,'.file-container[data-v-67e992e4]{background:var(--color-primary-light);position:relative;height:100%;width:100%;border:2px solid var(--color-main-background);box-sizing:border-box}.file-container.selected[data-v-67e992e4]::after,.file-container[data-v-67e992e4]:focus-within::after{position:absolute;top:0;left:0;z-index:2;width:100%;height:100%;content:"";outline:var(--color-primary) solid 4px;outline-offset:-4px;pointer-events:none}.file-container .file[data-v-67e992e4]{width:100%;height:100%;box-sizing:border-box;outline:none}.file-container .file__images[data-v-67e992e4]{display:contents}.file-container .file__images .video-icon[data-v-67e992e4]{position:absolute;top:0px;right:0px;width:100%;height:100%;z-index:1;opacity:.8}.file-container .file__images .video-icon[data-v-67e992e4] .material-design-icon__svg{fill:var(--color-main-background)}.file-container .file__images img[data-v-67e992e4]{width:100%;height:100%;object-fit:cover;position:absolute;color:rgba(0,0,0,0)}.file-container .file__images .loading-overlay[data-v-67e992e4]{position:absolute;height:100%;width:100%;display:flex;align-content:center;align-items:center;justify-content:center}.file-container .file__images .loading-overlay svg[data-v-67e992e4]{width:70%;height:70%}.file-container .file__hidden-description[data-v-67e992e4]{position:absolute;left:-10000px;top:-10000px;width:1px;height:1px;overflow:hidden}.file-container .file__hidden-description.show[data-v-67e992e4]{position:initial;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;height:-webkit-fit-content;height:-moz-fit-content;height:fit-content}.file-container:hover .selection-checkbox[data-v-67e992e4],.file-container.selected .selection-checkbox[data-v-67e992e4],.file-container:focus-within .selection-checkbox[data-v-67e992e4]{display:flex}.file-container:hover .favorite-state[data-v-67e992e4],.file-container.selected .favorite-state[data-v-67e992e4],.file-container:focus-within .favorite-state[data-v-67e992e4]{display:none}.file-container .selection-checkbox[data-v-67e992e4]{display:none;position:absolute;top:8px;right:min(22px,50% - 7px);z-index:1;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}.file-container .selection-checkbox[data-v-67e992e4] .checkbox-radio-switch__label{padding:10px;box-sizing:border-box}.file-container .selection-checkbox[data-v-67e992e4] .checkbox-radio-switch__label::after{content:"";background:var(--color-primary-light);width:16px;height:16px;position:absolute;left:1px;z-index:-1}.file-container .selection-checkbox[data-v-67e992e4] .checkbox-radio-switch__label .checkbox-radio-switch__icon{margin:0}.file-container .selection-checkbox .input-label[data-v-67e992e4]{position:fixed;z-index:-1;top:-5000px;left:-5000px}.file-container .favorite-state[data-v-67e992e4]{position:absolute;top:2px;right:min(2px,50% - 7px)}.file-container .favorite-state[data-v-67e992e4] .material-design-icon__svg{fill:#fc0}.file-container .favorite-state[data-v-67e992e4] .material-design-icon__svg path{stroke:var(--color-primary-light);stroke-width:1px}',"",{version:3,sources:["webpack://./src/components/File.vue"],names:[],mappings:"AAiOA,iCACC,qCAAA,CACA,iBAAA,CACA,WAAA,CACA,UAAA,CACA,6CAAA,CACA,qBAAA,CAIC,sGACC,iBAAA,CACA,KAAA,CACA,MAAA,CACA,SAAA,CACA,UAAA,CACA,WAAA,CACA,UAAA,CACA,sCAAA,CACA,mBAAA,CACA,mBAAA,CAIF,uCACC,UAAA,CACA,WAAA,CACA,qBAAA,CACA,YAAA,CAEA,+CACC,gBAAA,CAEA,2DACC,iBAAA,CACA,OAAA,CACA,SAAA,CACA,UAAA,CACA,WAAA,CACA,SAAA,CACA,UAAA,CAEA,uFACC,iCAAA,CAIF,mDACC,UAAA,CACA,WAAA,CACA,gBAAA,CACA,iBAAA,CACA,mBAAA,CAGD,gEACC,iBAAA,CACA,WAAA,CACA,UAAA,CACA,YAAA,CACA,oBAAA,CACA,kBAAA,CACA,sBAAA,CAEA,oEACC,SAAA,CACA,UAAA,CAKH,2DACC,iBAAA,CACA,aAAA,CACA,YAAA,CACA,SAAA,CACA,UAAA,CACA,eAAA,CAEA,gEACC,gBAAA,CACA,yBAAA,CAAA,sBAAA,CAAA,iBAAA,CACA,0BAAA,CAAA,uBAAA,CAAA,kBAAA,CAOF,2LACC,YAAA,CAGD,+KACC,YAAA,CAIF,qDACC,YAAA,CACA,iBAAA,CACA,OAAA,CAEA,yBAAA,CACA,SAAA,CACA,yBAAA,CAAA,sBAAA,CAAA,iBAAA,CAGA,oFACC,YAAA,CACA,qBAAA,CAGA,2FACC,UAAA,CACA,qCAAA,CACA,UAAA,CACA,WAAA,CACA,iBAAA,CACA,QAAA,CACA,UAAA,CAGD,iHACC,QAAA,CAIF,kEACC,cAAA,CACA,UAAA,CACA,WAAA,CACA,YAAA,CAIF,iDACC,iBAAA,CACA,OAAA,CAEA,wBAAA,CAEA,6EACC,SAAA,CAEA,kFACC,iCAAA,CACA,gBAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.file-container {\n\tbackground: var(--color-primary-light);\n\tposition: relative;\n\theight: 100%;\n\twidth: 100%;\n\tborder: 2px solid var(--color-main-background); // Use border so create a separation between images.\n\tbox-sizing: border-box;\n\n\t// Selection border.\n\t&.selected, &:focus-within {\n\t\t&::after {\n\t\t\tposition: absolute;\n\t\t\ttop: 0;\n\t\t\tleft: 0;\n\t\t\tz-index: 2;\n\t\t\twidth: 100%;\n\t\t\theight: 100%;\n\t\t\tcontent: \'\';\n\t\t\toutline: var(--color-primary) solid 4px;\n\t\t\toutline-offset: -4px;\n\t\t\tpointer-events: none;\n\t\t}\n\t}\n\n\t.file {\n\t\twidth: 100%;\n\t\theight: 100%;\n\t\tbox-sizing: border-box;\n\t\toutline: none; // Override global focus state.\n\n\t\t&__images {\n\t\t\tdisplay: contents;\n\n\t\t\t.video-icon {\n\t\t\t\tposition: absolute;\n\t\t\t\ttop: 0px;\n\t\t\t\tright: 0px;\n\t\t\t\twidth: 100%;\n\t\t\t\theight: 100%;\n\t\t\t\tz-index: 1;\n\t\t\t\topacity: 0.8;\n\n\t\t\t\t::v-deep .material-design-icon__svg {\n\t\t\t\t\tfill: var(--color-main-background);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\timg {\n\t\t\t\twidth: 100%;\n\t\t\t\theight: 100%;\n\t\t\t\tobject-fit: cover;\n\t\t\t\tposition: absolute;\n\t\t\t\tcolor: transparent; /// Hide alt=\'\' text when loading.\n\t\t\t}\n\n\t\t\t.loading-overlay {\n\t\t\t\tposition: absolute;\n\t\t\t\theight: 100%;\n\t\t\t\twidth: 100%;\n\t\t\t\tdisplay: flex;\n\t\t\t\talign-content: center;\n\t\t\t\talign-items: center;\n\t\t\t\tjustify-content: center;\n\n\t\t\t\tsvg {\n\t\t\t\t\twidth: 70%;\n\t\t\t\t\theight: 70%;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t&__hidden-description {\n\t\t\tposition: absolute;\n\t\t\tleft: -10000px;\n\t\t\ttop: -10000px;\n\t\t\twidth: 1px;\n\t\t\theight: 1px;\n\t\t\toverflow: hidden;\n\n\t\t\t&.show {\n\t\t\t\tposition: initial;\n\t\t\t\twidth: fit-content;\n\t\t\t\theight: fit-content;\n\t\t\t}\n\t\t}\n\t}\n\n\t// Reveal checkbox on hover.\n\t&:hover, &.selected, &:focus-within {\n\t\t.selection-checkbox {\n\t\t\tdisplay: flex;\n\t\t}\n\n\t\t.favorite-state {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n\n\t.selection-checkbox {\n\t\tdisplay: none;\n\t\tposition: absolute;\n\t\ttop: 8px;\n\t\t// Fancy calculation to render the checkbox in the middle of narrow images.\n\t\tright: min(22px, calc(50% - 7px));\n\t\tz-index: 1;\n\t\twidth: fit-content;\n\n\t\t// Make the checkbox background round on hover.\n\t\t::v-deep .checkbox-radio-switch__label {\n\t\t\tpadding: 10px;\n\t\t\tbox-sizing: border-box;\n\n\t\t\t// Add a background to the checkbox so we do not see the image through it.\n\t\t\t&::after {\n\t\t\t\tcontent: \'\';\n\t\t\t\tbackground: var(--color-primary-light);\n\t\t\t\twidth: 16px;\n\t\t\t\theight: 16px;\n\t\t\t\tposition: absolute;\n\t\t\t\tleft: 1px;\n\t\t\t\tz-index: -1;\n\t\t\t}\n\n\t\t\t.checkbox-radio-switch__icon {\n\t\t\t\tmargin: 0;\n\t\t\t}\n\t\t}\n\n\t\t.input-label {\n\t\t\tposition: fixed;\n\t\t\tz-index: -1;\n\t\t\ttop: -5000px;\n\t\t\tleft: -5000px;\n\t\t}\n\t}\n\n\t.favorite-state {\n\t\tposition: absolute;\n\t\ttop: 2px;\n\t\t// Fancy calculation to render the start in the middle of narrow images.\n\t\tright: min(2px, calc(50% - 7px));\n\n\t\t::v-deep .material-design-icon__svg {\n\t\t\tfill: #FC0;\n\n\t\t\tpath {\n\t\t\t\tstroke: var(--color-primary-light);\n\t\t\t\tstroke-width: 1px;\n\t\t\t}\n\t\t}\n\t}\n}\n'],sourceRoot:""}]);const r=A},53932:(n,e,i)=>{i.d(e,{Z:()=>z});var o=i(75760),a=i(16235),A=i(79753),r=i(45994),s=i(33476),c=i(81090),l=i(32114);function d(t,n,e,i,o,a,A){try{var r=t[a](A),s=r.value}catch(t){return void e(t)}r.done?n(s):Promise.resolve(s).then(i,o)}function h(t){return function(){var n=this,e=arguments;return new Promise((function(i,o){var a=t.apply(n,e);function A(t){d(a,i,o,A,r,"next",t)}function r(t){d(a,i,o,A,r,"throw",t)}A(void 0)}))}}const C={name:"File",components:{CheckboxRadioSwitch:s.CheckboxRadioSwitch,Star:o.default,VideoIcon:a.Z},mixins:[c.Z],inheritAttrs:!1,props:{file:{type:Object,required:!0},selected:{type:Boolean,required:!0},allowSelection:{type:Boolean,default:!0},visibility:{type:String,required:!0},semaphore:{type:l.Z,required:!0}},data:function(){return{loaded:!1,error:!1,canLoad:!1,semaphoreSymbol:null,isDestroyed:!1}},computed:{davPath:function(){return(0,A.generateRemoteUrl)("dav/files/".concat((0,r.ts)().uid))+this.file.filename},ariaDescription:function(){return"image-description-".concat(this.file.fileid)},ariaLabel:function(){return t("photos",'Open the full size "{name}" image',{name:this.file.basename})},isImage:function(){return this.file.mime.startsWith("image")},decodedEtag:function(){return this.file.etag.replace(""","").replace(""","")},srcVisible:function(){return this.getItemURL(512)},srcNear:function(){return this.getItemURL(64)}},mounted:function(){var t=this;setTimeout(h(regeneratorRuntime.mark((function n(){return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,t.semaphore.acquire((function(){switch(t.visibility){case"visible":return 1;case"near":return 2;default:return 3}}),t.file.fileid);case 2:t.semaphoreSymbol=n.sent,t.canLoad=!0,("none"===t.visibility||t.isDestroyed)&&t.releaseSemaphore();case 5:case"end":return n.stop()}}),n)}))),250)},beforeDestroy:function(){this.isDestroyed=!0,this.releaseSemaphore(),void 0!==this.$refs.imgNear&&(this.$refs.imgNear.src=""),void 0!==this.$refs.srcVisible&&(this.$refs.srcVisible.src="")},methods:{emitClick:function(){this.$emit("click",this.file.fileid)},onLoad:function(){this.loaded=!0,this.releaseSemaphore()},onError:function(){this.error=!0,this.releaseSemaphore()},onToggle:function(t){this.$emit("select-toggled",{id:this.file.fileid,value:t})},getItemURL:function(t){return(0,A.generateUrl)("/core/preview?fileId=".concat(this.file.fileid,"&c=").concat(this.decodedEtag,"&x=").concat(t,"&y=").concat(t,"&forceIcon=0&a=1"))},releaseSemaphore:function(){null!==this.semaphoreSymbol&&(this.semaphore.release(this.semaphoreSymbol),this.semaphoreSymbol=null)}}};var p=i(93379),f=i.n(p),g=i(7795),m=i.n(g),u=i(90569),v=i.n(u),b=i(3565),x=i.n(b),w=i(19216),_=i.n(w),y=i(44589),k=i.n(y),B=i(84496),S={};S.styleTagTransform=k(),S.setAttributes=x(),S.insert=v().bind(null,"head"),S.domAPI=m(),S.insertStyleElement=_();f()(B.Z,S);B.Z&&B.Z.locals&&B.Z.locals;const z=(0,i(51900).Z)(C,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("div",{staticClass:"file-container",class:{selected:t.selected}},[e("a",{staticClass:"file",attrs:{href:t.davPath,"aria-label":t.ariaLabel},on:{click:function(n){return n.preventDefault(),t.emitClick.apply(null,arguments)}}},[e("div",{staticClass:"file__images"},[t.file.mime.includes("video")?e("VideoIcon",{staticClass:"video-icon",attrs:{size:64}}):t._e(),t._v(" "),"none"!==t.visibility&&t.canLoad&&!t.error?e("img",{key:t.file.basename+"-near",ref:"imgNear",attrs:{src:t.srcNear,alt:t.file.basename,"aria-describedby":t.ariaDescription},on:{load:t.onLoad,error:t.onError}}):t._e(),t._v(" "),"visible"===t.visibility&&t.canLoad&&!t.error?e("img",{key:t.file.basename+"-visible",ref:"imgVisible",attrs:{src:t.srcVisible,alt:t.file.basename,"aria-describedby":t.ariaDescription},on:{load:t.onLoad,error:t.onError}}):t._e()],1),t._v(" "),e("p",{staticClass:"file__hidden-description",class:{show:t.error},attrs:{id:t.ariaDescription}},[t._v(t._s(t.file.basename))])]),t._v(" "),t.allowSelection?e("CheckboxRadioSwitch",{staticClass:"selection-checkbox",attrs:{checked:t.selected},on:{"update:checked":t.onToggle}},[e("span",{staticClass:"input-label"},[t._v(t._s(t.t("photos","Select image {imageName}",{imageName:t.file.basename})))])]):t._e(),t._v(" "),1===t.file.favorite?e("Star",{staticClass:"favorite-state",attrs:{"aria-label":t.t("photos","The file is in the favorites")}}):t._e()],1)}),[],!1,null,"67e992e4",null).exports}}]); -//# sourceMappingURL=photos-src_services_DavRequest_js-src_components_File_vue.js.map?v=13b510ceddc372a7fedd \ No newline at end of file diff --git a/js/photos-src_services_DavRequest_js-src_components_File_vue.js.LICENSE.txt b/js/photos-src_services_DavRequest_js-src_components_File_vue.js.LICENSE.txt deleted file mode 100644 index 86416a845..000000000 --- a/js/photos-src_services_DavRequest_js-src_components_File_vue.js.LICENSE.txt +++ /dev/null @@ -1,21 +0,0 @@ -/** - * @copyright Copyright (c) 2019 John Molakvoæ - * - * @author John Molakvoæ - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ diff --git a/js/photos-src_services_DavRequest_js-src_components_File_vue.js.map b/js/photos-src_services_DavRequest_js-src_components_File_vue.js.map deleted file mode 100644 index 4e6faefe5..000000000 --- a/js/photos-src_services_DavRequest_js-src_components_File_vue.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-src_services_DavRequest_js-src_components_File_vue.js?v=13b510ceddc372a7fedd","mappings":";yKAqBA,IAAMA,EAAQ,yPAcd,QAAe,sPAMRA,EANP,iHChCIC,QAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,wgGAA6gG,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,uCAAuC,MAAQ,GAAG,SAAW,ogCAAogC,eAAiB,CAAC,2sIAAqxI,WAAa,MAEt8Q,4CCPA,6YC+EA,MC/EqK,ED+ErK,CACA,YACA,YACA,0CACA,eACA,eAEA,aACA,gBACA,OACA,MACA,YACA,aAEA,UACA,aACA,aAEA,gBACA,aACA,YAEA,YACA,YACA,aAEA,WACA,SACA,cAIA,KAhCA,WAiCA,OACA,UACA,SACA,WACA,qBACA,eAEA,EAEA,UAEA,QAFA,WAGA,qFACA,EAEA,gBANA,WAOA,mDACA,EAEA,UAVA,WAWA,gFACA,EAEA,QAdA,WAeA,yCACA,EAEA,YAlBA,WAmBA,+DACA,EAEA,WAtBA,WAuBA,2BACA,EAEA,QA1BA,WA2BA,0BACA,GAGA,QAzEA,WAyEA,WAEA,mJACA,gCACA,qBACA,cACA,SACA,WACA,SACA,QACA,SAEA,kBAVA,OACA,kBADA,OAYA,cACA,uCACA,qBAdA,2CAgBA,IACA,EAEA,cA9FA,WA+FA,oBACA,6BAGA,yBACA,gCAEA,4BACA,6BAEA,EAEA,SACA,UADA,WAEA,oCACA,EAGA,OANA,WAOA,eACA,uBACA,EAEA,QAXA,WAYA,cACA,uBACA,EAEA,SAhBA,SAgBA,GACA,0DACA,EAEA,WApBA,SAoBA,GACA,2JAEA,EAEA,iBAzBA,WA0BA,8BAGA,6CACA,0BACA,yIE9MIC,EAAU,CAAC,EAEfA,EAAQC,kBAAoB,IAC5BD,EAAQE,cAAgB,IAElBF,EAAQG,OAAS,SAAc,KAAM,QAE3CH,EAAQI,OAAS,IACjBJ,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKJ,KAAW,YAAiB,WCPlD,SAXgB,cACd,GJTW,WAAa,IAAIM,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACE,YAAY,iBAAiBC,MAAM,CAACC,SAAUR,EAAIQ,WAAW,CAACJ,EAAG,IAAI,CAACE,YAAY,OAAOG,MAAM,CAAC,KAAOT,EAAIU,QAAQ,aAAaV,EAAIW,WAAWC,GAAG,CAAC,MAAQ,SAASC,GAAgC,OAAxBA,EAAOC,iBAAwBd,EAAIe,UAAUC,MAAM,KAAMC,UAAU,IAAI,CAACb,EAAG,MAAM,CAACE,YAAY,gBAAgB,CAAEN,EAAIkB,KAAKC,KAAKC,SAAS,SAAUhB,EAAG,YAAY,CAACE,YAAY,aAAaG,MAAM,CAAC,KAAO,MAAMT,EAAIqB,KAAKrB,EAAIsB,GAAG,KAAyB,SAAnBtB,EAAIuB,YAAyBvB,EAAIwB,UAAYxB,EAAIyB,MAAOrB,EAAG,MAAM,CAACsB,IAAM1B,EAAIkB,KAAa,SAAI,QAASS,IAAI,UAAUlB,MAAM,CAAC,IAAMT,EAAI4B,QAAQ,IAAM5B,EAAIkB,KAAKW,SAAS,mBAAmB7B,EAAI8B,iBAAiBlB,GAAG,CAAC,KAAOZ,EAAI+B,OAAO,MAAQ/B,EAAIgC,WAAWhC,EAAIqB,KAAKrB,EAAIsB,GAAG,KAAyB,YAAnBtB,EAAIuB,YAA4BvB,EAAIwB,UAAYxB,EAAIyB,MAAOrB,EAAG,MAAM,CAACsB,IAAM1B,EAAIkB,KAAa,SAAI,WAAYS,IAAI,aAAalB,MAAM,CAAC,IAAMT,EAAIiC,WAAW,IAAMjC,EAAIkB,KAAKW,SAAS,mBAAmB7B,EAAI8B,iBAAiBlB,GAAG,CAAC,KAAOZ,EAAI+B,OAAO,MAAQ/B,EAAIgC,WAAWhC,EAAIqB,MAAM,GAAGrB,EAAIsB,GAAG,KAAKlB,EAAG,IAAI,CAACE,YAAY,2BAA2BC,MAAM,CAAC2B,KAAMlC,EAAIyB,OAAOhB,MAAM,CAAC,GAAKT,EAAI8B,kBAAkB,CAAC9B,EAAIsB,GAAGtB,EAAImC,GAAGnC,EAAIkB,KAAKW,eAAe7B,EAAIsB,GAAG,KAAMtB,EAAkB,eAAEI,EAAG,sBAAsB,CAACE,YAAY,qBAAqBG,MAAM,CAAC,QAAUT,EAAIQ,UAAUI,GAAG,CAAC,iBAAiBZ,EAAIoC,WAAW,CAAChC,EAAG,OAAO,CAACE,YAAY,eAAe,CAACN,EAAIsB,GAAGtB,EAAImC,GAAGnC,EAAIqC,EAAE,SAAU,2BAA4B,CAACC,UAAWtC,EAAIkB,KAAKW,iBAAiB7B,EAAIqB,KAAKrB,EAAIsB,GAAG,KAA4B,IAAtBtB,EAAIkB,KAAKqB,SAAgBnC,EAAG,OAAO,CAACE,YAAY,iBAAiBG,MAAM,CAAC,aAAaT,EAAIqC,EAAE,SAAU,mCAAmCrC,EAAIqB,MAAM,EAAE,GACpnD,IIWpB,EACA,KACA,WACA,MAI8B","sources":["webpack:///photos/src/services/DavRequest.js","webpack:///photos/src/components/File.vue?vue&type=style&index=0&id=67e992e4&lang=scss&scoped=true&","webpack:///photos/src/components/File.vue?vue&type=template&id=67e992e4&scoped=true&","webpack:///photos/src/components/File.vue","webpack:///photos/src/components/File.vue?vue&type=script&lang=js&","webpack://photos/./src/components/File.vue?c765","webpack://photos/./src/components/File.vue?f552"],"sourcesContent":["/**\n * @copyright Copyright (c) 2019 John Molakvoæ \n *\n * @author John Molakvoæ \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 .\n *\n */\nconst props = `\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t`\n\nexport { props }\nexport default `\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t${props}\n\t\t\t\t\n\t\t\t`\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".file-container[data-v-67e992e4]{background:var(--color-primary-light);position:relative;height:100%;width:100%;border:2px solid var(--color-main-background);box-sizing:border-box}.file-container.selected[data-v-67e992e4]::after,.file-container[data-v-67e992e4]:focus-within::after{position:absolute;top:0;left:0;z-index:2;width:100%;height:100%;content:\\\"\\\";outline:var(--color-primary) solid 4px;outline-offset:-4px;pointer-events:none}.file-container .file[data-v-67e992e4]{width:100%;height:100%;box-sizing:border-box;outline:none}.file-container .file__images[data-v-67e992e4]{display:contents}.file-container .file__images .video-icon[data-v-67e992e4]{position:absolute;top:0px;right:0px;width:100%;height:100%;z-index:1;opacity:.8}.file-container .file__images .video-icon[data-v-67e992e4] .material-design-icon__svg{fill:var(--color-main-background)}.file-container .file__images img[data-v-67e992e4]{width:100%;height:100%;object-fit:cover;position:absolute;color:rgba(0,0,0,0)}.file-container .file__images .loading-overlay[data-v-67e992e4]{position:absolute;height:100%;width:100%;display:flex;align-content:center;align-items:center;justify-content:center}.file-container .file__images .loading-overlay svg[data-v-67e992e4]{width:70%;height:70%}.file-container .file__hidden-description[data-v-67e992e4]{position:absolute;left:-10000px;top:-10000px;width:1px;height:1px;overflow:hidden}.file-container .file__hidden-description.show[data-v-67e992e4]{position:initial;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;height:-webkit-fit-content;height:-moz-fit-content;height:fit-content}.file-container:hover .selection-checkbox[data-v-67e992e4],.file-container.selected .selection-checkbox[data-v-67e992e4],.file-container:focus-within .selection-checkbox[data-v-67e992e4]{display:flex}.file-container:hover .favorite-state[data-v-67e992e4],.file-container.selected .favorite-state[data-v-67e992e4],.file-container:focus-within .favorite-state[data-v-67e992e4]{display:none}.file-container .selection-checkbox[data-v-67e992e4]{display:none;position:absolute;top:8px;right:min(22px,50% - 7px);z-index:1;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}.file-container .selection-checkbox[data-v-67e992e4] .checkbox-radio-switch__label{padding:10px;box-sizing:border-box}.file-container .selection-checkbox[data-v-67e992e4] .checkbox-radio-switch__label::after{content:\\\"\\\";background:var(--color-primary-light);width:16px;height:16px;position:absolute;left:1px;z-index:-1}.file-container .selection-checkbox[data-v-67e992e4] .checkbox-radio-switch__label .checkbox-radio-switch__icon{margin:0}.file-container .selection-checkbox .input-label[data-v-67e992e4]{position:fixed;z-index:-1;top:-5000px;left:-5000px}.file-container .favorite-state[data-v-67e992e4]{position:absolute;top:2px;right:min(2px,50% - 7px)}.file-container .favorite-state[data-v-67e992e4] .material-design-icon__svg{fill:#fc0}.file-container .favorite-state[data-v-67e992e4] .material-design-icon__svg path{stroke:var(--color-primary-light);stroke-width:1px}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/File.vue\"],\"names\":[],\"mappings\":\"AAiOA,iCACC,qCAAA,CACA,iBAAA,CACA,WAAA,CACA,UAAA,CACA,6CAAA,CACA,qBAAA,CAIC,sGACC,iBAAA,CACA,KAAA,CACA,MAAA,CACA,SAAA,CACA,UAAA,CACA,WAAA,CACA,UAAA,CACA,sCAAA,CACA,mBAAA,CACA,mBAAA,CAIF,uCACC,UAAA,CACA,WAAA,CACA,qBAAA,CACA,YAAA,CAEA,+CACC,gBAAA,CAEA,2DACC,iBAAA,CACA,OAAA,CACA,SAAA,CACA,UAAA,CACA,WAAA,CACA,SAAA,CACA,UAAA,CAEA,uFACC,iCAAA,CAIF,mDACC,UAAA,CACA,WAAA,CACA,gBAAA,CACA,iBAAA,CACA,mBAAA,CAGD,gEACC,iBAAA,CACA,WAAA,CACA,UAAA,CACA,YAAA,CACA,oBAAA,CACA,kBAAA,CACA,sBAAA,CAEA,oEACC,SAAA,CACA,UAAA,CAKH,2DACC,iBAAA,CACA,aAAA,CACA,YAAA,CACA,SAAA,CACA,UAAA,CACA,eAAA,CAEA,gEACC,gBAAA,CACA,yBAAA,CAAA,sBAAA,CAAA,iBAAA,CACA,0BAAA,CAAA,uBAAA,CAAA,kBAAA,CAOF,2LACC,YAAA,CAGD,+KACC,YAAA,CAIF,qDACC,YAAA,CACA,iBAAA,CACA,OAAA,CAEA,yBAAA,CACA,SAAA,CACA,yBAAA,CAAA,sBAAA,CAAA,iBAAA,CAGA,oFACC,YAAA,CACA,qBAAA,CAGA,2FACC,UAAA,CACA,qCAAA,CACA,UAAA,CACA,WAAA,CACA,iBAAA,CACA,QAAA,CACA,UAAA,CAGD,iHACC,QAAA,CAIF,kEACC,cAAA,CACA,UAAA,CACA,WAAA,CACA,YAAA,CAIF,iDACC,iBAAA,CACA,OAAA,CAEA,wBAAA,CAEA,6EACC,SAAA,CAEA,kFACC,iCAAA,CACA,gBAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.file-container {\\n\\tbackground: var(--color-primary-light);\\n\\tposition: relative;\\n\\theight: 100%;\\n\\twidth: 100%;\\n\\tborder: 2px solid var(--color-main-background); // Use border so create a separation between images.\\n\\tbox-sizing: border-box;\\n\\n\\t// Selection border.\\n\\t&.selected, &:focus-within {\\n\\t\\t&::after {\\n\\t\\t\\tposition: absolute;\\n\\t\\t\\ttop: 0;\\n\\t\\t\\tleft: 0;\\n\\t\\t\\tz-index: 2;\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\theight: 100%;\\n\\t\\t\\tcontent: '';\\n\\t\\t\\toutline: var(--color-primary) solid 4px;\\n\\t\\t\\toutline-offset: -4px;\\n\\t\\t\\tpointer-events: none;\\n\\t\\t}\\n\\t}\\n\\n\\t.file {\\n\\t\\twidth: 100%;\\n\\t\\theight: 100%;\\n\\t\\tbox-sizing: border-box;\\n\\t\\toutline: none; // Override global focus state.\\n\\n\\t\\t&__images {\\n\\t\\t\\tdisplay: contents;\\n\\n\\t\\t\\t.video-icon {\\n\\t\\t\\t\\tposition: absolute;\\n\\t\\t\\t\\ttop: 0px;\\n\\t\\t\\t\\tright: 0px;\\n\\t\\t\\t\\twidth: 100%;\\n\\t\\t\\t\\theight: 100%;\\n\\t\\t\\t\\tz-index: 1;\\n\\t\\t\\t\\topacity: 0.8;\\n\\n\\t\\t\\t\\t::v-deep .material-design-icon__svg {\\n\\t\\t\\t\\t\\tfill: var(--color-main-background);\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\n\\t\\t\\timg {\\n\\t\\t\\t\\twidth: 100%;\\n\\t\\t\\t\\theight: 100%;\\n\\t\\t\\t\\tobject-fit: cover;\\n\\t\\t\\t\\tposition: absolute;\\n\\t\\t\\t\\tcolor: transparent; /// Hide alt='' text when loading.\\n\\t\\t\\t}\\n\\n\\t\\t\\t.loading-overlay {\\n\\t\\t\\t\\tposition: absolute;\\n\\t\\t\\t\\theight: 100%;\\n\\t\\t\\t\\twidth: 100%;\\n\\t\\t\\t\\tdisplay: flex;\\n\\t\\t\\t\\talign-content: center;\\n\\t\\t\\t\\talign-items: center;\\n\\t\\t\\t\\tjustify-content: center;\\n\\n\\t\\t\\t\\tsvg {\\n\\t\\t\\t\\t\\twidth: 70%;\\n\\t\\t\\t\\t\\theight: 70%;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t&__hidden-description {\\n\\t\\t\\tposition: absolute;\\n\\t\\t\\tleft: -10000px;\\n\\t\\t\\ttop: -10000px;\\n\\t\\t\\twidth: 1px;\\n\\t\\t\\theight: 1px;\\n\\t\\t\\toverflow: hidden;\\n\\n\\t\\t\\t&.show {\\n\\t\\t\\t\\tposition: initial;\\n\\t\\t\\t\\twidth: fit-content;\\n\\t\\t\\t\\theight: fit-content;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t// Reveal checkbox on hover.\\n\\t&:hover, &.selected, &:focus-within {\\n\\t\\t.selection-checkbox {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t}\\n\\n\\t\\t.favorite-state {\\n\\t\\t\\tdisplay: none;\\n\\t\\t}\\n\\t}\\n\\n\\t.selection-checkbox {\\n\\t\\tdisplay: none;\\n\\t\\tposition: absolute;\\n\\t\\ttop: 8px;\\n\\t\\t// Fancy calculation to render the checkbox in the middle of narrow images.\\n\\t\\tright: min(22px, calc(50% - 7px));\\n\\t\\tz-index: 1;\\n\\t\\twidth: fit-content;\\n\\n\\t\\t// Make the checkbox background round on hover.\\n\\t\\t::v-deep .checkbox-radio-switch__label {\\n\\t\\t\\tpadding: 10px;\\n\\t\\t\\tbox-sizing: border-box;\\n\\n\\t\\t\\t// Add a background to the checkbox so we do not see the image through it.\\n\\t\\t\\t&::after {\\n\\t\\t\\t\\tcontent: '';\\n\\t\\t\\t\\tbackground: var(--color-primary-light);\\n\\t\\t\\t\\twidth: 16px;\\n\\t\\t\\t\\theight: 16px;\\n\\t\\t\\t\\tposition: absolute;\\n\\t\\t\\t\\tleft: 1px;\\n\\t\\t\\t\\tz-index: -1;\\n\\t\\t\\t}\\n\\n\\t\\t\\t.checkbox-radio-switch__icon {\\n\\t\\t\\t\\tmargin: 0;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t.input-label {\\n\\t\\t\\tposition: fixed;\\n\\t\\t\\tz-index: -1;\\n\\t\\t\\ttop: -5000px;\\n\\t\\t\\tleft: -5000px;\\n\\t\\t}\\n\\t}\\n\\n\\t.favorite-state {\\n\\t\\tposition: absolute;\\n\\t\\ttop: 2px;\\n\\t\\t// Fancy calculation to render the start in the middle of narrow images.\\n\\t\\tright: min(2px, calc(50% - 7px));\\n\\n\\t\\t::v-deep .material-design-icon__svg {\\n\\t\\t\\tfill: #FC0;\\n\\n\\t\\t\\tpath {\\n\\t\\t\\t\\tstroke: var(--color-primary-light);\\n\\t\\t\\t\\tstroke-width: 1px;\\n\\t\\t\\t}\\n\\t\\t}\\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 _c('div',{staticClass:\"file-container\",class:{selected: _vm.selected}},[_c('a',{staticClass:\"file\",attrs:{\"href\":_vm.davPath,\"aria-label\":_vm.ariaLabel},on:{\"click\":function($event){$event.preventDefault();return _vm.emitClick.apply(null, arguments)}}},[_c('div',{staticClass:\"file__images\"},[(_vm.file.mime.includes('video'))?_c('VideoIcon',{staticClass:\"video-icon\",attrs:{\"size\":64}}):_vm._e(),_vm._v(\" \"),(_vm.visibility !== 'none' && _vm.canLoad && !_vm.error)?_c('img',{key:((_vm.file.basename) + \"-near\"),ref:\"imgNear\",attrs:{\"src\":_vm.srcNear,\"alt\":_vm.file.basename,\"aria-describedby\":_vm.ariaDescription},on:{\"load\":_vm.onLoad,\"error\":_vm.onError}}):_vm._e(),_vm._v(\" \"),(_vm.visibility === 'visible' && _vm.canLoad && !_vm.error)?_c('img',{key:((_vm.file.basename) + \"-visible\"),ref:\"imgVisible\",attrs:{\"src\":_vm.srcVisible,\"alt\":_vm.file.basename,\"aria-describedby\":_vm.ariaDescription},on:{\"load\":_vm.onLoad,\"error\":_vm.onError}}):_vm._e()],1),_vm._v(\" \"),_c('p',{staticClass:\"file__hidden-description\",class:{show: _vm.error},attrs:{\"id\":_vm.ariaDescription}},[_vm._v(_vm._s(_vm.file.basename))])]),_vm._v(\" \"),(_vm.allowSelection)?_c('CheckboxRadioSwitch',{staticClass:\"selection-checkbox\",attrs:{\"checked\":_vm.selected},on:{\"update:checked\":_vm.onToggle}},[_c('span',{staticClass:\"input-label\"},[_vm._v(_vm._s(_vm.t('photos', 'Select image {imageName}', {imageName: _vm.file.basename})))])]):_vm._e(),_vm._v(\" \"),(_vm.file.favorite === 1)?_c('Star',{staticClass:\"favorite-state\",attrs:{\"aria-label\":_vm.t('photos', 'The file is in the favorites')}}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./File.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!./File.vue?vue&type=script&lang=js&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./File.vue?vue&type=style&index=0&id=67e992e4&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./File.vue?vue&type=style&index=0&id=67e992e4&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./File.vue?vue&type=template&id=67e992e4&scoped=true&\"\nimport script from \"./File.vue?vue&type=script&lang=js&\"\nexport * from \"./File.vue?vue&type=script&lang=js&\"\nimport style0 from \"./File.vue?vue&type=style&index=0&id=67e992e4&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 \"67e992e4\",\n null\n \n)\n\nexport default component.exports"],"names":["props","___CSS_LOADER_EXPORT___","push","module","id","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","_vm","this","_h","$createElement","_c","_self","staticClass","class","selected","attrs","davPath","ariaLabel","on","$event","preventDefault","emitClick","apply","arguments","file","mime","includes","_e","_v","visibility","canLoad","error","key","ref","srcNear","basename","ariaDescription","onLoad","onError","srcVisible","show","_s","onToggle","t","imageName","favorite"],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-src_services_DavRequest_js-src_utils_CancelableRequest_js-src_components_File_vue.js b/js/photos-src_services_DavRequest_js-src_utils_CancelableRequest_js-src_components_File_vue.js deleted file mode 100644 index fb9ede621..000000000 --- a/js/photos-src_services_DavRequest_js-src_utils_CancelableRequest_js-src_components_File_vue.js +++ /dev/null @@ -1,3 +0,0 @@ -/*! For license information please see photos-src_services_DavRequest_js-src_utils_CancelableRequest_js-src_components_File_vue.js.LICENSE.txt */ -"use strict";(self.webpackChunkphotos=self.webpackChunkphotos||[]).push([["src_services_DavRequest_js-src_utils_CancelableRequest_js-src_components_File_vue"],{2161:(t,n,e)=>{e.d(n,{N:()=>i,Z:()=>o});var i="\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t";const o='\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t'.concat(i,"\n\t\t\t\t\n\t\t\t")},4615:(t,n,e)=>{e.d(n,{Z:()=>a});var i=e(26937);function o(t,n,e,i,o,a,r){try{var A=t[a](r),s=A.value}catch(t){return void e(t)}A.done?n(s):Promise.resolve(s).then(i,o)}const a=function(t){var n=i.Z.CancelToken.source(),e=function(){var e,i=(e=regeneratorRuntime.mark((function e(i,o){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",t(i,Object.assign({cancelToken:n.token},o)));case 1:case"end":return e.stop()}}),e)})),function(){var t=this,n=arguments;return new Promise((function(i,a){var r=e.apply(t,n);function A(t){o(r,i,a,A,s,"next",t)}function s(t){o(r,i,a,A,s,"throw",t)}A(void 0)}))});return function(t,n){return i.apply(this,arguments)}}();return{request:e,cancel:n.cancel}}},84496:(t,n,e)=>{e.d(n,{Z:()=>A});var i=e(87537),o=e.n(i),a=e(23645),r=e.n(a)()(o());r.push([t.id,'.file-container[data-v-67e992e4]{background:var(--color-primary-light);position:relative;height:100%;width:100%;border:2px solid var(--color-main-background);box-sizing:border-box}.file-container.selected[data-v-67e992e4]::after,.file-container[data-v-67e992e4]:focus-within::after{position:absolute;top:0;left:0;z-index:2;width:100%;height:100%;content:"";outline:var(--color-primary) solid 4px;outline-offset:-4px;pointer-events:none}.file-container .file[data-v-67e992e4]{width:100%;height:100%;box-sizing:border-box;outline:none}.file-container .file__images[data-v-67e992e4]{display:contents}.file-container .file__images .video-icon[data-v-67e992e4]{position:absolute;top:0px;right:0px;width:100%;height:100%;z-index:1;opacity:.8}.file-container .file__images .video-icon[data-v-67e992e4] .material-design-icon__svg{fill:var(--color-main-background)}.file-container .file__images img[data-v-67e992e4]{width:100%;height:100%;object-fit:cover;position:absolute;color:rgba(0,0,0,0)}.file-container .file__images .loading-overlay[data-v-67e992e4]{position:absolute;height:100%;width:100%;display:flex;align-content:center;align-items:center;justify-content:center}.file-container .file__images .loading-overlay svg[data-v-67e992e4]{width:70%;height:70%}.file-container .file__hidden-description[data-v-67e992e4]{position:absolute;left:-10000px;top:-10000px;width:1px;height:1px;overflow:hidden}.file-container .file__hidden-description.show[data-v-67e992e4]{position:initial;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;height:-webkit-fit-content;height:-moz-fit-content;height:fit-content}.file-container:hover .selection-checkbox[data-v-67e992e4],.file-container.selected .selection-checkbox[data-v-67e992e4],.file-container:focus-within .selection-checkbox[data-v-67e992e4]{display:flex}.file-container:hover .favorite-state[data-v-67e992e4],.file-container.selected .favorite-state[data-v-67e992e4],.file-container:focus-within .favorite-state[data-v-67e992e4]{display:none}.file-container .selection-checkbox[data-v-67e992e4]{display:none;position:absolute;top:8px;right:min(22px,50% - 7px);z-index:1;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}.file-container .selection-checkbox[data-v-67e992e4] .checkbox-radio-switch__label{padding:10px;box-sizing:border-box}.file-container .selection-checkbox[data-v-67e992e4] .checkbox-radio-switch__label::after{content:"";background:var(--color-primary-light);width:16px;height:16px;position:absolute;left:1px;z-index:-1}.file-container .selection-checkbox[data-v-67e992e4] .checkbox-radio-switch__label .checkbox-radio-switch__icon{margin:0}.file-container .selection-checkbox .input-label[data-v-67e992e4]{position:fixed;z-index:-1;top:-5000px;left:-5000px}.file-container .favorite-state[data-v-67e992e4]{position:absolute;top:2px;right:min(2px,50% - 7px)}.file-container .favorite-state[data-v-67e992e4] .material-design-icon__svg{fill:#fc0}.file-container .favorite-state[data-v-67e992e4] .material-design-icon__svg path{stroke:var(--color-primary-light);stroke-width:1px}',"",{version:3,sources:["webpack://./src/components/File.vue"],names:[],mappings:"AAiOA,iCACC,qCAAA,CACA,iBAAA,CACA,WAAA,CACA,UAAA,CACA,6CAAA,CACA,qBAAA,CAIC,sGACC,iBAAA,CACA,KAAA,CACA,MAAA,CACA,SAAA,CACA,UAAA,CACA,WAAA,CACA,UAAA,CACA,sCAAA,CACA,mBAAA,CACA,mBAAA,CAIF,uCACC,UAAA,CACA,WAAA,CACA,qBAAA,CACA,YAAA,CAEA,+CACC,gBAAA,CAEA,2DACC,iBAAA,CACA,OAAA,CACA,SAAA,CACA,UAAA,CACA,WAAA,CACA,SAAA,CACA,UAAA,CAEA,uFACC,iCAAA,CAIF,mDACC,UAAA,CACA,WAAA,CACA,gBAAA,CACA,iBAAA,CACA,mBAAA,CAGD,gEACC,iBAAA,CACA,WAAA,CACA,UAAA,CACA,YAAA,CACA,oBAAA,CACA,kBAAA,CACA,sBAAA,CAEA,oEACC,SAAA,CACA,UAAA,CAKH,2DACC,iBAAA,CACA,aAAA,CACA,YAAA,CACA,SAAA,CACA,UAAA,CACA,eAAA,CAEA,gEACC,gBAAA,CACA,yBAAA,CAAA,sBAAA,CAAA,iBAAA,CACA,0BAAA,CAAA,uBAAA,CAAA,kBAAA,CAOF,2LACC,YAAA,CAGD,+KACC,YAAA,CAIF,qDACC,YAAA,CACA,iBAAA,CACA,OAAA,CAEA,yBAAA,CACA,SAAA,CACA,yBAAA,CAAA,sBAAA,CAAA,iBAAA,CAGA,oFACC,YAAA,CACA,qBAAA,CAGA,2FACC,UAAA,CACA,qCAAA,CACA,UAAA,CACA,WAAA,CACA,iBAAA,CACA,QAAA,CACA,UAAA,CAGD,iHACC,QAAA,CAIF,kEACC,cAAA,CACA,UAAA,CACA,WAAA,CACA,YAAA,CAIF,iDACC,iBAAA,CACA,OAAA,CAEA,wBAAA,CAEA,6EACC,SAAA,CAEA,kFACC,iCAAA,CACA,gBAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.file-container {\n\tbackground: var(--color-primary-light);\n\tposition: relative;\n\theight: 100%;\n\twidth: 100%;\n\tborder: 2px solid var(--color-main-background); // Use border so create a separation between images.\n\tbox-sizing: border-box;\n\n\t// Selection border.\n\t&.selected, &:focus-within {\n\t\t&::after {\n\t\t\tposition: absolute;\n\t\t\ttop: 0;\n\t\t\tleft: 0;\n\t\t\tz-index: 2;\n\t\t\twidth: 100%;\n\t\t\theight: 100%;\n\t\t\tcontent: \'\';\n\t\t\toutline: var(--color-primary) solid 4px;\n\t\t\toutline-offset: -4px;\n\t\t\tpointer-events: none;\n\t\t}\n\t}\n\n\t.file {\n\t\twidth: 100%;\n\t\theight: 100%;\n\t\tbox-sizing: border-box;\n\t\toutline: none; // Override global focus state.\n\n\t\t&__images {\n\t\t\tdisplay: contents;\n\n\t\t\t.video-icon {\n\t\t\t\tposition: absolute;\n\t\t\t\ttop: 0px;\n\t\t\t\tright: 0px;\n\t\t\t\twidth: 100%;\n\t\t\t\theight: 100%;\n\t\t\t\tz-index: 1;\n\t\t\t\topacity: 0.8;\n\n\t\t\t\t::v-deep .material-design-icon__svg {\n\t\t\t\t\tfill: var(--color-main-background);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\timg {\n\t\t\t\twidth: 100%;\n\t\t\t\theight: 100%;\n\t\t\t\tobject-fit: cover;\n\t\t\t\tposition: absolute;\n\t\t\t\tcolor: transparent; /// Hide alt=\'\' text when loading.\n\t\t\t}\n\n\t\t\t.loading-overlay {\n\t\t\t\tposition: absolute;\n\t\t\t\theight: 100%;\n\t\t\t\twidth: 100%;\n\t\t\t\tdisplay: flex;\n\t\t\t\talign-content: center;\n\t\t\t\talign-items: center;\n\t\t\t\tjustify-content: center;\n\n\t\t\t\tsvg {\n\t\t\t\t\twidth: 70%;\n\t\t\t\t\theight: 70%;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t&__hidden-description {\n\t\t\tposition: absolute;\n\t\t\tleft: -10000px;\n\t\t\ttop: -10000px;\n\t\t\twidth: 1px;\n\t\t\theight: 1px;\n\t\t\toverflow: hidden;\n\n\t\t\t&.show {\n\t\t\t\tposition: initial;\n\t\t\t\twidth: fit-content;\n\t\t\t\theight: fit-content;\n\t\t\t}\n\t\t}\n\t}\n\n\t// Reveal checkbox on hover.\n\t&:hover, &.selected, &:focus-within {\n\t\t.selection-checkbox {\n\t\t\tdisplay: flex;\n\t\t}\n\n\t\t.favorite-state {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n\n\t.selection-checkbox {\n\t\tdisplay: none;\n\t\tposition: absolute;\n\t\ttop: 8px;\n\t\t// Fancy calculation to render the checkbox in the middle of narrow images.\n\t\tright: min(22px, calc(50% - 7px));\n\t\tz-index: 1;\n\t\twidth: fit-content;\n\n\t\t// Make the checkbox background round on hover.\n\t\t::v-deep .checkbox-radio-switch__label {\n\t\t\tpadding: 10px;\n\t\t\tbox-sizing: border-box;\n\n\t\t\t// Add a background to the checkbox so we do not see the image through it.\n\t\t\t&::after {\n\t\t\t\tcontent: \'\';\n\t\t\t\tbackground: var(--color-primary-light);\n\t\t\t\twidth: 16px;\n\t\t\t\theight: 16px;\n\t\t\t\tposition: absolute;\n\t\t\t\tleft: 1px;\n\t\t\t\tz-index: -1;\n\t\t\t}\n\n\t\t\t.checkbox-radio-switch__icon {\n\t\t\t\tmargin: 0;\n\t\t\t}\n\t\t}\n\n\t\t.input-label {\n\t\t\tposition: fixed;\n\t\t\tz-index: -1;\n\t\t\ttop: -5000px;\n\t\t\tleft: -5000px;\n\t\t}\n\t}\n\n\t.favorite-state {\n\t\tposition: absolute;\n\t\ttop: 2px;\n\t\t// Fancy calculation to render the start in the middle of narrow images.\n\t\tright: min(2px, calc(50% - 7px));\n\n\t\t::v-deep .material-design-icon__svg {\n\t\t\tfill: #FC0;\n\n\t\t\tpath {\n\t\t\t\tstroke: var(--color-primary-light);\n\t\t\t\tstroke-width: 1px;\n\t\t\t}\n\t\t}\n\t}\n}\n'],sourceRoot:""}]);const A=r},53932:(n,e,i)=>{i.d(e,{Z:()=>z});var o=i(75760),a=i(16235),r=i(79753),A=i(45994),s=i(33476),c=i(81090),l=i(32114);function d(t,n,e,i,o,a,r){try{var A=t[a](r),s=A.value}catch(t){return void e(t)}A.done?n(s):Promise.resolve(s).then(i,o)}function h(t){return function(){var n=this,e=arguments;return new Promise((function(i,o){var a=t.apply(n,e);function r(t){d(a,i,o,r,A,"next",t)}function A(t){d(a,i,o,r,A,"throw",t)}r(void 0)}))}}const C={name:"File",components:{CheckboxRadioSwitch:s.CheckboxRadioSwitch,Star:o.default,VideoIcon:a.Z},mixins:[c.Z],inheritAttrs:!1,props:{file:{type:Object,required:!0},selected:{type:Boolean,required:!0},allowSelection:{type:Boolean,default:!0},visibility:{type:String,required:!0},semaphore:{type:l.Z,required:!0}},data:function(){return{loaded:!1,error:!1,canLoad:!1,semaphoreSymbol:null,isDestroyed:!1}},computed:{davPath:function(){return(0,r.generateRemoteUrl)("dav/files/".concat((0,A.ts)().uid))+this.file.filename},ariaDescription:function(){return"image-description-".concat(this.file.fileid)},ariaLabel:function(){return t("photos",'Open the full size "{name}" image',{name:this.file.basename})},isImage:function(){return this.file.mime.startsWith("image")},decodedEtag:function(){return this.file.etag.replace(""","").replace(""","")},srcVisible:function(){return this.getItemURL(512)},srcNear:function(){return this.getItemURL(64)}},mounted:function(){var t=this;setTimeout(h(regeneratorRuntime.mark((function n(){return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,t.semaphore.acquire((function(){switch(t.visibility){case"visible":return 1;case"near":return 2;default:return 3}}),t.file.fileid);case 2:t.semaphoreSymbol=n.sent,t.canLoad=!0,("none"===t.visibility||t.isDestroyed)&&t.releaseSemaphore();case 5:case"end":return n.stop()}}),n)}))),250)},beforeDestroy:function(){this.isDestroyed=!0,this.releaseSemaphore(),void 0!==this.$refs.imgNear&&(this.$refs.imgNear.src=""),void 0!==this.$refs.srcVisible&&(this.$refs.srcVisible.src="")},methods:{emitClick:function(){this.$emit("click",this.file.fileid)},onLoad:function(){this.loaded=!0,this.releaseSemaphore()},onError:function(){this.error=!0,this.releaseSemaphore()},onToggle:function(t){this.$emit("select-toggled",{id:this.file.fileid,value:t})},getItemURL:function(t){return(0,r.generateUrl)("/core/preview?fileId=".concat(this.file.fileid,"&c=").concat(this.decodedEtag,"&x=").concat(t,"&y=").concat(t,"&forceIcon=0&a=1"))},releaseSemaphore:function(){null!==this.semaphoreSymbol&&(this.semaphore.release(this.semaphoreSymbol),this.semaphoreSymbol=null)}}};var p=i(93379),f=i.n(p),u=i(7795),g=i.n(u),m=i(90569),v=i.n(m),b=i(3565),x=i.n(b),w=i(19216),_=i.n(w),k=i(44589),y=i.n(k),B=i(84496),S={};S.styleTagTransform=y(),S.setAttributes=x(),S.insert=v().bind(null,"head"),S.domAPI=g(),S.insertStyleElement=_();f()(B.Z,S);B.Z&&B.Z.locals&&B.Z.locals;const z=(0,i(51900).Z)(C,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("div",{staticClass:"file-container",class:{selected:t.selected}},[e("a",{staticClass:"file",attrs:{href:t.davPath,"aria-label":t.ariaLabel},on:{click:function(n){return n.preventDefault(),t.emitClick.apply(null,arguments)}}},[e("div",{staticClass:"file__images"},[t.file.mime.includes("video")?e("VideoIcon",{staticClass:"video-icon",attrs:{size:64}}):t._e(),t._v(" "),"none"!==t.visibility&&t.canLoad&&!t.error?e("img",{key:t.file.basename+"-near",ref:"imgNear",attrs:{src:t.srcNear,alt:t.file.basename,"aria-describedby":t.ariaDescription},on:{load:t.onLoad,error:t.onError}}):t._e(),t._v(" "),"visible"===t.visibility&&t.canLoad&&!t.error?e("img",{key:t.file.basename+"-visible",ref:"imgVisible",attrs:{src:t.srcVisible,alt:t.file.basename,"aria-describedby":t.ariaDescription},on:{load:t.onLoad,error:t.onError}}):t._e()],1),t._v(" "),e("p",{staticClass:"file__hidden-description",class:{show:t.error},attrs:{id:t.ariaDescription}},[t._v(t._s(t.file.basename))])]),t._v(" "),t.allowSelection?e("CheckboxRadioSwitch",{staticClass:"selection-checkbox",attrs:{checked:t.selected},on:{"update:checked":t.onToggle}},[e("span",{staticClass:"input-label"},[t._v(t._s(t.t("photos","Select image {imageName}",{imageName:t.file.basename})))])]):t._e(),t._v(" "),1===t.file.favorite?e("Star",{staticClass:"favorite-state",attrs:{"aria-label":t.t("photos","The file is in the favorites")}}):t._e()],1)}),[],!1,null,"67e992e4",null).exports}}]); -//# sourceMappingURL=photos-src_services_DavRequest_js-src_utils_CancelableRequest_js-src_components_File_vue.js.map?v=e4f7baa00928629c3c29 \ No newline at end of file diff --git a/js/photos-src_services_DavRequest_js-src_utils_CancelableRequest_js-src_components_File_vue.js.LICENSE.txt b/js/photos-src_services_DavRequest_js-src_utils_CancelableRequest_js-src_components_File_vue.js.LICENSE.txt deleted file mode 100644 index 86416a845..000000000 --- a/js/photos-src_services_DavRequest_js-src_utils_CancelableRequest_js-src_components_File_vue.js.LICENSE.txt +++ /dev/null @@ -1,21 +0,0 @@ -/** - * @copyright Copyright (c) 2019 John Molakvoæ - * - * @author John Molakvoæ - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ diff --git a/js/photos-src_services_DavRequest_js-src_utils_CancelableRequest_js-src_components_File_vue.js.map b/js/photos-src_services_DavRequest_js-src_utils_CancelableRequest_js-src_components_File_vue.js.map deleted file mode 100644 index 038df0316..000000000 --- a/js/photos-src_services_DavRequest_js-src_utils_CancelableRequest_js-src_components_File_vue.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-src_services_DavRequest_js-src_utils_CancelableRequest_js-src_components_File_vue.js?v=e4f7baa00928629c3c29","mappings":";wMAqBA,IAAMA,EAAQ,yPAcd,QAAe,sPAMRA,EANP,qNC4BA,QAzB0B,SAASC,GAIlC,IAAMC,EAZyBC,EAAAA,EAAAA,YAAAA,SAoBzBC,EAAK,+CAAG,WAAeC,EAAKC,GAApB,yGACNL,EACNI,EACAE,OAAOC,OAAO,CAAEN,YAAaA,EAAYO,OAASH,KAHtC,yNAAH,wDAOX,MAAO,CACNL,QAASG,EACTM,OAAQR,EAAYQ,OAErB,uEC1DGC,QAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,wgGAA6gG,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,uCAAuC,MAAQ,GAAG,SAAW,ogCAAogC,eAAiB,CAAC,2sIAAqxI,WAAa,MAEt8Q,4CCPA,6YC+EA,MC/EqK,ED+ErK,CACA,YACA,YACA,0CACA,eACA,eAEA,aACA,gBACA,OACA,MACA,YACA,aAEA,UACA,aACA,aAEA,gBACA,aACA,YAEA,YACA,YACA,aAEA,WACA,SACA,cAIA,KAhCA,WAiCA,OACA,UACA,SACA,WACA,qBACA,eAEA,EAEA,UAEA,QAFA,WAGA,qFACA,EAEA,gBANA,WAOA,mDACA,EAEA,UAVA,WAWA,gFACA,EAEA,QAdA,WAeA,yCACA,EAEA,YAlBA,WAmBA,+DACA,EAEA,WAtBA,WAuBA,2BACA,EAEA,QA1BA,WA2BA,0BACA,GAGA,QAzEA,WAyEA,WAEA,mJACA,gCACA,qBACA,cACA,SACA,WACA,SACA,QACA,SAEA,kBAVA,OACA,kBADA,OAYA,cACA,uCACA,qBAdA,2CAgBA,IACA,EAEA,cA9FA,WA+FA,oBACA,6BAGA,yBACA,gCAEA,4BACA,6BAEA,EAEA,SACA,UADA,WAEA,oCACA,EAGA,OANA,WAOA,eACA,uBACA,EAEA,QAXA,WAYA,cACA,uBACA,EAEA,SAhBA,SAgBA,GACA,0DACA,EAEA,WApBA,SAoBA,GACA,2JAEA,EAEA,iBAzBA,WA0BA,8BAGA,6CACA,0BACA,yIE9MIR,EAAU,CAAC,EAEfA,EAAQS,kBAAoB,IAC5BT,EAAQU,cAAgB,IAElBV,EAAQW,OAAS,SAAc,KAAM,QAE3CX,EAAQY,OAAS,IACjBZ,EAAQa,mBAAqB,IAEhB,IAAI,IAASb,GAKJ,KAAW,YAAiB,WCPlD,SAXgB,cACd,GJTW,WAAa,IAAIc,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACE,YAAY,iBAAiBC,MAAM,CAACC,SAAUR,EAAIQ,WAAW,CAACJ,EAAG,IAAI,CAACE,YAAY,OAAOG,MAAM,CAAC,KAAOT,EAAIU,QAAQ,aAAaV,EAAIW,WAAWC,GAAG,CAAC,MAAQ,SAASC,GAAgC,OAAxBA,EAAOC,iBAAwBd,EAAIe,UAAUC,MAAM,KAAMC,UAAU,IAAI,CAACb,EAAG,MAAM,CAACE,YAAY,gBAAgB,CAAEN,EAAIkB,KAAKC,KAAKC,SAAS,SAAUhB,EAAG,YAAY,CAACE,YAAY,aAAaG,MAAM,CAAC,KAAO,MAAMT,EAAIqB,KAAKrB,EAAIsB,GAAG,KAAyB,SAAnBtB,EAAIuB,YAAyBvB,EAAIwB,UAAYxB,EAAIyB,MAAOrB,EAAG,MAAM,CAACsB,IAAM1B,EAAIkB,KAAa,SAAI,QAASS,IAAI,UAAUlB,MAAM,CAAC,IAAMT,EAAI4B,QAAQ,IAAM5B,EAAIkB,KAAKW,SAAS,mBAAmB7B,EAAI8B,iBAAiBlB,GAAG,CAAC,KAAOZ,EAAI+B,OAAO,MAAQ/B,EAAIgC,WAAWhC,EAAIqB,KAAKrB,EAAIsB,GAAG,KAAyB,YAAnBtB,EAAIuB,YAA4BvB,EAAIwB,UAAYxB,EAAIyB,MAAOrB,EAAG,MAAM,CAACsB,IAAM1B,EAAIkB,KAAa,SAAI,WAAYS,IAAI,aAAalB,MAAM,CAAC,IAAMT,EAAIiC,WAAW,IAAMjC,EAAIkB,KAAKW,SAAS,mBAAmB7B,EAAI8B,iBAAiBlB,GAAG,CAAC,KAAOZ,EAAI+B,OAAO,MAAQ/B,EAAIgC,WAAWhC,EAAIqB,MAAM,GAAGrB,EAAIsB,GAAG,KAAKlB,EAAG,IAAI,CAACE,YAAY,2BAA2BC,MAAM,CAAC2B,KAAMlC,EAAIyB,OAAOhB,MAAM,CAAC,GAAKT,EAAI8B,kBAAkB,CAAC9B,EAAIsB,GAAGtB,EAAImC,GAAGnC,EAAIkB,KAAKW,eAAe7B,EAAIsB,GAAG,KAAMtB,EAAkB,eAAEI,EAAG,sBAAsB,CAACE,YAAY,qBAAqBG,MAAM,CAAC,QAAUT,EAAIQ,UAAUI,GAAG,CAAC,iBAAiBZ,EAAIoC,WAAW,CAAChC,EAAG,OAAO,CAACE,YAAY,eAAe,CAACN,EAAIsB,GAAGtB,EAAImC,GAAGnC,EAAIqC,EAAE,SAAU,2BAA4B,CAACC,UAAWtC,EAAIkB,KAAKW,iBAAiB7B,EAAIqB,KAAKrB,EAAIsB,GAAG,KAA4B,IAAtBtB,EAAIkB,KAAKqB,SAAgBnC,EAAG,OAAO,CAACE,YAAY,iBAAiBG,MAAM,CAAC,aAAaT,EAAIqC,EAAE,SAAU,mCAAmCrC,EAAIqB,MAAM,EAAE,GACpnD,IIWpB,EACA,KACA,WACA,MAI8B","sources":["webpack:///photos/src/services/DavRequest.js","webpack:///photos/src/utils/CancelableRequest.js","webpack:///photos/src/components/File.vue?vue&type=style&index=0&id=67e992e4&lang=scss&scoped=true&","webpack:///photos/src/components/File.vue?vue&type=template&id=67e992e4&scoped=true&","webpack:///photos/src/components/File.vue","webpack:///photos/src/components/File.vue?vue&type=script&lang=js&","webpack://photos/./src/components/File.vue?c765","webpack://photos/./src/components/File.vue?f552"],"sourcesContent":["/**\n * @copyright Copyright (c) 2019 John Molakvoæ \n *\n * @author John Molakvoæ \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 .\n *\n */\nconst props = `\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t`\n\nexport { props }\nexport default `\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t${props}\n\t\t\t\t\n\t\t\t`\n","/**\n * @copyright Copyright (c) 2019 Marco Ambrosini \n *\n * @author Marco Ambrosini \n *\n * @author John Molakvoæ \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 .\n *\n */\n\nimport axios from '@nextcloud/axios'\n/**\n * Create a cancel token\n *\n * @return {CancelTokenSource}\n */\nconst createCancelToken = () => axios.CancelToken.source()\n\n/**\n * Creates a cancelable axios 'request object'.\n *\n * @param {Function} request the axios promise request\n * @return {object}\n */\nconst CancelableRequest = function(request) {\n\t/**\n\t * Generate an axios cancel token\n\t */\n\tconst cancelToken = createCancelToken()\n\n\t/**\n\t * Execute the request\n\t *\n\t * @param {string} url the url to send the request to\n\t * @param {object} [options] optional config for the request\n\t */\n\tconst fetch = async function(url, options) {\n\t\treturn request(\n\t\t\turl,\n\t\t\tObject.assign({ cancelToken: cancelToken.token }, options)\n\t\t)\n\t}\n\n\treturn {\n\t\trequest: fetch,\n\t\tcancel: cancelToken.cancel,\n\t}\n}\n\nexport default CancelableRequest\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".file-container[data-v-67e992e4]{background:var(--color-primary-light);position:relative;height:100%;width:100%;border:2px solid var(--color-main-background);box-sizing:border-box}.file-container.selected[data-v-67e992e4]::after,.file-container[data-v-67e992e4]:focus-within::after{position:absolute;top:0;left:0;z-index:2;width:100%;height:100%;content:\\\"\\\";outline:var(--color-primary) solid 4px;outline-offset:-4px;pointer-events:none}.file-container .file[data-v-67e992e4]{width:100%;height:100%;box-sizing:border-box;outline:none}.file-container .file__images[data-v-67e992e4]{display:contents}.file-container .file__images .video-icon[data-v-67e992e4]{position:absolute;top:0px;right:0px;width:100%;height:100%;z-index:1;opacity:.8}.file-container .file__images .video-icon[data-v-67e992e4] .material-design-icon__svg{fill:var(--color-main-background)}.file-container .file__images img[data-v-67e992e4]{width:100%;height:100%;object-fit:cover;position:absolute;color:rgba(0,0,0,0)}.file-container .file__images .loading-overlay[data-v-67e992e4]{position:absolute;height:100%;width:100%;display:flex;align-content:center;align-items:center;justify-content:center}.file-container .file__images .loading-overlay svg[data-v-67e992e4]{width:70%;height:70%}.file-container .file__hidden-description[data-v-67e992e4]{position:absolute;left:-10000px;top:-10000px;width:1px;height:1px;overflow:hidden}.file-container .file__hidden-description.show[data-v-67e992e4]{position:initial;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;height:-webkit-fit-content;height:-moz-fit-content;height:fit-content}.file-container:hover .selection-checkbox[data-v-67e992e4],.file-container.selected .selection-checkbox[data-v-67e992e4],.file-container:focus-within .selection-checkbox[data-v-67e992e4]{display:flex}.file-container:hover .favorite-state[data-v-67e992e4],.file-container.selected .favorite-state[data-v-67e992e4],.file-container:focus-within .favorite-state[data-v-67e992e4]{display:none}.file-container .selection-checkbox[data-v-67e992e4]{display:none;position:absolute;top:8px;right:min(22px,50% - 7px);z-index:1;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}.file-container .selection-checkbox[data-v-67e992e4] .checkbox-radio-switch__label{padding:10px;box-sizing:border-box}.file-container .selection-checkbox[data-v-67e992e4] .checkbox-radio-switch__label::after{content:\\\"\\\";background:var(--color-primary-light);width:16px;height:16px;position:absolute;left:1px;z-index:-1}.file-container .selection-checkbox[data-v-67e992e4] .checkbox-radio-switch__label .checkbox-radio-switch__icon{margin:0}.file-container .selection-checkbox .input-label[data-v-67e992e4]{position:fixed;z-index:-1;top:-5000px;left:-5000px}.file-container .favorite-state[data-v-67e992e4]{position:absolute;top:2px;right:min(2px,50% - 7px)}.file-container .favorite-state[data-v-67e992e4] .material-design-icon__svg{fill:#fc0}.file-container .favorite-state[data-v-67e992e4] .material-design-icon__svg path{stroke:var(--color-primary-light);stroke-width:1px}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/File.vue\"],\"names\":[],\"mappings\":\"AAiOA,iCACC,qCAAA,CACA,iBAAA,CACA,WAAA,CACA,UAAA,CACA,6CAAA,CACA,qBAAA,CAIC,sGACC,iBAAA,CACA,KAAA,CACA,MAAA,CACA,SAAA,CACA,UAAA,CACA,WAAA,CACA,UAAA,CACA,sCAAA,CACA,mBAAA,CACA,mBAAA,CAIF,uCACC,UAAA,CACA,WAAA,CACA,qBAAA,CACA,YAAA,CAEA,+CACC,gBAAA,CAEA,2DACC,iBAAA,CACA,OAAA,CACA,SAAA,CACA,UAAA,CACA,WAAA,CACA,SAAA,CACA,UAAA,CAEA,uFACC,iCAAA,CAIF,mDACC,UAAA,CACA,WAAA,CACA,gBAAA,CACA,iBAAA,CACA,mBAAA,CAGD,gEACC,iBAAA,CACA,WAAA,CACA,UAAA,CACA,YAAA,CACA,oBAAA,CACA,kBAAA,CACA,sBAAA,CAEA,oEACC,SAAA,CACA,UAAA,CAKH,2DACC,iBAAA,CACA,aAAA,CACA,YAAA,CACA,SAAA,CACA,UAAA,CACA,eAAA,CAEA,gEACC,gBAAA,CACA,yBAAA,CAAA,sBAAA,CAAA,iBAAA,CACA,0BAAA,CAAA,uBAAA,CAAA,kBAAA,CAOF,2LACC,YAAA,CAGD,+KACC,YAAA,CAIF,qDACC,YAAA,CACA,iBAAA,CACA,OAAA,CAEA,yBAAA,CACA,SAAA,CACA,yBAAA,CAAA,sBAAA,CAAA,iBAAA,CAGA,oFACC,YAAA,CACA,qBAAA,CAGA,2FACC,UAAA,CACA,qCAAA,CACA,UAAA,CACA,WAAA,CACA,iBAAA,CACA,QAAA,CACA,UAAA,CAGD,iHACC,QAAA,CAIF,kEACC,cAAA,CACA,UAAA,CACA,WAAA,CACA,YAAA,CAIF,iDACC,iBAAA,CACA,OAAA,CAEA,wBAAA,CAEA,6EACC,SAAA,CAEA,kFACC,iCAAA,CACA,gBAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.file-container {\\n\\tbackground: var(--color-primary-light);\\n\\tposition: relative;\\n\\theight: 100%;\\n\\twidth: 100%;\\n\\tborder: 2px solid var(--color-main-background); // Use border so create a separation between images.\\n\\tbox-sizing: border-box;\\n\\n\\t// Selection border.\\n\\t&.selected, &:focus-within {\\n\\t\\t&::after {\\n\\t\\t\\tposition: absolute;\\n\\t\\t\\ttop: 0;\\n\\t\\t\\tleft: 0;\\n\\t\\t\\tz-index: 2;\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\theight: 100%;\\n\\t\\t\\tcontent: '';\\n\\t\\t\\toutline: var(--color-primary) solid 4px;\\n\\t\\t\\toutline-offset: -4px;\\n\\t\\t\\tpointer-events: none;\\n\\t\\t}\\n\\t}\\n\\n\\t.file {\\n\\t\\twidth: 100%;\\n\\t\\theight: 100%;\\n\\t\\tbox-sizing: border-box;\\n\\t\\toutline: none; // Override global focus state.\\n\\n\\t\\t&__images {\\n\\t\\t\\tdisplay: contents;\\n\\n\\t\\t\\t.video-icon {\\n\\t\\t\\t\\tposition: absolute;\\n\\t\\t\\t\\ttop: 0px;\\n\\t\\t\\t\\tright: 0px;\\n\\t\\t\\t\\twidth: 100%;\\n\\t\\t\\t\\theight: 100%;\\n\\t\\t\\t\\tz-index: 1;\\n\\t\\t\\t\\topacity: 0.8;\\n\\n\\t\\t\\t\\t::v-deep .material-design-icon__svg {\\n\\t\\t\\t\\t\\tfill: var(--color-main-background);\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\n\\t\\t\\timg {\\n\\t\\t\\t\\twidth: 100%;\\n\\t\\t\\t\\theight: 100%;\\n\\t\\t\\t\\tobject-fit: cover;\\n\\t\\t\\t\\tposition: absolute;\\n\\t\\t\\t\\tcolor: transparent; /// Hide alt='' text when loading.\\n\\t\\t\\t}\\n\\n\\t\\t\\t.loading-overlay {\\n\\t\\t\\t\\tposition: absolute;\\n\\t\\t\\t\\theight: 100%;\\n\\t\\t\\t\\twidth: 100%;\\n\\t\\t\\t\\tdisplay: flex;\\n\\t\\t\\t\\talign-content: center;\\n\\t\\t\\t\\talign-items: center;\\n\\t\\t\\t\\tjustify-content: center;\\n\\n\\t\\t\\t\\tsvg {\\n\\t\\t\\t\\t\\twidth: 70%;\\n\\t\\t\\t\\t\\theight: 70%;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t&__hidden-description {\\n\\t\\t\\tposition: absolute;\\n\\t\\t\\tleft: -10000px;\\n\\t\\t\\ttop: -10000px;\\n\\t\\t\\twidth: 1px;\\n\\t\\t\\theight: 1px;\\n\\t\\t\\toverflow: hidden;\\n\\n\\t\\t\\t&.show {\\n\\t\\t\\t\\tposition: initial;\\n\\t\\t\\t\\twidth: fit-content;\\n\\t\\t\\t\\theight: fit-content;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t// Reveal checkbox on hover.\\n\\t&:hover, &.selected, &:focus-within {\\n\\t\\t.selection-checkbox {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t}\\n\\n\\t\\t.favorite-state {\\n\\t\\t\\tdisplay: none;\\n\\t\\t}\\n\\t}\\n\\n\\t.selection-checkbox {\\n\\t\\tdisplay: none;\\n\\t\\tposition: absolute;\\n\\t\\ttop: 8px;\\n\\t\\t// Fancy calculation to render the checkbox in the middle of narrow images.\\n\\t\\tright: min(22px, calc(50% - 7px));\\n\\t\\tz-index: 1;\\n\\t\\twidth: fit-content;\\n\\n\\t\\t// Make the checkbox background round on hover.\\n\\t\\t::v-deep .checkbox-radio-switch__label {\\n\\t\\t\\tpadding: 10px;\\n\\t\\t\\tbox-sizing: border-box;\\n\\n\\t\\t\\t// Add a background to the checkbox so we do not see the image through it.\\n\\t\\t\\t&::after {\\n\\t\\t\\t\\tcontent: '';\\n\\t\\t\\t\\tbackground: var(--color-primary-light);\\n\\t\\t\\t\\twidth: 16px;\\n\\t\\t\\t\\theight: 16px;\\n\\t\\t\\t\\tposition: absolute;\\n\\t\\t\\t\\tleft: 1px;\\n\\t\\t\\t\\tz-index: -1;\\n\\t\\t\\t}\\n\\n\\t\\t\\t.checkbox-radio-switch__icon {\\n\\t\\t\\t\\tmargin: 0;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t.input-label {\\n\\t\\t\\tposition: fixed;\\n\\t\\t\\tz-index: -1;\\n\\t\\t\\ttop: -5000px;\\n\\t\\t\\tleft: -5000px;\\n\\t\\t}\\n\\t}\\n\\n\\t.favorite-state {\\n\\t\\tposition: absolute;\\n\\t\\ttop: 2px;\\n\\t\\t// Fancy calculation to render the start in the middle of narrow images.\\n\\t\\tright: min(2px, calc(50% - 7px));\\n\\n\\t\\t::v-deep .material-design-icon__svg {\\n\\t\\t\\tfill: #FC0;\\n\\n\\t\\t\\tpath {\\n\\t\\t\\t\\tstroke: var(--color-primary-light);\\n\\t\\t\\t\\tstroke-width: 1px;\\n\\t\\t\\t}\\n\\t\\t}\\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 _c('div',{staticClass:\"file-container\",class:{selected: _vm.selected}},[_c('a',{staticClass:\"file\",attrs:{\"href\":_vm.davPath,\"aria-label\":_vm.ariaLabel},on:{\"click\":function($event){$event.preventDefault();return _vm.emitClick.apply(null, arguments)}}},[_c('div',{staticClass:\"file__images\"},[(_vm.file.mime.includes('video'))?_c('VideoIcon',{staticClass:\"video-icon\",attrs:{\"size\":64}}):_vm._e(),_vm._v(\" \"),(_vm.visibility !== 'none' && _vm.canLoad && !_vm.error)?_c('img',{key:((_vm.file.basename) + \"-near\"),ref:\"imgNear\",attrs:{\"src\":_vm.srcNear,\"alt\":_vm.file.basename,\"aria-describedby\":_vm.ariaDescription},on:{\"load\":_vm.onLoad,\"error\":_vm.onError}}):_vm._e(),_vm._v(\" \"),(_vm.visibility === 'visible' && _vm.canLoad && !_vm.error)?_c('img',{key:((_vm.file.basename) + \"-visible\"),ref:\"imgVisible\",attrs:{\"src\":_vm.srcVisible,\"alt\":_vm.file.basename,\"aria-describedby\":_vm.ariaDescription},on:{\"load\":_vm.onLoad,\"error\":_vm.onError}}):_vm._e()],1),_vm._v(\" \"),_c('p',{staticClass:\"file__hidden-description\",class:{show: _vm.error},attrs:{\"id\":_vm.ariaDescription}},[_vm._v(_vm._s(_vm.file.basename))])]),_vm._v(\" \"),(_vm.allowSelection)?_c('CheckboxRadioSwitch',{staticClass:\"selection-checkbox\",attrs:{\"checked\":_vm.selected},on:{\"update:checked\":_vm.onToggle}},[_c('span',{staticClass:\"input-label\"},[_vm._v(_vm._s(_vm.t('photos', 'Select image {imageName}', {imageName: _vm.file.basename})))])]):_vm._e(),_vm._v(\" \"),(_vm.file.favorite === 1)?_c('Star',{staticClass:\"favorite-state\",attrs:{\"aria-label\":_vm.t('photos', 'The file is in the favorites')}}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./File.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!./File.vue?vue&type=script&lang=js&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./File.vue?vue&type=style&index=0&id=67e992e4&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./File.vue?vue&type=style&index=0&id=67e992e4&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./File.vue?vue&type=template&id=67e992e4&scoped=true&\"\nimport script from \"./File.vue?vue&type=script&lang=js&\"\nexport * from \"./File.vue?vue&type=script&lang=js&\"\nimport style0 from \"./File.vue?vue&type=style&index=0&id=67e992e4&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 \"67e992e4\",\n null\n \n)\n\nexport default component.exports"],"names":["props","request","cancelToken","axios","fetch","url","options","Object","assign","token","cancel","___CSS_LOADER_EXPORT___","push","module","id","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","_vm","this","_h","$createElement","_c","_self","staticClass","class","selected","attrs","davPath","ariaLabel","on","$event","preventDefault","emitClick","apply","arguments","file","mime","includes","_e","_v","visibility","canLoad","error","key","ref","srcNear","basename","ariaDescription","onLoad","onError","srcVisible","show","_s","onToggle","t","imageName","favorite"],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-src_services_DavRequest_js-src_utils_CancelableRequest_js-src_views_Faces_vue.js b/js/photos-src_services_DavRequest_js-src_utils_CancelableRequest_js-src_views_Faces_vue.js deleted file mode 100644 index 904ec4b68..000000000 --- a/js/photos-src_services_DavRequest_js-src_utils_CancelableRequest_js-src_views_Faces_vue.js +++ /dev/null @@ -1,1159 +0,0 @@ -"use strict"; -(self["webpackChunkphotos"] = self["webpackChunkphotos"] || []).push([["src_services_DavRequest_js-src_utils_CancelableRequest_js-src_views_Faces_vue"],{ - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FaceCover.vue?vue&type=script&lang=js&": -/*!*******************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FaceCover.vue?vue&type=script&lang=js& ***! - \*******************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! vuex */ "./node_modules/vuex/dist/vuex.esm.js"); -/* harmony import */ var _nextcloud_router__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/router */ "./node_modules/@nextcloud/router/dist/index.js"); -/* harmony import */ var _mixins_FetchFacesMixin_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../mixins/FetchFacesMixin.js */ "./src/mixins/FetchFacesMixin.js"); -/* harmony import */ var _mixins_FaceCoverMixin_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../mixins/FaceCoverMixin.js */ "./src/mixins/FaceCoverMixin.js"); -function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } - -function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } - -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } - -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'FaceCover', - mixins: [_mixins_FetchFacesMixin_js__WEBPACK_IMPORTED_MODULE_1__["default"], _mixins_FaceCoverMixin_js__WEBPACK_IMPORTED_MODULE_2__["default"]], - props: { - baseName: { - type: String, - required: true - } - }, - computed: _objectSpread(_objectSpread({}, (0,vuex__WEBPACK_IMPORTED_MODULE_3__.mapGetters)(['files', 'faces', 'facesFiles'])), {}, { - /** - * @return {Face} - */ - face: function face() { - return this.faces[this.baseName]; - }, - - /** - * @return {string} - */ - coverUrl: function coverUrl() { - if (!this.cover) { - return ''; - } - - return (0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_0__.generateUrl)("/core/preview?fileId=".concat(this.cover.fileid, "&x=", 512, "&y=", 512, "&forceIcon=0&a=1")); - }, - cover: function cover() { - return this.getFaceCover(this.face.basename); - }, - coverDimensions: function coverDimensions() { - if (!this.cover) return {}; - return this.getCoverStyle(this.face.basename); - } - }), - beforeMount: function beforeMount() { - var _this = this; - - return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() { - return regeneratorRuntime.wrap(function _callee$(_context) { - while (1) { - switch (_context.prev = _context.next) { - case 0: - _context.next = 2; - return _this.fetchFiles(); - - case 2: - case "end": - return _context.stop(); - } - } - }, _callee); - }))(); - }, - beforeDestroy: function beforeDestroy() { - this.cancelFilesRequest('Changed view'); - }, - methods: { - fetchFiles: function fetchFiles() { - var _this2 = this; - - return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() { - return regeneratorRuntime.wrap(function _callee2$(_context2) { - while (1) { - switch (_context2.prev = _context2.next) { - case 0: - _context2.next = 2; - return _this2.fetchFaceContent(_this2.face.basename); - - case 2: - case "end": - return _context2.stop(); - } - } - }, _callee2); - }))(); - } - } -}); - -/***/ }), - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Loader.vue?vue&type=script&lang=js&": -/*!****************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Loader.vue?vue&type=script&lang=js& ***! - \****************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'Loader' -}); - -/***/ }), - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/Faces.vue?vue&type=script&lang=js&": -/*!**********************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/Faces.vue?vue&type=script&lang=js& ***! - \**********************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/vue */ "./node_modules/@nextcloud/vue/dist/ncvuecomponents.js"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var vue_material_design_icons_AccountBoxMultipleOutline__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! vue-material-design-icons/AccountBoxMultipleOutline */ "./node_modules/vue-material-design-icons/AccountBoxMultipleOutline.vue"); -/* harmony import */ var _mixins_FetchFacesMixin_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../mixins/FetchFacesMixin.js */ "./src/mixins/FetchFacesMixin.js"); -/* harmony import */ var _components_Loader_vue__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../components/Loader.vue */ "./src/components/Loader.vue"); -/* harmony import */ var _components_FaceCover_vue__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../components/FaceCover.vue */ "./src/components/FaceCover.vue"); -/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! vuex */ "./node_modules/vuex/dist/vuex.esm.js"); -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } - -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - - - - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'Faces', - components: { - FaceCover: _components_FaceCover_vue__WEBPACK_IMPORTED_MODULE_4__["default"], - EmptyContent: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_0__.EmptyContent, - Loader: _components_Loader_vue__WEBPACK_IMPORTED_MODULE_3__["default"], - AccountBoxMultipleOutline: vue_material_design_icons_AccountBoxMultipleOutline__WEBPACK_IMPORTED_MODULE_1__["default"] - }, - mixins: [_mixins_FetchFacesMixin_js__WEBPACK_IMPORTED_MODULE_2__["default"]], - computed: _objectSpread(_objectSpread({}, (0,vuex__WEBPACK_IMPORTED_MODULE_5__.mapGetters)(['facesFiles'])), {}, { - /** - * @return {boolean} Whether the list of face is empty or not. - */ - noFaces: function noFaces() { - return Object.keys(this.faces).length === 0; - }, - orderedFaces: function orderedFaces() { - var _this = this; - - return Object.values(this.faces).sort(function (a, b) { - if (!_this.facesFiles[b.basename] || !_this.facesFiles[a.basename]) { - return 0; - } - - return _this.facesFiles[b.basename].length - _this.facesFiles[a.basename].length; - }); - } - }) -}); - -/***/ }), - -/***/ "./src/services/DavRequest.js": -/*!************************************!*\ - !*** ./src/services/DavRequest.js ***! - \************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "props": () => (/* binding */ props), -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/** - * @copyright Copyright (c) 2019 John Molakvoæ - * - * @author John Molakvoæ - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ -var props = "\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t"; - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t".concat(props, "\n\t\t\t\t\n\t\t\t")); - -/***/ }), - -/***/ "./src/utils/CancelableRequest.js": -/*!****************************************!*\ - !*** ./src/utils/CancelableRequest.js ***! - \****************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _nextcloud_axios__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/axios */ "./node_modules/@nextcloud/axios/dist/index.esm.js"); -function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } - -function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } - -/** - * @copyright Copyright (c) 2019 Marco Ambrosini - * - * @author Marco Ambrosini - * - * @author John Molakvoæ - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ - -/** - * Create a cancel token - * - * @return {CancelTokenSource} - */ - -var createCancelToken = function createCancelToken() { - return _nextcloud_axios__WEBPACK_IMPORTED_MODULE_0__["default"].CancelToken.source(); -}; -/** - * Creates a cancelable axios 'request object'. - * - * @param {Function} request the axios promise request - * @return {object} - */ - - -var CancelableRequest = function CancelableRequest(request) { - /** - * Generate an axios cancel token - */ - var cancelToken = createCancelToken(); - /** - * Execute the request - * - * @param {string} url the url to send the request to - * @param {object} [options] optional config for the request - */ - - var fetch = /*#__PURE__*/function () { - var _ref = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(url, options) { - return regeneratorRuntime.wrap(function _callee$(_context) { - while (1) { - switch (_context.prev = _context.next) { - case 0: - return _context.abrupt("return", request(url, Object.assign({ - cancelToken: cancelToken.token - }, options))); - - case 1: - case "end": - return _context.stop(); - } - } - }, _callee); - })); - - return function fetch(_x, _x2) { - return _ref.apply(this, arguments); - }; - }(); - - return { - request: fetch, - cancel: cancelToken.cancel - }; -}; - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (CancelableRequest); - -/***/ }), - -/***/ "./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!./src/components/FaceCover.vue?vue&type=style&index=0&id=acc68b4c&lang=scss&scoped=true&": -/*!*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/components/FaceCover.vue?vue&type=style&index=0&id=acc68b4c&lang=scss&scoped=true& ***! - \*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".face-cover[data-v-acc68b4c] {\n display: flex;\n flex-direction: column;\n padding: 10px;\n border-radius: var(--border-radius-large);\n}\n.face-cover__crop-container[data-v-acc68b4c] {\n overflow: hidden;\n width: 250px;\n height: 250px;\n border-radius: 250px;\n position: relative;\n background: var(--color-background-darker);\n --photos-face-width: 250px;\n}\n@media only screen and (max-width: 1020px) {\n.face-cover__crop-container[data-v-acc68b4c] {\n width: 95px;\n height: 95px;\n --photos-face-width: 95px;\n}\n}\n.face-cover[data-v-acc68b4c]:hover, .face-cover[data-v-acc68b4c]:focus {\n background: var(--color-background-hover);\n}\n.face-cover__details[data-v-acc68b4c] {\n display: flex;\n flex-direction: column;\n width: 250px;\n margin-top: 4px;\n text-align: center;\n}\n@media only screen and (max-width: 1020px) {\n.face-cover__details[data-v-acc68b4c] {\n width: 95px;\n}\n}\n.face-cover__details__first-line[data-v-acc68b4c] {\n display: flex;\n height: 2em;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.face-cover__details__second-line[data-v-acc68b4c] {\n color: var(--color-text-maxcontrast);\n}\n.face-cover__details__name[data-v-acc68b4c] {\n flex-grow: 1;\n margin: 0;\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./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!./src/components/Loader.vue?vue&type=style&index=0&lang=scss&": -/*!****************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/components/Loader.vue?vue&type=style&index=0&lang=scss& ***! - \****************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".loader {\n display: grid;\n height: 60px;\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./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!./src/views/Faces.vue?vue&type=style&index=0&id=2a2a1e28&lang=scss&scoped=true&": -/*!**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/views/Faces.vue?vue&type=style&index=0&id=2a2a1e28&lang=scss&scoped=true& ***! - \**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".faces[data-v-2a2a1e28] {\n display: flex;\n flex-direction: column;\n height: calc(100vh - var(--header-height));\n padding-left: 64px;\n}\n@media only screen and (max-width: 1020px) {\n.faces[data-v-2a2a1e28] {\n padding: 0;\n}\n}\n.faces__header[data-v-2a2a1e28] {\n display: flex;\n min-height: 60px;\n align-items: center;\n}\n.faces__header button[data-v-2a2a1e28] {\n margin-right: 32px;\n}\n.faces__list[data-v-2a2a1e28] {\n padding-top: 24px;\n padding-bottom: 32px;\n flex-grow: 1;\n display: flex;\n flex-wrap: wrap;\n overflow: scroll;\n gap: 32px;\n align-content: flex-start;\n}\n.faces__empty[data-v-2a2a1e28] {\n display: flex;\n flex-direction: column;\n align-items: center;\n}\n.faces__empty__button[data-v-2a2a1e28] {\n margin-top: 32px;\n}\n.empty-content-with-illustration[data-v-2a2a1e28] .empty-content__icon {\n width: 200px;\n height: 200px;\n}\n.empty-content-with-illustration[data-v-2a2a1e28] .empty-content__icon svg {\n width: 200px;\n height: 200px;\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/FaceCover.vue?vue&type=style&index=0&id=acc68b4c&lang=scss&scoped=true&": -/*!***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/components/FaceCover.vue?vue&type=style&index=0&id=acc68b4c&lang=scss&scoped=true& ***! - \***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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_FaceCover_vue_vue_type_style_index_0_id_acc68b4c_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../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!./FaceCover.vue?vue&type=style&index=0&id=acc68b4c&lang=scss&scoped=true& */ "./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!./src/components/FaceCover.vue?vue&type=style&index=0&id=acc68b4c&lang=scss&scoped=true&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_FaceCover_vue_vue_type_style_index_0_id_acc68b4c_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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_FaceCover_vue_vue_type_style_index_0_id_acc68b4c_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_FaceCover_vue_vue_type_style_index_0_id_acc68b4c_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_FaceCover_vue_vue_type_style_index_0_id_acc68b4c_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/Loader.vue?vue&type=style&index=0&lang=scss&": -/*!********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/components/Loader.vue?vue&type=style&index=0&lang=scss& ***! - \********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../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& */ "./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!./src/components/Loader.vue?vue&type=style&index=0&lang=scss&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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___WEBPACK_IMPORTED_MODULE_6__["default"] && _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___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/views/Faces.vue?vue&type=style&index=0&id=2a2a1e28&lang=scss&scoped=true&": -/*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/views/Faces.vue?vue&type=style&index=0&id=2a2a1e28&lang=scss&scoped=true& ***! - \**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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_Faces_vue_vue_type_style_index_0_id_2a2a1e28_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../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!./Faces.vue?vue&type=style&index=0&id=2a2a1e28&lang=scss&scoped=true& */ "./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!./src/views/Faces.vue?vue&type=style&index=0&id=2a2a1e28&lang=scss&scoped=true&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_Faces_vue_vue_type_style_index_0_id_2a2a1e28_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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_Faces_vue_vue_type_style_index_0_id_2a2a1e28_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_Faces_vue_vue_type_style_index_0_id_2a2a1e28_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_Faces_vue_vue_type_style_index_0_id_2a2a1e28_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./src/components/FaceCover.vue": -/*!**************************************!*\ - !*** ./src/components/FaceCover.vue ***! - \**************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _FaceCover_vue_vue_type_template_id_acc68b4c_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./FaceCover.vue?vue&type=template&id=acc68b4c&scoped=true& */ "./src/components/FaceCover.vue?vue&type=template&id=acc68b4c&scoped=true&"); -/* harmony import */ var _FaceCover_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./FaceCover.vue?vue&type=script&lang=js& */ "./src/components/FaceCover.vue?vue&type=script&lang=js&"); -/* harmony import */ var _FaceCover_vue_vue_type_style_index_0_id_acc68b4c_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./FaceCover.vue?vue&type=style&index=0&id=acc68b4c&lang=scss&scoped=true& */ "./src/components/FaceCover.vue?vue&type=style&index=0&id=acc68b4c&lang=scss&scoped=true&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( - _FaceCover_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _FaceCover_vue_vue_type_template_id_acc68b4c_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render, - _FaceCover_vue_vue_type_template_id_acc68b4c_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - "acc68b4c", - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/FaceCover.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/Loader.vue": -/*!***********************************!*\ - !*** ./src/components/Loader.vue ***! - \***********************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _Loader_vue_vue_type_template_id_04a0d67a___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Loader.vue?vue&type=template&id=04a0d67a& */ "./src/components/Loader.vue?vue&type=template&id=04a0d67a&"); -/* harmony import */ var _Loader_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Loader.vue?vue&type=script&lang=js& */ "./src/components/Loader.vue?vue&type=script&lang=js&"); -/* harmony import */ var _Loader_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Loader.vue?vue&type=style&index=0&lang=scss& */ "./src/components/Loader.vue?vue&type=style&index=0&lang=scss&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( - _Loader_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _Loader_vue_vue_type_template_id_04a0d67a___WEBPACK_IMPORTED_MODULE_0__.render, - _Loader_vue_vue_type_template_id_04a0d67a___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - null, - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/Loader.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/views/Faces.vue": -/*!*****************************!*\ - !*** ./src/views/Faces.vue ***! - \*****************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _Faces_vue_vue_type_template_id_2a2a1e28_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Faces.vue?vue&type=template&id=2a2a1e28&scoped=true& */ "./src/views/Faces.vue?vue&type=template&id=2a2a1e28&scoped=true&"); -/* harmony import */ var _Faces_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Faces.vue?vue&type=script&lang=js& */ "./src/views/Faces.vue?vue&type=script&lang=js&"); -/* harmony import */ var _Faces_vue_vue_type_style_index_0_id_2a2a1e28_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Faces.vue?vue&type=style&index=0&id=2a2a1e28&lang=scss&scoped=true& */ "./src/views/Faces.vue?vue&type=style&index=0&id=2a2a1e28&lang=scss&scoped=true&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( - _Faces_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _Faces_vue_vue_type_template_id_2a2a1e28_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render, - _Faces_vue_vue_type_template_id_2a2a1e28_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - "2a2a1e28", - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/views/Faces.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/FaceCover.vue?vue&type=script&lang=js&": -/*!***************************************************************!*\ - !*** ./src/components/FaceCover.vue?vue&type=script&lang=js& ***! - \***************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_FaceCover_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FaceCover.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FaceCover.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_FaceCover_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/components/Loader.vue?vue&type=script&lang=js&": -/*!************************************************************!*\ - !*** ./src/components/Loader.vue?vue&type=script&lang=js& ***! - \************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Loader_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Loader.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Loader_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/views/Faces.vue?vue&type=script&lang=js&": -/*!******************************************************!*\ - !*** ./src/views/Faces.vue?vue&type=script&lang=js& ***! - \******************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Faces_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Faces.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/Faces.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Faces_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/components/FaceCover.vue?vue&type=style&index=0&id=acc68b4c&lang=scss&scoped=true&": -/*!************************************************************************************************!*\ - !*** ./src/components/FaceCover.vue?vue&type=style&index=0&id=acc68b4c&lang=scss&scoped=true& ***! - \************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_FaceCover_vue_vue_type_style_index_0_id_acc68b4c_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/style-loader/dist/cjs.js!../../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!./FaceCover.vue?vue&type=style&index=0&id=acc68b4c&lang=scss&scoped=true& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/FaceCover.vue?vue&type=style&index=0&id=acc68b4c&lang=scss&scoped=true&"); - - -/***/ }), - -/***/ "./src/components/Loader.vue?vue&type=style&index=0&lang=scss&": -/*!*********************************************************************!*\ - !*** ./src/components/Loader.vue?vue&type=style&index=0&lang=scss& ***! - \*********************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/style-loader/dist/cjs.js!../../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& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/Loader.vue?vue&type=style&index=0&lang=scss&"); - - -/***/ }), - -/***/ "./src/views/Faces.vue?vue&type=style&index=0&id=2a2a1e28&lang=scss&scoped=true&": -/*!***************************************************************************************!*\ - !*** ./src/views/Faces.vue?vue&type=style&index=0&id=2a2a1e28&lang=scss&scoped=true& ***! - \***************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_Faces_vue_vue_type_style_index_0_id_2a2a1e28_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/style-loader/dist/cjs.js!../../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!./Faces.vue?vue&type=style&index=0&id=2a2a1e28&lang=scss&scoped=true& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/views/Faces.vue?vue&type=style&index=0&id=2a2a1e28&lang=scss&scoped=true&"); - - -/***/ }), - -/***/ "./src/components/FaceCover.vue?vue&type=template&id=acc68b4c&scoped=true&": -/*!*********************************************************************************!*\ - !*** ./src/components/FaceCover.vue?vue&type=template&id=acc68b4c&scoped=true& ***! - \*********************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_FaceCover_vue_vue_type_template_id_acc68b4c_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_FaceCover_vue_vue_type_template_id_acc68b4c_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_FaceCover_vue_vue_type_template_id_acc68b4c_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FaceCover.vue?vue&type=template&id=acc68b4c&scoped=true& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FaceCover.vue?vue&type=template&id=acc68b4c&scoped=true&"); - - -/***/ }), - -/***/ "./src/components/Loader.vue?vue&type=template&id=04a0d67a&": -/*!******************************************************************!*\ - !*** ./src/components/Loader.vue?vue&type=template&id=04a0d67a& ***! - \******************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Loader_vue_vue_type_template_id_04a0d67a___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Loader_vue_vue_type_template_id_04a0d67a___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Loader_vue_vue_type_template_id_04a0d67a___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=template&id=04a0d67a& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Loader.vue?vue&type=template&id=04a0d67a&"); - - -/***/ }), - -/***/ "./src/views/Faces.vue?vue&type=template&id=2a2a1e28&scoped=true&": -/*!************************************************************************!*\ - !*** ./src/views/Faces.vue?vue&type=template&id=2a2a1e28&scoped=true& ***! - \************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Faces_vue_vue_type_template_id_2a2a1e28_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Faces_vue_vue_type_template_id_2a2a1e28_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Faces_vue_vue_type_template_id_2a2a1e28_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Faces.vue?vue&type=template&id=2a2a1e28&scoped=true& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/Faces.vue?vue&type=template&id=2a2a1e28&scoped=true&"); - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FaceCover.vue?vue&type=template&id=acc68b4c&scoped=true&": -/*!************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FaceCover.vue?vue&type=template&id=acc68b4c&scoped=true& ***! - \************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c( - "router-link", - { staticClass: "face-cover", attrs: { to: "/faces/" + _vm.baseName } }, - [ - _c("div", { staticClass: "face-cover__crop-container" }, [ - _c("img", { - ref: "image", - staticClass: "face-cover__image", - style: _vm.coverDimensions, - attrs: { src: _vm.coverUrl }, - }), - ]), - _vm._v(" "), - _c("div", { staticClass: "face-cover__details" }, [ - _c("div", { staticClass: "face-cover__details__first-line" }, [ - _c( - "h2", - { - class: { - "face-cover__details__name": true, - "hidden-visually": _vm.baseName.match(/^[0-9]+$/), - }, - }, - [_vm._v("\n\t\t\t\t" + _vm._s(_vm.baseName) + "\n\t\t\t")] - ), - ]), - _vm._v(" "), - _vm.facesFiles[_vm.baseName] - ? _c("div", { staticClass: "face-cover__details__second-line" }, [ - _vm._v( - "\n\t\t\t" + - _vm._s( - _vm.n( - "photos", - "%n photos", - "%n photos", - _vm.facesFiles[_vm.baseName].length - ) - ) + - "\n\t\t" - ), - ]) - : _vm._e(), - ]), - ] - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Loader.vue?vue&type=template&id=04a0d67a&": -/*!*********************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Loader.vue?vue&type=template&id=04a0d67a& ***! - \*********************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -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 - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/Faces.vue?vue&type=template&id=2a2a1e28&scoped=true&": -/*!***************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/Faces.vue?vue&type=template&id=2a2a1e28&scoped=true& ***! - \***************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _vm.errorFetchingFaces - ? _c("EmptyContent", [ - _vm._v("\n\t" + _vm._s(_vm.t("photos", "An error occurred")) + "\n"), - ]) - : _c( - "div", - { staticClass: "faces" }, - [ - _vm.loadingFaces ? _c("Loader") : _vm._e(), - _vm._v(" "), - _vm.noFaces && !_vm.loadingFaces - ? _c( - "div", - { staticClass: "faces__empty" }, - [ - _c( - "EmptyContent", - { - staticClass: "empty-content-with-illustration", - scopedSlots: _vm._u( - [ - { - key: "icon", - fn: function () { - return [_c("AccountBoxMultipleOutline")] - }, - proxy: true, - }, - { - key: "desc", - fn: function () { - return [ - _vm._v( - "\n\t\t\t\t" + - _vm._s( - _vm.t( - "photos", - "This might take some time depending on the size of your photo library." - ) - ) + - "\n\t\t\t" - ), - ] - }, - proxy: true, - }, - ], - null, - false, - 3796275108 - ), - }, - [ - _vm._v(" "), - _vm._v( - "\n\t\t\t" + - _vm._s( - _vm.t( - "photos", - "Recognized people will show up here" - ) - ) + - "\n\t\t" - ), - ] - ), - ], - 1 - ) - : !_vm.noFaces - ? _c( - "div", - { staticClass: "faces__list" }, - _vm._l(_vm.orderedFaces, function (face) { - return _c("FaceCover", { - key: face.basename, - attrs: { "base-name": face.basename }, - }) - }), - 1 - ) - : _vm._e(), - ], - 1 - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }) - -}]); -//# sourceMappingURL=photos-src_services_DavRequest_js-src_utils_CancelableRequest_js-src_views_Faces_vue.js.map?v=6a0c22494d152bddf57b \ No newline at end of file diff --git a/js/photos-src_services_DavRequest_js-src_utils_CancelableRequest_js-src_views_Faces_vue.js.map b/js/photos-src_services_DavRequest_js-src_utils_CancelableRequest_js-src_views_Faces_vue.js.map deleted file mode 100644 index d17133bef..000000000 --- a/js/photos-src_services_DavRequest_js-src_utils_CancelableRequest_js-src_views_Faces_vue.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-src_services_DavRequest_js-src_utils_CancelableRequest_js-src_views_Faces_vue.js?v=6a0c22494d152bddf57b","mappings":";;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;ACzIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;AChCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;AC9FA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;ACvBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;ACtFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;;;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;;;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;ACvCA;;;;;;;;;;;;;;;ACAA;;;;;;;;;;;;;;;ACAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AKAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;ACrDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sources":["webpack:///photos/src/components/FaceCover.vue?vue&type=script&lang=js&","webpack:///photos/src/components/Loader.vue?vue&type=script&lang=js&","webpack:///photos/src/views/Faces.vue?vue&type=script&lang=js&","webpack:///photos/src/services/DavRequest.js","webpack:///photos/src/utils/CancelableRequest.js","webpack:///photos/src/components/FaceCover.vue?vue&type=style&index=0&id=acc68b4c&lang=scss&scoped=true&","webpack:///photos/src/components/Loader.vue?vue&type=style&index=0&lang=scss&","webpack:///photos/src/views/Faces.vue?vue&type=style&index=0&id=2a2a1e28&lang=scss&scoped=true&","webpack://photos/./src/components/FaceCover.vue?e980","webpack://photos/./src/components/Loader.vue?eb1b","webpack://photos/./src/views/Faces.vue?f679","webpack:///photos/src/components/FaceCover.vue","webpack:///photos/src/components/Loader.vue","webpack:///photos/src/views/Faces.vue","webpack://photos/./src/components/FaceCover.vue?e065","webpack://photos/./src/components/Loader.vue?5453","webpack://photos/./src/views/Faces.vue?d1d7","webpack://photos/./src/components/FaceCover.vue?c703","webpack://photos/./src/views/Faces.vue?f0cf","webpack:///photos/src/components/FaceCover.vue?vue&type=template&id=acc68b4c&scoped=true&","webpack:///photos/src/views/Faces.vue?vue&type=template&id=2a2a1e28&scoped=true&","webpack://photos/./src/components/FaceCover.vue?14eb","webpack://photos/./src/components/Loader.vue?7124","webpack://photos/./src/views/Faces.vue?c831"],"sourcesContent":["function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport { mapGetters } from 'vuex';\nimport { generateUrl } from '@nextcloud/router';\nimport FetchFacesMixin from '../mixins/FetchFacesMixin.js';\nimport FaceCoverMixin from '../mixins/FaceCoverMixin.js';\nexport default {\n name: 'FaceCover',\n mixins: [FetchFacesMixin, FaceCoverMixin],\n props: {\n baseName: {\n type: String,\n required: true\n }\n },\n computed: _objectSpread(_objectSpread({}, mapGetters(['files', 'faces', 'facesFiles'])), {}, {\n /**\n * @return {Face}\n */\n face: function face() {\n return this.faces[this.baseName];\n },\n\n /**\n * @return {string}\n */\n coverUrl: function coverUrl() {\n if (!this.cover) {\n return '';\n }\n\n return generateUrl(\"/core/preview?fileId=\".concat(this.cover.fileid, \"&x=\", 512, \"&y=\", 512, \"&forceIcon=0&a=1\"));\n },\n cover: function cover() {\n return this.getFaceCover(this.face.basename);\n },\n coverDimensions: function coverDimensions() {\n if (!this.cover) return {};\n return this.getCoverStyle(this.face.basename);\n }\n }),\n beforeMount: function beforeMount() {\n var _this = this;\n\n return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {\n return regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return _this.fetchFiles();\n\n case 2:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }))();\n },\n beforeDestroy: function beforeDestroy() {\n this.cancelFilesRequest('Changed view');\n },\n methods: {\n fetchFiles: function fetchFiles() {\n var _this2 = this;\n\n return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() {\n return regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n _context2.next = 2;\n return _this2.fetchFaceContent(_this2.face.basename);\n\n case 2:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }))();\n }\n }\n};","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nexport default {\n name: 'Loader'\n};","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport { EmptyContent } from '@nextcloud/vue';\nimport AccountBoxMultipleOutline from 'vue-material-design-icons/AccountBoxMultipleOutline';\nimport FetchFacesMixin from '../mixins/FetchFacesMixin.js';\nimport Loader from '../components/Loader.vue';\nimport FaceCover from '../components/FaceCover.vue';\nimport { mapGetters } from 'vuex';\nexport default {\n name: 'Faces',\n components: {\n FaceCover: FaceCover,\n EmptyContent: EmptyContent,\n Loader: Loader,\n AccountBoxMultipleOutline: AccountBoxMultipleOutline\n },\n mixins: [FetchFacesMixin],\n computed: _objectSpread(_objectSpread({}, mapGetters(['facesFiles'])), {}, {\n /**\n * @return {boolean} Whether the list of face is empty or not.\n */\n noFaces: function noFaces() {\n return Object.keys(this.faces).length === 0;\n },\n orderedFaces: function orderedFaces() {\n var _this = this;\n\n return Object.values(this.faces).sort(function (a, b) {\n if (!_this.facesFiles[b.basename] || !_this.facesFiles[a.basename]) {\n return 0;\n }\n\n return _this.facesFiles[b.basename].length - _this.facesFiles[a.basename].length;\n });\n }\n })\n};","/**\n * @copyright Copyright (c) 2019 John Molakvoæ \n *\n * @author John Molakvoæ \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 .\n *\n */\nvar props = \"\\n\\t\\n\\t\\n\\t\\n\\t\\n\\t\\n\\t\\n\\t\\n\\t\\n\\t\\n\\t\\n\\t\";\nexport { props };\nexport default \"\\n\\t\\t\\t\\n\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\".concat(props, \"\\n\\t\\t\\t\\t\\n\\t\\t\\t\");","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\n/**\n * @copyright Copyright (c) 2019 Marco Ambrosini \n *\n * @author Marco Ambrosini \n *\n * @author John Molakvoæ \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 .\n *\n */\nimport axios from '@nextcloud/axios';\n/**\n * Create a cancel token\n *\n * @return {CancelTokenSource}\n */\n\nvar createCancelToken = function createCancelToken() {\n return axios.CancelToken.source();\n};\n/**\n * Creates a cancelable axios 'request object'.\n *\n * @param {Function} request the axios promise request\n * @return {object}\n */\n\n\nvar CancelableRequest = function CancelableRequest(request) {\n /**\n * Generate an axios cancel token\n */\n var cancelToken = createCancelToken();\n /**\n * Execute the request\n *\n * @param {string} url the url to send the request to\n * @param {object} [options] optional config for the request\n */\n\n var fetch = /*#__PURE__*/function () {\n var _ref = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(url, options) {\n return regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n return _context.abrupt(\"return\", request(url, Object.assign({\n cancelToken: cancelToken.token\n }, options)));\n\n case 1:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n\n return function fetch(_x, _x2) {\n return _ref.apply(this, arguments);\n };\n }();\n\n return {\n request: fetch,\n cancel: cancelToken.cancel\n };\n};\n\nexport default CancelableRequest;","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".face-cover[data-v-acc68b4c] {\\n display: flex;\\n flex-direction: column;\\n padding: 10px;\\n border-radius: var(--border-radius-large);\\n}\\n.face-cover__crop-container[data-v-acc68b4c] {\\n overflow: hidden;\\n width: 250px;\\n height: 250px;\\n border-radius: 250px;\\n position: relative;\\n background: var(--color-background-darker);\\n --photos-face-width: 250px;\\n}\\n@media only screen and (max-width: 1020px) {\\n.face-cover__crop-container[data-v-acc68b4c] {\\n width: 95px;\\n height: 95px;\\n --photos-face-width: 95px;\\n}\\n}\\n.face-cover[data-v-acc68b4c]:hover, .face-cover[data-v-acc68b4c]:focus {\\n background: var(--color-background-hover);\\n}\\n.face-cover__details[data-v-acc68b4c] {\\n display: flex;\\n flex-direction: column;\\n width: 250px;\\n margin-top: 4px;\\n text-align: center;\\n}\\n@media only screen and (max-width: 1020px) {\\n.face-cover__details[data-v-acc68b4c] {\\n width: 95px;\\n}\\n}\\n.face-cover__details__first-line[data-v-acc68b4c] {\\n display: flex;\\n height: 2em;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n}\\n.face-cover__details__second-line[data-v-acc68b4c] {\\n color: var(--color-text-maxcontrast);\\n}\\n.face-cover__details__name[data-v-acc68b4c] {\\n flex-grow: 1;\\n margin: 0;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".loader {\\n display: grid;\\n height: 60px;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".faces[data-v-2a2a1e28] {\\n display: flex;\\n flex-direction: column;\\n height: calc(100vh - var(--header-height));\\n padding-left: 64px;\\n}\\n@media only screen and (max-width: 1020px) {\\n.faces[data-v-2a2a1e28] {\\n padding: 0;\\n}\\n}\\n.faces__header[data-v-2a2a1e28] {\\n display: flex;\\n min-height: 60px;\\n align-items: center;\\n}\\n.faces__header button[data-v-2a2a1e28] {\\n margin-right: 32px;\\n}\\n.faces__list[data-v-2a2a1e28] {\\n padding-top: 24px;\\n padding-bottom: 32px;\\n flex-grow: 1;\\n display: flex;\\n flex-wrap: wrap;\\n overflow: scroll;\\n gap: 32px;\\n align-content: flex-start;\\n}\\n.faces__empty[data-v-2a2a1e28] {\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n}\\n.faces__empty__button[data-v-2a2a1e28] {\\n margin-top: 32px;\\n}\\n.empty-content-with-illustration[data-v-2a2a1e28] .empty-content__icon {\\n width: 200px;\\n height: 200px;\\n}\\n.empty-content-with-illustration[data-v-2a2a1e28] .empty-content__icon svg {\\n width: 200px;\\n height: 200px;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./FaceCover.vue?vue&type=style&index=0&id=acc68b4c&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./FaceCover.vue?vue&type=style&index=0&id=acc68b4c&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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 \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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 export default content && content.locals ? content.locals : undefined;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./Faces.vue?vue&type=style&index=0&id=2a2a1e28&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./Faces.vue?vue&type=style&index=0&id=2a2a1e28&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FaceCover.vue?vue&type=template&id=acc68b4c&scoped=true&\"\nimport script from \"./FaceCover.vue?vue&type=script&lang=js&\"\nexport * from \"./FaceCover.vue?vue&type=script&lang=js&\"\nimport style0 from \"./FaceCover.vue?vue&type=style&index=0&id=acc68b4c&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 \"acc68b4c\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/admin/Docker/apps2/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('acc68b4c')) {\n api.createRecord('acc68b4c', component.options)\n } else {\n api.reload('acc68b4c', component.options)\n }\n module.hot.accept(\"./FaceCover.vue?vue&type=template&id=acc68b4c&scoped=true&\", function () {\n api.rerender('acc68b4c', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/FaceCover.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./Loader.vue?vue&type=template&id=04a0d67a&\"\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\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/admin/Docker/apps2/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('04a0d67a')) {\n api.createRecord('04a0d67a', component.options)\n } else {\n api.reload('04a0d67a', component.options)\n }\n module.hot.accept(\"./Loader.vue?vue&type=template&id=04a0d67a&\", function () {\n api.rerender('04a0d67a', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/Loader.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./Faces.vue?vue&type=template&id=2a2a1e28&scoped=true&\"\nimport script from \"./Faces.vue?vue&type=script&lang=js&\"\nexport * from \"./Faces.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Faces.vue?vue&type=style&index=0&id=2a2a1e28&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 \"2a2a1e28\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/admin/Docker/apps2/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('2a2a1e28')) {\n api.createRecord('2a2a1e28', component.options)\n } else {\n api.reload('2a2a1e28', component.options)\n }\n module.hot.accept(\"./Faces.vue?vue&type=template&id=2a2a1e28&scoped=true&\", function () {\n api.rerender('2a2a1e28', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/views/Faces.vue\"\nexport default component.exports","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FaceCover.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!./FaceCover.vue?vue&type=script&lang=js&\"","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 mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Faces.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!./Faces.vue?vue&type=script&lang=js&\"","export * from \"-!../../node_modules/style-loader/dist/cjs.js!../../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!./FaceCover.vue?vue&type=style&index=0&id=acc68b4c&lang=scss&scoped=true&\"","export * from \"-!../../node_modules/style-loader/dist/cjs.js!../../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!./Faces.vue?vue&type=style&index=0&id=2a2a1e28&lang=scss&scoped=true&\"","export * from \"-!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FaceCover.vue?vue&type=template&id=acc68b4c&scoped=true&\"","export * from \"-!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Faces.vue?vue&type=template&id=2a2a1e28&scoped=true&\"","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"router-link\",\n { staticClass: \"face-cover\", attrs: { to: \"/faces/\" + _vm.baseName } },\n [\n _c(\"div\", { staticClass: \"face-cover__crop-container\" }, [\n _c(\"img\", {\n ref: \"image\",\n staticClass: \"face-cover__image\",\n style: _vm.coverDimensions,\n attrs: { src: _vm.coverUrl },\n }),\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"face-cover__details\" }, [\n _c(\"div\", { staticClass: \"face-cover__details__first-line\" }, [\n _c(\n \"h2\",\n {\n class: {\n \"face-cover__details__name\": true,\n \"hidden-visually\": _vm.baseName.match(/^[0-9]+$/),\n },\n },\n [_vm._v(\"\\n\\t\\t\\t\\t\" + _vm._s(_vm.baseName) + \"\\n\\t\\t\\t\")]\n ),\n ]),\n _vm._v(\" \"),\n _vm.facesFiles[_vm.baseName]\n ? _c(\"div\", { staticClass: \"face-cover__details__second-line\" }, [\n _vm._v(\n \"\\n\\t\\t\\t\" +\n _vm._s(\n _vm.n(\n \"photos\",\n \"%n photos\",\n \"%n photos\",\n _vm.facesFiles[_vm.baseName].length\n )\n ) +\n \"\\n\\t\\t\"\n ),\n ])\n : _vm._e(),\n ]),\n ]\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { staticClass: \"loader\" },\n [\n _vm._t(\"icon\", function () {\n return [_c(\"span\", { staticClass: \"icon-loading\" })]\n }),\n ],\n 2\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _vm.errorFetchingFaces\n ? _c(\"EmptyContent\", [\n _vm._v(\"\\n\\t\" + _vm._s(_vm.t(\"photos\", \"An error occurred\")) + \"\\n\"),\n ])\n : _c(\n \"div\",\n { staticClass: \"faces\" },\n [\n _vm.loadingFaces ? _c(\"Loader\") : _vm._e(),\n _vm._v(\" \"),\n _vm.noFaces && !_vm.loadingFaces\n ? _c(\n \"div\",\n { staticClass: \"faces__empty\" },\n [\n _c(\n \"EmptyContent\",\n {\n staticClass: \"empty-content-with-illustration\",\n scopedSlots: _vm._u(\n [\n {\n key: \"icon\",\n fn: function () {\n return [_c(\"AccountBoxMultipleOutline\")]\n },\n proxy: true,\n },\n {\n key: \"desc\",\n fn: function () {\n return [\n _vm._v(\n \"\\n\\t\\t\\t\\t\" +\n _vm._s(\n _vm.t(\n \"photos\",\n \"This might take some time depending on the size of your photo library.\"\n )\n ) +\n \"\\n\\t\\t\\t\"\n ),\n ]\n },\n proxy: true,\n },\n ],\n null,\n false,\n 3796275108\n ),\n },\n [\n _vm._v(\" \"),\n _vm._v(\n \"\\n\\t\\t\\t\" +\n _vm._s(\n _vm.t(\n \"photos\",\n \"Recognized people will show up here\"\n )\n ) +\n \"\\n\\t\\t\"\n ),\n ]\n ),\n ],\n 1\n )\n : !_vm.noFaces\n ? _c(\n \"div\",\n { staticClass: \"faces__list\" },\n _vm._l(_vm.orderedFaces, function (face) {\n return _c(\"FaceCover\", {\n key: face.basename,\n attrs: { \"base-name\": face.basename },\n })\n }),\n 1\n )\n : _vm._e(),\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-src_utils_CancelableRequest_js-node_modules_vue-material-design-icons_Send_vue-src_components-ed1dc2.js b/js/photos-src_utils_CancelableRequest_js-node_modules_vue-material-design-icons_Send_vue-src_components-ed1dc2.js deleted file mode 100644 index 1c1a1ec03..000000000 --- a/js/photos-src_utils_CancelableRequest_js-node_modules_vue-material-design-icons_Send_vue-src_components-ed1dc2.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkphotos=self.webpackChunkphotos||[]).push([["src_utils_CancelableRequest_js-node_modules_vue-material-design-icons_Send_vue-src_components-ed1dc2"],{4615:(n,t,e)=>{e.d(t,{Z:()=>o});var r=e(26937);function i(n,t,e,r,i,o,s){try{var a=n[o](s),c=a.value}catch(n){return void e(n)}a.done?t(c):Promise.resolve(c).then(r,i)}const o=function(n){var t=r.Z.CancelToken.source(),e=function(){var e,r=(e=regeneratorRuntime.mark((function e(r,i){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",n(r,Object.assign({cancelToken:t.token},i)));case 1:case"end":return e.stop()}}),e)})),function(){var n=this,t=arguments;return new Promise((function(r,o){var s=e.apply(n,t);function a(n){i(s,r,o,a,c,"next",n)}function c(n){i(s,r,o,a,c,"throw",n)}a(void 0)}))});return function(n,t){return r.apply(this,arguments)}}();return{request:e,cancel:t.cancel}}},78504:(n,t,e)=>{e.d(t,{Z:()=>a});var r=e(87537),i=e.n(r),o=e(23645),s=e.n(o)()(i());s.push([n.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:""}]);const a=s},21238:(n,t,e)=>{e.d(t,{Z:()=>a});var r=e(87537),i=e.n(r),o=e(23645),s=e.n(o)()(i());s.push([n.id,".vs-container[data-v-5e8733b7]{overflow-y:scroll;height:100%}.vs-rows-container[data-v-5e8733b7]{box-sizing:border-box}","",{version:3,sources:["webpack://./src/components/VirtualScrolling.vue"],names:[],mappings:"AAkTA,+BACC,iBAAA,CACA,WAAA,CAGD,oCACC,qBAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.vs-container {\n\toverflow-y: scroll;\n\theight: 100%;\n}\n\n.vs-rows-container {\n\tbox-sizing: border-box;\n}\n'],sourceRoot:""}]);const a=s},75400:(n,t,e)=>{e.d(t,{Z:()=>i});const r={name:"SendIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const i=(0,e(51900).Z)(r,(function(){var n=this,t=n.$createElement,e=n._self._c||t;return e("span",n._b({staticClass:"material-design-icon send-icon",attrs:{"aria-hidden":!n.title,"aria-label":n.title,role:"img"},on:{click:function(t){return n.$emit("click",t)}}},"span",n.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:n.fillColor,width:n.size,height:n.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M2,21L23,12L2,3V10L17,12L2,14V21Z"}},[n.title?e("title",[n._v(n._s(n.title))]):n._e()])])])}),[],!1,null,null,null).exports},8702:(n,t,e)=>{e.d(t,{Z:()=>b});const r={name:"Loader"};var i=e(93379),o=e.n(i),s=e(7795),a=e.n(s),c=e(90569),l=e.n(c),u=e(3565),d=e.n(u),h=e(19216),f=e.n(h),m=e(44589),p=e.n(m),g=e(78504),v={};v.styleTagTransform=p(),v.setAttributes=d(),v.insert=l().bind(null,"head"),v.domAPI=a(),v.insertStyleElement=f();o()(g.Z,v);g.Z&&g.Z.locals&&g.Z.locals;const b=(0,e(51900).Z)(r,(function(){var n=this,t=n.$createElement,e=n._self._c||t;return e("div",{staticClass:"loader"},[n._t("icon",(function(){return[e("span",{staticClass:"icon-loading"})]}))],2)}),[],!1,null,null,null).exports},20561:(n,t,e)=>{e.d(t,{Z:()=>_});var r=e(20296),i=e(59537);function o(n,t){var e="undefined"!=typeof Symbol&&n[Symbol.iterator]||n["@@iterator"];if(!e){if(Array.isArray(n)||(e=u(n))||t&&n&&"number"==typeof n.length){e&&(n=e);var r=0,i=function(){};return{s:i,n:function(){return r>=n.length?{done:!0}:{done:!1,value:n[r++]}},e:function(n){throw n},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,s=!0,a=!1;return{s:function(){e=e.call(n)},n:function(){var n=e.next();return s=n.done,n},e:function(n){a=!0,o=n},f:function(){try{s||null==e.return||e.return()}finally{if(a)throw o}}}}function s(n,t){var e=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(n,t).enumerable}))),e.push.apply(e,r)}return e}function a(n){for(var t=1;tn.length)&&(t=n.length);for(var e=0,r=new Array(t);e=this.rowsHeight-n},container:function(){return i.Z.debug("[VirtualScrolling] Computing container"),null!==this.containerElement?this.containerElement:this.useWindow?window:this.$refs.container}},watch:{isNearBottom:function(n){n&&this.$emit("need-content")},rows:function(){this.isNearBottom&&this.$emit("need-content")},scrollToKey:function(n){var t,e=0,r=o(this.rows);try{for(r.s();!(t=r.n()).done;){var i=t.value;if(i.key===n)return void this.$refs.container.scrollTo({top:e,behavior:"smooth"});e+=i.height}}catch(n){r.e(n)}finally{r.f()}}},mounted:function(){var n=this;this.resizeObserver=new ResizeObserver((function(t){var e,r=o(t);try{for(r.s();!(e=r.n()).done;){var i=e.value,s=i.contentRect;i.target.classList.contains("vs-container")&&(n.containerHeight=s.height),i.target.classList.contains("vs-rows-container")&&(n.rowsContainerHeight=s.height)}}catch(n){r.e(n)}finally{r.f()}})),this.useWindow?(window.addEventListener("resize",this.updateContainerSize),this.containerHeight=window.innerHeight):this.resizeObserver.observe(this.container),this.resizeObserver.observe(this.$refs.rowsContainer),this.container.addEventListener("scroll",this.updateScrollPosition)},beforeDestroy:function(){this.useWindow&&window.removeEventListener("resize",this.updateContainerSize),this.resizeObserver.disconnect(),this.container.removeEventListener("scroll",this.updateScrollPosition)},methods:{updateScrollPosition:(0,r.debounce)((function(){this.useWindow?this.scrollPosition=this.container.scrollY:this.scrollPosition=this.container.scrollTop}),200),updateContainerSize:function(){this.containerHeight=window.innerHeight}}};var f=e(93379),m=e.n(f),p=e(7795),g=e.n(p),v=e(90569),b=e.n(v),w=e(3565),y=e.n(w),A=e(19216),C=e.n(A),T=e(44589),W=e.n(T),S=e(21238),O={};O.styleTagTransform=W(),O.setAttributes=y(),O.insert=b().bind(null,"head"),O.domAPI=g(),O.insertStyleElement=C();m()(S.Z,O);S.Z&&S.Z.locals&&S.Z.locals;const _=(0,e(51900).Z)(h,(function(){var n=this,t=n.$createElement,e=n._self._c||t;return n.useWindow||null!==n.containerElement?e("div",{ref:"rowsContainer",staticClass:"vs-rows-container",style:n.rowsContainerStyle},[n._t("default",null,{renderedRows:n.visibleRows}),n._v(" "),n._t("loader")],2):e("div",{ref:"container",staticClass:"vs-container"},[e("div",{ref:"rowsContainer",staticClass:"vs-rows-container",style:n.rowsContainerStyle},[n._t("default",null,{renderedRows:n.visibleRows}),n._v(" "),n._t("loader")],2)])}),[],!1,null,"5e8733b7",null).exports}}]); -//# sourceMappingURL=photos-src_utils_CancelableRequest_js-node_modules_vue-material-design-icons_Send_vue-src_components-ed1dc2.js.map?v=1d232c0555ae9ad46c62 \ No newline at end of file diff --git a/js/photos-src_utils_CancelableRequest_js-node_modules_vue-material-design-icons_Send_vue-src_components-ed1dc2.js.map b/js/photos-src_utils_CancelableRequest_js-node_modules_vue-material-design-icons_Send_vue-src_components-ed1dc2.js.map deleted file mode 100644 index 2cb7e258e..000000000 --- a/js/photos-src_utils_CancelableRequest_js-node_modules_vue-material-design-icons_Send_vue-src_components-ed1dc2.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-src_utils_CancelableRequest_js-node_modules_vue-material-design-icons_Send_vue-src_components-ed1dc2.js?v=1d232c0555ae9ad46c62","mappings":"2VA+DA,QAzB0B,SAASA,GAIlC,IAAMC,EAZyBC,EAAAA,EAAAA,YAAAA,SAoBzBC,EAAK,e,EAAA,G,EAAA,yBAAG,WAAeC,EAAKC,GAApB,yGACNL,EACNI,EACAE,OAAOC,OAAO,CAAEN,YAAaA,EAAYO,OAASH,KAHtC,0C,+KAAH,wDAOX,MAAO,CACNL,QAASG,EACTM,OAAQR,EAAYQ,OAErB,C,sEC1DGC,E,MAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,oCAAqC,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,yCAAyC,MAAQ,GAAG,SAAW,4BAA4B,eAAiB,CAAC,kqBAAkvB,WAAa,MAEr9B,S,sECJIH,E,MAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,0HAA2H,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,mDAAmD,MAAQ,GAAG,SAAW,+CAA+C,eAAiB,CAAC,2vCAA20C,WAAa,MAEjqD,S,mCCaA,MCpBwG,EDoBxG,CACEC,KAAM,WACNC,MAAO,CAAC,SACRC,MAAO,CACLC,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAMK,OACNF,QAAS,MEff,SAXgB,E,SAAA,GACd,GCRW,WAAa,IAAIG,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAOJ,EAAIM,GAAG,CAACC,YAAY,iCAAiCC,MAAM,CAAC,eAAeR,EAAIP,MAAM,aAAaO,EAAIP,MAAM,KAAO,OAAOgB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAASD,EAAO,IAAI,OAAOV,EAAIY,QAAO,GAAO,CAACR,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOR,EAAIJ,UAAU,MAAQI,EAAIF,KAAK,OAASE,EAAIF,KAAK,QAAU,cAAc,CAACM,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,sCAAsC,CAAER,EAAS,MAAEI,EAAG,QAAQ,CAACJ,EAAIa,GAAGb,EAAIc,GAAGd,EAAIP,UAAUO,EAAIe,UAAU,GACnjB,IDUpB,EACA,KACA,KACA,MAI8B,O,kCEahC,MC/BuK,ED+BvK,CACA,e,qIErBIlC,EAAU,CAAC,EAEfA,EAAQmC,kBAAoB,IAC5BnC,EAAQoC,cAAgB,IAElBpC,EAAQqC,OAAS,SAAc,KAAM,QAE3CrC,EAAQsC,OAAS,IACjBtC,EAAQuC,mBAAqB,IAEhB,IAAI,IAASvC,GAKJ,KAAW,YAAiB,WCPlD,SAXgB,E,SAAA,GACd,GCTW,WAAa,IAAImB,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACG,YAAY,UAAU,CAACP,EAAIqB,GAAG,QAAO,WAAW,MAAO,CAACjB,EAAG,OAAO,CAACG,YAAY,iBAAiB,KAAI,EAAE,GAC1L,IDWpB,EACA,KACA,KACA,MAI8B,O,mCEnBhC,I,kkECsDA,MCtDiL,EDsDjL,CACA,wBAEA,OACA,MACA,WACA,aAGA,kBACA,iBACA,cAGA,WACA,aACA,YAGA,mBACA,YACA,WAEA,0BACA,YACA,WAEA,oBACA,YAEA,WAEA,mBACA,YACA,WAEA,aACA,YACA,aAIA,KA1CA,WA2CA,OACA,iBACA,kBACA,sBAEA,oBAEA,EAEA,UAIA,YAJA,WAKA,iEAGA,0BACA,uBAIA,2BACA,kCACA,4BAEA,IACA,IAIA,iBACA,sBAIA,GAHA,IACA,YAEA,eACA,SAGA,aAaA,OAXA,iBACA,SAEA,iBACA,aAEA,iBACA,cAIA,YACA,GADA,QAGA,GAHA,IAIA,gBAGA,MACA,EAOA,WA3DA,WA8DA,iBACA,oCACA,sCAJA,GAKA,EAKA,WAtEA,WAsEA,WACA,+BACA,SAGA,kFAEA,iBACA,oCACA,WACA,qCACA,EAOA,mBAxFA,WAyFA,OACA,uCACA,2CAEA,EAQA,aArGA,WAsGA,kDACA,kEACA,EAKA,UA7GA,WA+GA,OADA,oDACA,6BACA,sBACA,eACA,OAEA,oBAEA,GAGA,OACA,aADA,SACA,GACA,GACA,0BAEA,EAEA,KAPA,WAUA,mBACA,0BAEA,EAEA,YAfA,SAeA,GACA,IADA,EACA,IADA,IAEA,WAFA,IAEA,0CACA,aAEA,YADA,yDAIA,WACA,CATA,+BAUA,GAGA,QAzMA,WAyMA,WACA,8DACA,GADA,IACA,0CACA,gBACA,8CACA,4BAEA,mDACA,+BAEA,CATA,+BAUA,IAEA,gBACA,2DACA,yCAEA,4CAGA,sDACA,mEACA,EAEA,cAjOA,WAkOA,gBACA,8DAGA,iCACA,sEACA,EAEA,SACA,gDACA,eACA,2CAEA,4CAEA,QAEA,oBATA,WAUA,uCACA,I,qIEhSI1B,EAAU,CAAC,EAEfA,EAAQmC,kBAAoB,IAC5BnC,EAAQoC,cAAgB,IAElBpC,EAAQqC,OAAS,SAAc,KAAM,QAE3CrC,EAAQsC,OAAS,IACjBtC,EAAQuC,mBAAqB,IAEhB,IAAI,IAASvC,GAKJ,KAAW,YAAiB,WCPlD,SAXgB,E,SAAA,GACd,GJTW,WAAa,IAAImB,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAASF,EAAIsB,WAAsC,OAAzBtB,EAAIuB,iBAA4QnB,EAAG,MAAM,CAACoB,IAAI,gBAAgBjB,YAAY,oBAAoBkB,MAAOzB,EAAsB,oBAAG,CAACA,EAAIqB,GAAG,UAAU,KAAK,CAAC,aAAerB,EAAI0B,cAAc1B,EAAIa,GAAG,KAAKb,EAAIqB,GAAG,WAAW,GAAtajB,EAAG,MAAM,CAACoB,IAAI,YAAYjB,YAAY,gBAAgB,CAACH,EAAG,MAAM,CAACoB,IAAI,gBAAgBjB,YAAY,oBAAoBkB,MAAOzB,EAAsB,oBAAG,CAACA,EAAIqB,GAAG,UAAU,KAAK,CAAC,aAAerB,EAAI0B,cAAc1B,EAAIa,GAAG,KAAKb,EAAIqB,GAAG,WAAW,IAA4L,GACpiB,IIWpB,EACA,KACA,WACA,MAI8B,O","sources":["webpack:///photos/src/utils/CancelableRequest.js","webpack:///photos/src/components/Loader.vue?vue&type=style&index=0&lang=scss&","webpack:///photos/src/components/VirtualScrolling.vue?vue&type=style&index=0&id=5e8733b7&scoped=true&lang=scss&","webpack:///photos/node_modules/vue-material-design-icons/Send.vue","webpack:///photos/node_modules/vue-material-design-icons/Send.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/Send.vue?0295","webpack:///photos/node_modules/vue-material-design-icons/Send.vue?vue&type=template&id=46f29e66&","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/components/VirtualScrolling.vue?vue&type=template&id=5e8733b7&scoped=true&","webpack:///photos/src/components/VirtualScrolling.vue","webpack:///photos/src/components/VirtualScrolling.vue?vue&type=script&lang=js&","webpack://photos/./src/components/VirtualScrolling.vue?876f","webpack://photos/./src/components/VirtualScrolling.vue?6e3f"],"sourcesContent":["/**\n * @copyright Copyright (c) 2019 Marco Ambrosini \n *\n * @author Marco Ambrosini \n *\n * @author John Molakvoæ \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 .\n *\n */\n\nimport axios from '@nextcloud/axios'\n/**\n * Create a cancel token\n *\n * @return {CancelTokenSource}\n */\nconst createCancelToken = () => axios.CancelToken.source()\n\n/**\n * Creates a cancelable axios 'request object'.\n *\n * @param {Function} request the axios promise request\n * @return {object}\n */\nconst CancelableRequest = function(request) {\n\t/**\n\t * Generate an axios cancel token\n\t */\n\tconst cancelToken = createCancelToken()\n\n\t/**\n\t * Execute the request\n\t *\n\t * @param {string} url the url to send the request to\n\t * @param {object} [options] optional config for the request\n\t */\n\tconst fetch = async function(url, options) {\n\t\treturn request(\n\t\t\turl,\n\t\t\tObject.assign({ cancelToken: cancelToken.token }, options)\n\t\t)\n\t}\n\n\treturn {\n\t\trequest: fetch,\n\t\tcancel: cancelToken.cancel,\n\t}\n}\n\nexport default CancelableRequest\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\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_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".vs-container[data-v-5e8733b7]{overflow-y:scroll;height:100%}.vs-rows-container[data-v-5e8733b7]{box-sizing:border-box}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/VirtualScrolling.vue\"],\"names\":[],\"mappings\":\"AAkTA,+BACC,iBAAA,CACA,WAAA,CAGD,oCACC,qBAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.vs-container {\\n\\toverflow-y: scroll;\\n\\theight: 100%;\\n}\\n\\n.vs-rows-container {\\n\\tbox-sizing: border-box;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Send.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Send.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Send.vue?vue&type=template&id=46f29e66&\"\nimport script from \"./Send.vue?vue&type=script&lang=js&\"\nexport * from \"./Send.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon send-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M2,21L23,12L2,3V10L17,12L2,14V21Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\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&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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 \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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 export default content && content.locals ? content.locals : undefined;\n","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 }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.useWindow && _vm.containerElement === null)?_c('div',{ref:\"container\",staticClass:\"vs-container\"},[_c('div',{ref:\"rowsContainer\",staticClass:\"vs-rows-container\",style:(_vm.rowsContainerStyle)},[_vm._t(\"default\",null,{\"renderedRows\":_vm.visibleRows}),_vm._v(\" \"),_vm._t(\"loader\")],2)]):_c('div',{ref:\"rowsContainer\",staticClass:\"vs-rows-container\",style:(_vm.rowsContainerStyle)},[_vm._t(\"default\",null,{\"renderedRows\":_vm.visibleRows}),_vm._v(\" \"),_vm._t(\"loader\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VirtualScrolling.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!./VirtualScrolling.vue?vue&type=script&lang=js&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./VirtualScrolling.vue?vue&type=style&index=0&id=5e8733b7&scoped=true&lang=scss&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./VirtualScrolling.vue?vue&type=style&index=0&id=5e8733b7&scoped=true&lang=scss&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./VirtualScrolling.vue?vue&type=template&id=5e8733b7&scoped=true&\"\nimport script from \"./VirtualScrolling.vue?vue&type=script&lang=js&\"\nexport * from \"./VirtualScrolling.vue?vue&type=script&lang=js&\"\nimport style0 from \"./VirtualScrolling.vue?vue&type=style&index=0&id=5e8733b7&scoped=true&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 \"5e8733b7\",\n null\n \n)\n\nexport default component.exports"],"names":["request","cancelToken","axios","fetch","url","options","Object","assign","token","cancel","___CSS_LOADER_EXPORT___","push","module","id","name","emits","props","title","type","String","fillColor","default","size","Number","_vm","this","_h","$createElement","_c","_self","_b","staticClass","attrs","on","$event","$emit","$attrs","_v","_s","_e","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","_t","useWindow","containerElement","ref","style","visibleRows"],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-src_utils_CancelableRequest_js-node_modules_vue-material-design-icons_Send_vue-src_views_Albums_vue.js b/js/photos-src_utils_CancelableRequest_js-node_modules_vue-material-design-icons_Send_vue-src_views_Albums_vue.js deleted file mode 100644 index 56486bf7d..000000000 --- a/js/photos-src_utils_CancelableRequest_js-node_modules_vue-material-design-icons_Send_vue-src_views_Albums_vue.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkphotos=self.webpackChunkphotos||[]).push([["src_utils_CancelableRequest_js-node_modules_vue-material-design-icons_Send_vue-src_views_Albums_vue"],{4615:(n,t,e)=>{e.d(t,{Z:()=>r});var a=e(26937);function i(n,t,e,a,i,r,o){try{var l=n[r](o),s=l.value}catch(n){return void e(n)}l.done?t(s):Promise.resolve(s).then(a,i)}const r=function(n){var t=a.Z.CancelToken.source(),e=function(){var e,a=(e=regeneratorRuntime.mark((function e(a,i){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",n(a,Object.assign({cancelToken:t.token},i)));case 1:case"end":return e.stop()}}),e)})),function(){var n=this,t=arguments;return new Promise((function(a,r){var o=e.apply(n,t);function l(n){i(o,a,r,l,s,"next",n)}function s(n){i(o,a,r,l,s,"throw",n)}l(void 0)}))});return function(n,t){return a.apply(this,arguments)}}();return{request:e,cancel:t.cancel}}},42357:(n,t,e)=>{e.d(t,{Z:()=>l});var a=e(87537),i=e.n(a),r=e(23645),o=e.n(r)()(i());o.push([n.id,".album-cover[data-v-9a9e277a]{display:flex;flex-direction:column;padding:16px;border-radius:12px}.album-cover[data-v-9a9e277a]:hover,.album-cover[data-v-9a9e277a]:focus{background:var(--color-background-dark)}.album-cover__image[data-v-9a9e277a]{width:350px;height:350px;object-fit:none;border-radius:12px}@media only screen and (max-width: 1200px){.album-cover__image[data-v-9a9e277a]{width:250px;height:250px}}.album-cover__image--placeholder[data-v-9a9e277a]{background:var(--color-primary-light)}.album-cover__image--placeholder[data-v-9a9e277a] .material-design-icon{width:100%;height:100%}.album-cover__image--placeholder[data-v-9a9e277a] .material-design-icon .material-design-icon__svg{fill:var(--color-primary)}.album-cover__details[data-v-9a9e277a]{display:flex;flex-direction:column;margin-top:16px;width:350px}@media only screen and (max-width: 1200px){.album-cover__details[data-v-9a9e277a]{width:250px}}.album-cover__details__first-line[data-v-9a9e277a]{display:flex}.album-cover__details__second-line[data-v-9a9e277a]{display:flex;color:var(--color-text-lighter)}.album-cover__details__name[data-v-9a9e277a]{flex-grow:1;margin:0;font-weight:normal;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}","",{version:3,sources:["webpack://./src/components/AlbumCover.vue"],names:[],mappings:"AA+FA,8BACC,YAAA,CACA,qBAAA,CACA,YAAA,CACA,kBAAA,CAEA,wEACC,uCAAA,CAGD,qCACC,WAAA,CACA,YAAA,CACA,eAAA,CACA,kBAAA,CAEA,2CAND,qCAOE,WAAA,CACA,YAAA,CAAA,CAGD,kDACC,qCAAA,CAEA,yEACC,UAAA,CACA,WAAA,CAEA,oGACC,yBAAA,CAMJ,uCACC,YAAA,CACA,qBAAA,CACA,eAAA,CACA,WAAA,CAEA,2CAND,uCAOE,WAAA,CAAA,CAGD,mDACC,YAAA,CAGD,oDACC,YAAA,CACA,+BAAA,CAGD,6CACC,WAAA,CACA,QAAA,CACA,kBAAA,CACA,eAAA,CACA,kBAAA,CACA,sBAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.album-cover {\n\tdisplay: flex;\n\tflex-direction: column;\n\tpadding: 16px;\n\tborder-radius: 12px;\n\n\t&:hover, &:focus {\n\t\tbackground: var(--color-background-dark);\n\t}\n\n\t&__image {\n\t\twidth: 350px;\n\t\theight: 350px;\n\t\tobject-fit: none;\n\t\tborder-radius: 12px;\n\n\t\t@media only screen and (max-width: 1200px) {\n\t\t\twidth: 250px;\n\t\t\theight: 250px;\n\t\t}\n\n\t\t&--placeholder {\n\t\t\tbackground: var(--color-primary-light);\n\n\t\t\t::v-deep .material-design-icon {\n\t\t\t\twidth: 100%;\n\t\t\t\theight: 100%;\n\n\t\t\t\t.material-design-icon__svg {\n\t\t\t\t\tfill: var(--color-primary);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t&__details {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tmargin-top: 16px;\n\t\twidth: 350px;\n\n\t\t@media only screen and (max-width: 1200px) {\n\t\t\twidth: 250px;\n\t\t}\n\n\t\t&__first-line {\n\t\t\tdisplay: flex;\n\t\t}\n\n\t\t&__second-line {\n\t\t\tdisplay: flex;\n\t\t\tcolor: var(--color-text-lighter);\n\t\t}\n\n\t\t&__name {\n\t\t\tflex-grow: 1;\n\t\t\tmargin: 0;\n\t\t\tfont-weight: normal;\n\t\t\toverflow: hidden;\n\t\t\twhite-space: nowrap;\n\t\t\ttext-overflow: ellipsis;\n\n\t\t}\n\t}\n\n}\n'],sourceRoot:""}]);const l=o},78504:(n,t,e)=>{e.d(t,{Z:()=>l});var a=e(87537),i=e.n(a),r=e(23645),o=e.n(r)()(i());o.push([n.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:""}]);const l=o},93671:(n,t,e)=>{e.d(t,{Z:()=>l});var a=e(87537),i=e.n(a),r=e(23645),o=e.n(r)()(i());o.push([n.id,".albums[data-v-6146de25]{display:flex;flex-direction:column}.albums__header[data-v-6146de25]{display:flex;min-height:60px;align-items:center;padding:8px 64px 32px 64px;position:-webkit-sticky;position:sticky;top:var(--header-height);width:100%;z-index:3;background:var(--color-main-background)}@media only screen and (max-width: 1200px){.albums__header[data-v-6146de25]{padding:8px 48px 32px 48px}}.albums__header button[data-v-6146de25]{margin-right:32px}.albums__list[data-v-6146de25]{padding:0px 48px 32px 48px;flex-grow:1;display:flex;flex-wrap:wrap;gap:16px;align-items:flex-start}@media only screen and (max-width: 1200px){.albums__list[data-v-6146de25]{padding:0px 12px 32px 12px;justify-content:center}}.albums__empty[data-v-6146de25]{display:flex;flex-direction:column;align-items:center}.albums__empty__button[data-v-6146de25]{margin-top:32px}.empty-content-with-illustration[data-v-6146de25] .empty-content__icon{width:200px;height:200px}.empty-content-with-illustration[data-v-6146de25] .empty-content__icon svg{width:200px;height:200px}","",{version:3,sources:["webpack://./src/views/Albums.vue"],names:[],mappings:"AAoIA,yBACC,YAAA,CACA,qBAAA,CAEA,iCACC,YAAA,CACA,eAAA,CACA,kBAAA,CACA,0BAAA,CACA,uBAAA,CAAA,eAAA,CACA,wBAAA,CACA,UAAA,CACA,SAAA,CACA,uCAAA,CAEA,2CAXD,iCAYE,0BAAA,CAAA,CAGD,wCACC,iBAAA,CAIF,+BACC,0BAAA,CACA,WAAA,CACA,YAAA,CACA,cAAA,CACA,QAAA,CACA,sBAAA,CAEA,2CARD,+BASE,0BAAA,CACA,sBAAA,CAAA,CAKF,gCACC,YAAA,CACA,qBAAA,CACA,kBAAA,CAEA,wCACC,eAAA,CAKH,wEACC,WAAA,CACA,YAAA,CAEA,4EACC,WAAA,CACA,YAAA",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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.albums {\n\tdisplay: flex;\n\tflex-direction: column;\n\n\t&__header {\n\t\tdisplay: flex;\n\t\tmin-height: 60px;\n\t\talign-items: center;\n\t\tpadding: 8px 64px 32px 64px;\n\t\tposition: sticky;\n\t\ttop: var(--header-height);\n\t\twidth: 100%;\n\t\tz-index: 3;\n\t\tbackground: var(--color-main-background);\n\n\t\t@media only screen and (max-width: 1200px) {\n\t\t\tpadding: 8px 48px 32px 48px;\n\t\t}\n\n\t\tbutton {\n\t\t\tmargin-right: 32px;\n\t\t}\n\t}\n\n\t&__list {\n\t\tpadding: 0px 48px 32px 48px;\n\t\tflex-grow: 1;\n\t\tdisplay: flex;\n\t\tflex-wrap: wrap;\n\t\tgap: 16px;\n\t\talign-items: flex-start;\n\n\t\t@media only screen and (max-width: 1200px) {\n\t\t\tpadding: 0px 12px 32px 12px;\n\t\t\tjustify-content: center;\n\t\t}\n\n\t}\n\n\t&__empty {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\talign-items: center;\n\n\t\t&__button {\n\t\t\tmargin-top: 32px;\n\t\t}\n\t}\n}\n\n.empty-content-with-illustration ::v-deep .empty-content__icon {\n\twidth: 200px;\n\theight: 200px;\n\n\tsvg {\n\t\twidth: 200px;\n\t\theight: 200px;\n\t}\n}\n'],sourceRoot:""}]);const l=o},36288:(n,t,e)=>{e.d(t,{Z:()=>i});const a={name:"ImageMultipleIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const i=(0,e(51900).Z)(a,(function(){var n=this,t=n.$createElement,e=n._self._c||t;return e("span",n._b({staticClass:"material-design-icon image-multiple-icon",attrs:{"aria-hidden":!n.title,"aria-label":n.title,role:"img"},on:{click:function(t){return n.$emit("click",t)}}},"span",n.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:n.fillColor,width:n.size,height:n.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M22,16V4A2,2 0 0,0 20,2H8A2,2 0 0,0 6,4V16A2,2 0 0,0 8,18H20A2,2 0 0,0 22,16M11,12L13.03,14.71L16,11L20,16H8M2,6V20A2,2 0 0,0 4,22H18V20H4V6"}},[n.title?e("title",[n._v(n._s(n.title))]):n._e()])])])}),[],!1,null,null,null).exports},75400:(n,t,e)=>{e.d(t,{Z:()=>i});const a={name:"SendIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const i=(0,e(51900).Z)(a,(function(){var n=this,t=n.$createElement,e=n._self._c||t;return e("span",n._b({staticClass:"material-design-icon send-icon",attrs:{"aria-hidden":!n.title,"aria-label":n.title,role:"img"},on:{click:function(t){return n.$emit("click",t)}}},"span",n.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:n.fillColor,width:n.size,height:n.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M2,21L23,12L2,3V10L17,12L2,14V21Z"}},[n.title?e("title",[n._v(n._s(n.title))]):n._e()])])])}),[],!1,null,null,null).exports},8702:(n,t,e)=>{e.d(t,{Z:()=>h});const a={name:"Loader"};var i=e(93379),r=e.n(i),o=e(7795),l=e.n(o),s=e(90569),A=e.n(s),c=e(3565),m=e.n(c),u=e(19216),p=e.n(u),d=e(44589),C=e.n(d),g=e(78504),_={};_.styleTagTransform=C(),_.setAttributes=m(),_.insert=A().bind(null,"head"),_.domAPI=l(),_.insertStyleElement=p();r()(g.Z,_);g.Z&&g.Z.locals&&g.Z.locals;const h=(0,e(51900).Z)(a,(function(){var n=this,t=n.$createElement,e=n._self._c||t;return e("div",{staticClass:"loader"},[n._t("icon",(function(){return[e("span",{staticClass:"icon-loading"})]}))],2)}),[],!1,null,null,null).exports},80632:(n,t,e)=>{e.r(t),e.d(t,{default:()=>D});var a=e(40502),i=e(65322),r=e(33476),o=e(12945),l=e(20629),s=e(36288),A=e(79753);function c(n,t){var e=Object.keys(n);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(n);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(n,t).enumerable}))),e.push.apply(e,a)}return e}function m(n){for(var t=1;t\n *\n * @author Marco Ambrosini \n *\n * @author John Molakvoæ \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 .\n *\n */\n\nimport axios from '@nextcloud/axios'\n/**\n * Create a cancel token\n *\n * @return {CancelTokenSource}\n */\nconst createCancelToken = () => axios.CancelToken.source()\n\n/**\n * Creates a cancelable axios 'request object'.\n *\n * @param {Function} request the axios promise request\n * @return {object}\n */\nconst CancelableRequest = function(request) {\n\t/**\n\t * Generate an axios cancel token\n\t */\n\tconst cancelToken = createCancelToken()\n\n\t/**\n\t * Execute the request\n\t *\n\t * @param {string} url the url to send the request to\n\t * @param {object} [options] optional config for the request\n\t */\n\tconst fetch = async function(url, options) {\n\t\treturn request(\n\t\t\turl,\n\t\t\tObject.assign({ cancelToken: cancelToken.token }, options)\n\t\t)\n\t}\n\n\treturn {\n\t\trequest: fetch,\n\t\tcancel: cancelToken.cancel,\n\t}\n}\n\nexport default CancelableRequest\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".album-cover[data-v-9a9e277a]{display:flex;flex-direction:column;padding:16px;border-radius:12px}.album-cover[data-v-9a9e277a]:hover,.album-cover[data-v-9a9e277a]:focus{background:var(--color-background-dark)}.album-cover__image[data-v-9a9e277a]{width:350px;height:350px;object-fit:none;border-radius:12px}@media only screen and (max-width: 1200px){.album-cover__image[data-v-9a9e277a]{width:250px;height:250px}}.album-cover__image--placeholder[data-v-9a9e277a]{background:var(--color-primary-light)}.album-cover__image--placeholder[data-v-9a9e277a] .material-design-icon{width:100%;height:100%}.album-cover__image--placeholder[data-v-9a9e277a] .material-design-icon .material-design-icon__svg{fill:var(--color-primary)}.album-cover__details[data-v-9a9e277a]{display:flex;flex-direction:column;margin-top:16px;width:350px}@media only screen and (max-width: 1200px){.album-cover__details[data-v-9a9e277a]{width:250px}}.album-cover__details__first-line[data-v-9a9e277a]{display:flex}.album-cover__details__second-line[data-v-9a9e277a]{display:flex;color:var(--color-text-lighter)}.album-cover__details__name[data-v-9a9e277a]{flex-grow:1;margin:0;font-weight:normal;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/AlbumCover.vue\"],\"names\":[],\"mappings\":\"AA+FA,8BACC,YAAA,CACA,qBAAA,CACA,YAAA,CACA,kBAAA,CAEA,wEACC,uCAAA,CAGD,qCACC,WAAA,CACA,YAAA,CACA,eAAA,CACA,kBAAA,CAEA,2CAND,qCAOE,WAAA,CACA,YAAA,CAAA,CAGD,kDACC,qCAAA,CAEA,yEACC,UAAA,CACA,WAAA,CAEA,oGACC,yBAAA,CAMJ,uCACC,YAAA,CACA,qBAAA,CACA,eAAA,CACA,WAAA,CAEA,2CAND,uCAOE,WAAA,CAAA,CAGD,mDACC,YAAA,CAGD,oDACC,YAAA,CACA,+BAAA,CAGD,6CACC,WAAA,CACA,QAAA,CACA,kBAAA,CACA,eAAA,CACA,kBAAA,CACA,sBAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.album-cover {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\tpadding: 16px;\\n\\tborder-radius: 12px;\\n\\n\\t&:hover, &:focus {\\n\\t\\tbackground: var(--color-background-dark);\\n\\t}\\n\\n\\t&__image {\\n\\t\\twidth: 350px;\\n\\t\\theight: 350px;\\n\\t\\tobject-fit: none;\\n\\t\\tborder-radius: 12px;\\n\\n\\t\\t@media only screen and (max-width: 1200px) {\\n\\t\\t\\twidth: 250px;\\n\\t\\t\\theight: 250px;\\n\\t\\t}\\n\\n\\t\\t&--placeholder {\\n\\t\\t\\tbackground: var(--color-primary-light);\\n\\n\\t\\t\\t::v-deep .material-design-icon {\\n\\t\\t\\t\\twidth: 100%;\\n\\t\\t\\t\\theight: 100%;\\n\\n\\t\\t\\t\\t.material-design-icon__svg {\\n\\t\\t\\t\\t\\tfill: var(--color-primary);\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t&__details {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\tmargin-top: 16px;\\n\\t\\twidth: 350px;\\n\\n\\t\\t@media only screen and (max-width: 1200px) {\\n\\t\\t\\twidth: 250px;\\n\\t\\t}\\n\\n\\t\\t&__first-line {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t}\\n\\n\\t\\t&__second-line {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tcolor: var(--color-text-lighter);\\n\\t\\t}\\n\\n\\t\\t&__name {\\n\\t\\t\\tflex-grow: 1;\\n\\t\\t\\tmargin: 0;\\n\\t\\t\\tfont-weight: normal;\\n\\t\\t\\toverflow: hidden;\\n\\t\\t\\twhite-space: nowrap;\\n\\t\\t\\ttext-overflow: ellipsis;\\n\\n\\t\\t}\\n\\t}\\n\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\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_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".albums[data-v-6146de25]{display:flex;flex-direction:column}.albums__header[data-v-6146de25]{display:flex;min-height:60px;align-items:center;padding:8px 64px 32px 64px;position:-webkit-sticky;position:sticky;top:var(--header-height);width:100%;z-index:3;background:var(--color-main-background)}@media only screen and (max-width: 1200px){.albums__header[data-v-6146de25]{padding:8px 48px 32px 48px}}.albums__header button[data-v-6146de25]{margin-right:32px}.albums__list[data-v-6146de25]{padding:0px 48px 32px 48px;flex-grow:1;display:flex;flex-wrap:wrap;gap:16px;align-items:flex-start}@media only screen and (max-width: 1200px){.albums__list[data-v-6146de25]{padding:0px 12px 32px 12px;justify-content:center}}.albums__empty[data-v-6146de25]{display:flex;flex-direction:column;align-items:center}.albums__empty__button[data-v-6146de25]{margin-top:32px}.empty-content-with-illustration[data-v-6146de25] .empty-content__icon{width:200px;height:200px}.empty-content-with-illustration[data-v-6146de25] .empty-content__icon svg{width:200px;height:200px}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/views/Albums.vue\"],\"names\":[],\"mappings\":\"AAoIA,yBACC,YAAA,CACA,qBAAA,CAEA,iCACC,YAAA,CACA,eAAA,CACA,kBAAA,CACA,0BAAA,CACA,uBAAA,CAAA,eAAA,CACA,wBAAA,CACA,UAAA,CACA,SAAA,CACA,uCAAA,CAEA,2CAXD,iCAYE,0BAAA,CAAA,CAGD,wCACC,iBAAA,CAIF,+BACC,0BAAA,CACA,WAAA,CACA,YAAA,CACA,cAAA,CACA,QAAA,CACA,sBAAA,CAEA,2CARD,+BASE,0BAAA,CACA,sBAAA,CAAA,CAKF,gCACC,YAAA,CACA,qBAAA,CACA,kBAAA,CAEA,wCACC,eAAA,CAKH,wEACC,WAAA,CACA,YAAA,CAEA,4EACC,WAAA,CACA,YAAA\",\"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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.albums {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\n\\t&__header {\\n\\t\\tdisplay: flex;\\n\\t\\tmin-height: 60px;\\n\\t\\talign-items: center;\\n\\t\\tpadding: 8px 64px 32px 64px;\\n\\t\\tposition: sticky;\\n\\t\\ttop: var(--header-height);\\n\\t\\twidth: 100%;\\n\\t\\tz-index: 3;\\n\\t\\tbackground: var(--color-main-background);\\n\\n\\t\\t@media only screen and (max-width: 1200px) {\\n\\t\\t\\tpadding: 8px 48px 32px 48px;\\n\\t\\t}\\n\\n\\t\\tbutton {\\n\\t\\t\\tmargin-right: 32px;\\n\\t\\t}\\n\\t}\\n\\n\\t&__list {\\n\\t\\tpadding: 0px 48px 32px 48px;\\n\\t\\tflex-grow: 1;\\n\\t\\tdisplay: flex;\\n\\t\\tflex-wrap: wrap;\\n\\t\\tgap: 16px;\\n\\t\\talign-items: flex-start;\\n\\n\\t\\t@media only screen and (max-width: 1200px) {\\n\\t\\t\\tpadding: 0px 12px 32px 12px;\\n\\t\\t\\tjustify-content: center;\\n\\t\\t}\\n\\n\\t}\\n\\n\\t&__empty {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\talign-items: center;\\n\\n\\t\\t&__button {\\n\\t\\t\\tmargin-top: 32px;\\n\\t\\t}\\n\\t}\\n}\\n\\n.empty-content-with-illustration ::v-deep .empty-content__icon {\\n\\twidth: 200px;\\n\\theight: 200px;\\n\\n\\tsvg {\\n\\t\\twidth: 200px;\\n\\t\\theight: 200px;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ImageMultiple.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ImageMultiple.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ImageMultiple.vue?vue&type=template&id=21a95e74&\"\nimport script from \"./ImageMultiple.vue?vue&type=script&lang=js&\"\nexport * from \"./ImageMultiple.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon image-multiple-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M22,16V4A2,2 0 0,0 20,2H8A2,2 0 0,0 6,4V16A2,2 0 0,0 8,18H20A2,2 0 0,0 22,16M11,12L13.03,14.71L16,11L20,16H8M2,6V20A2,2 0 0,0 4,22H18V20H4V6\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Send.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Send.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Send.vue?vue&type=template&id=46f29e66&\"\nimport script from \"./Send.vue?vue&type=script&lang=js&\"\nexport * from \"./Send.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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('span',_vm._b({staticClass:\"material-design-icon send-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M2,21L23,12L2,3V10L17,12L2,14V21Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\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&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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 \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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 export default content && content.locals ? content.locals : undefined;\n","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 }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.errorFetchingAlbums)?_c('EmptyContent',[_vm._v(\"\\n\\t\"+_vm._s(_vm.t('photos', 'An error occurred'))+\"\\n\")]):_c('div',{staticClass:\"albums\"},[_c('div',{staticClass:\"albums__header\"},[_c('Button',{attrs:{\"type\":\"primary\",\"aria-label\":_vm.t('photos', 'Create a new album.')},on:{\"click\":function($event){_vm.showAlbumCreationForm = true}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Plus')]},proxy:true}])},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('photos', 'New album'))+\"\\n\\t\\t\")]),_vm._v(\" \"),(_vm.loadingAlbums)?_c('Loader'):_vm._e()],1),_vm._v(\" \"),(_vm.noAlbums && !_vm.loadingAlbums)?_c('div',{staticClass:\"albums__empty\"},[_c('EmptyContent',{scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('FolderMultipleImage')]},proxy:true},{key:\"desc\",fn:function(){return [_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('photos', \"There is no album yet!\"))+\"\\n\\t\\t\\t\")]},proxy:true}],null,false,3685789295)}),_vm._v(\" \"),_c('Button',{staticClass:\"albums__empty__button\",attrs:{\"type\":\"primary\",\"aria-label\":_vm.t('photos', 'Create a new album')},on:{\"click\":function($event){_vm.showAlbumCreationForm = true}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Plus')]},proxy:true}],null,false,1489515321)},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('photos', \"Add\"))+\"\\n\\t\\t\")])],1):(!_vm.noAlbums)?_c('div',{staticClass:\"albums__list\"},_vm._l((_vm.albums),function(album){return _c('AlbumCover',{key:album.basename,staticClass:\"album\",attrs:{\"base-name\":album.basename}})}),1):_vm._e(),_vm._v(\" \"),(_vm.showAlbumCreationForm)?_c('Modal',{attrs:{\"title\":_vm.t('photos', 'New album')},on:{\"close\":function($event){_vm.showAlbumCreationForm = false}}},[_c('AlbumForm',{on:{\"done\":_vm.handleAlbumCreated}})],1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AlbumCover.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!./AlbumCover.vue?vue&type=script&lang=js&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./AlbumCover.vue?vue&type=style&index=0&id=9a9e277a&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./AlbumCover.vue?vue&type=style&index=0&id=9a9e277a&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./AlbumCover.vue?vue&type=template&id=9a9e277a&scoped=true&\"\nimport script from \"./AlbumCover.vue?vue&type=script&lang=js&\"\nexport * from \"./AlbumCover.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AlbumCover.vue?vue&type=style&index=0&id=9a9e277a&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 \"9a9e277a\",\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('router-link',{staticClass:\"album-cover\",attrs:{\"to\":(\"/albums/\" + _vm.baseName)}},[(_vm.album.lastPhoto !== 0)?_c('img',{staticClass:\"album-cover__image\",attrs:{\"src\":_vm.coverUrl}}):_c('div',{staticClass:\"album-cover__image album-cover__image--placeholder\"},[_c('ImageMultiple',{attrs:{\"size\":128}})],1),_vm._v(\" \"),_c('div',{staticClass:\"album-cover__details\"},[_c('div',{staticClass:\"album-cover__details__first-line\"},[_c('h2',{staticClass:\"album-cover__details__name\"},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.baseName)+\"\\n\\t\\t\\t\")])]),_vm._v(\" \"),_c('div',{staticClass:\"album-cover__details__second-line\"},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.album.date)+\" ⸱ \"+_vm._s(_vm.n('photos', '%n item', '%n photos and videos', _vm.album.nbItems))+\"\\n\\t\\t\")])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Albums.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!./Albums.vue?vue&type=script&lang=js&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./Albums.vue?vue&type=style&index=0&id=6146de25&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./Albums.vue?vue&type=style&index=0&id=6146de25&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Albums.vue?vue&type=template&id=6146de25&scoped=true&\"\nimport script from \"./Albums.vue?vue&type=script&lang=js&\"\nexport * from \"./Albums.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Albums.vue?vue&type=style&index=0&id=6146de25&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 \"6146de25\",\n null\n \n)\n\nexport default component.exports"],"names":["request","cancelToken","axios","fetch","url","options","Object","assign","token","cancel","___CSS_LOADER_EXPORT___","push","module","id","name","emits","props","title","type","String","fillColor","default","size","Number","_vm","this","_h","$createElement","_c","_self","_b","staticClass","attrs","on","$event","$emit","$attrs","_v","_s","_e","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","_t","baseName","album","lastPhoto","coverUrl","date","n","nbItems","t","showAlbumCreationForm","scopedSlots","_u","key","fn","proxy","noAlbums","loadingAlbums","_l","basename","handleAlbumCreated"],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-src_utils_CancelableRequest_js-src_components_Loader_vue-src_components_VirtualScrolling_vue.js b/js/photos-src_utils_CancelableRequest_js-src_components_Loader_vue-src_components_VirtualScrolling_vue.js deleted file mode 100644 index e96078705..000000000 --- a/js/photos-src_utils_CancelableRequest_js-src_components_Loader_vue-src_components_VirtualScrolling_vue.js +++ /dev/null @@ -1,849 +0,0 @@ -"use strict"; -(self["webpackChunkphotos"] = self["webpackChunkphotos"] || []).push([["src_utils_CancelableRequest_js-src_components_Loader_vue-src_components_VirtualScrolling_vue"],{ - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Loader.vue?vue&type=script&lang=js&": -/*!****************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Loader.vue?vue&type=script&lang=js& ***! - \****************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'Loader' -}); - -/***/ }), - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/VirtualScrolling.vue?vue&type=script&lang=js&": -/*!**************************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/VirtualScrolling.vue?vue&type=script&lang=js& ***! - \**************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var debounce__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! debounce */ "./node_modules/debounce/index.js"); -/* harmony import */ var debounce__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(debounce__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _services_logger_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../services/logger.js */ "./src/services/logger.js"); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - - -/** - * @typedef {object} Row - * @property {number} height - The height of the row. - */ - -/** - * @typedef {Row} VisibleRow - * @property {'none'|'near'|'visible'} visibility - The visibility state of the row - * @property {boolean} shouldRender - Whether the row should be renderer in the DOM - */ - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'VirtualScrolling', - props: { - rows: { - type: Array, - required: true - }, - containerElement: { - type: HTMLElement, - default: null - }, - useWindow: { - type: Boolean, - default: false - }, - renderWindowRatio: { - type: Number, - default: 4 - }, - willBeVisibleWindowRatio: { - type: Number, - default: 4 - }, - visibleWindowRatio: { - type: Number, - // A little bit more than the container's height to include items at its edges. - default: 0 - }, - bottomBufferRatio: { - type: Number, - default: 5 - }, - scrollToKey: { - type: String, - default: '' - } - }, - - data() { - return { - scrollPosition: 0, - containerHeight: 0, - rowsContainerHeight: 0, - - /** @type {ResizeObserver} */ - resizeObserver: null - }; - }, - - computed: { - /** - * @return {VisibleRow[]} - */ - visibleRows() { - _services_logger_js__WEBPACK_IMPORTED_MODULE_1__["default"].debug('[VirtualScrolling] Computing visible rows', this.rows); // Optimisation: get those computed properties once to not go through vue's internal every time we need them. - - const scrollPosition = this.scrollPosition; - const containerHeight = this.containerHeight; // Optimisation: different windows to hint the items how they should render themselves. - // This will be forwarded with the visibility props. - - const shouldRenderedWindow = containerHeight * this.renderWindowRatio; - const willBeVisibleWindow = containerHeight * this.willBeVisibleWindowRatio; - const visibleWindow = containerHeight * this.visibleWindowRatio; - let currentRowTopDistanceFromTop = 0; - let currentRowBottomDistanceFromTop = 0; // Compute whether a row should be included in the DOM (shouldRender) - // And how visible the row is. - - return this.rows.reduce((visibleRows, row) => { - currentRowTopDistanceFromTop = currentRowBottomDistanceFromTop; - currentRowBottomDistanceFromTop += row.height; - - if (currentRowTopDistanceFromTop < scrollPosition - shouldRenderedWindow || scrollPosition + containerHeight + shouldRenderedWindow < currentRowTopDistanceFromTop) { - return visibleRows; - } - - let visibility = 'none'; - - if (scrollPosition - willBeVisibleWindow < currentRowTopDistanceFromTop && currentRowTopDistanceFromTop < scrollPosition + containerHeight + willBeVisibleWindow) { - visibility = 'near'; - - if (scrollPosition - visibleWindow < currentRowTopDistanceFromTop && currentRowTopDistanceFromTop < scrollPosition + containerHeight + visibleWindow) { - visibility = 'visible'; - } - - if (scrollPosition - visibleWindow < currentRowBottomDistanceFromTop && currentRowBottomDistanceFromTop < scrollPosition + containerHeight + visibleWindow) { - visibility = 'visible'; - } - } - - return [...visibleRows, { ...row, - visibility - }]; - }, []); - }, - - /** - * Total height of all the rows + some room for the loader. - * - * @return {number} - */ - rowsHeight() { - const loaderHeight = 200; - return this.rows.map(row => row.height).reduce((totalHeight, rowHeight) => totalHeight + rowHeight, 0) + loaderHeight; - }, - - /** - * @return {number} - */ - paddingTop() { - if (this.visibleRows.length === 0) { - return 0; - } - - const firstVisibleRowIndex = this.rows.findIndex(row => row.items === this.visibleRows[0].items); - return this.rows.map(row => row.height).slice(0, firstVisibleRowIndex).reduce((totalHeight, rowHeight) => totalHeight + rowHeight, 0); - }, - - /** - * padding-top is used to replace not included item in the container. - * - * @return {object} - */ - rowsContainerStyle() { - return { - height: `${this.rowsHeight}px`, - paddingTop: `${this.paddingTop}px` - }; - }, - - /** - * Whether the user is near the bottom. - * If true, then the need-content event will be emitted. - * - * @return {boolean} - */ - isNearBottom() { - const buffer = this.containerHeight * this.bottomBufferRatio; - return this.scrollPosition + this.containerHeight >= this.rowsHeight - buffer; - }, - - /** - * @return {HTMLElement} - */ - container() { - _services_logger_js__WEBPACK_IMPORTED_MODULE_1__["default"].debug('[VirtualScrolling] Computing container'); - - if (this.containerElement !== null) { - return this.containerElement; - } else if (this.useWindow) { - return window; - } else { - return this.$refs.container; - } - } - - }, - watch: { - isNearBottom(value) { - if (value) { - this.$emit('need-content'); - } - }, - - rows() { - // Re-emit need-content when rows is updated and isNearBottom is still true. - // If the height of added rows is under `bottomBufferRatio`, `isNearBottom` will still be true so we need more content. - if (this.isNearBottom) { - this.$emit('need-content'); - } - }, - - scrollToKey(key) { - let currentRowTopDistanceFromTop = 0; - - for (const row of this.rows) { - if (row.key === key) { - this.$refs.container.scrollTo({ - top: currentRowTopDistanceFromTop, - behavior: 'smooth' - }); - return; - } - - currentRowTopDistanceFromTop += row.height; - } - } - - }, - - mounted() { - this.resizeObserver = new ResizeObserver(entries => { - for (const entry of entries) { - const cr = entry.contentRect; - - if (entry.target.classList.contains('vs-container')) { - this.containerHeight = cr.height; - } - - if (entry.target.classList.contains('vs-rows-container')) { - this.rowsContainerHeight = cr.height; - } - } - }); - - if (this.useWindow) { - window.addEventListener('resize', this.updateContainerSize); - this.containerHeight = window.innerHeight; - } else { - this.resizeObserver.observe(this.container); - } - - this.resizeObserver.observe(this.$refs.rowsContainer); - this.container.addEventListener('scroll', this.updateScrollPosition); - }, - - beforeDestroy() { - if (this.useWindow) { - window.removeEventListener('resize', this.updateContainerSize); - } - - this.resizeObserver.disconnect(); - this.container.removeEventListener('scroll', this.updateScrollPosition); - }, - - methods: { - updateScrollPosition: (0,debounce__WEBPACK_IMPORTED_MODULE_0__.debounce)(function () { - if (this.useWindow) { - this.scrollPosition = this.container.scrollY; - } else { - this.scrollPosition = this.container.scrollTop; - } - }, 200), - - updateContainerSize() { - this.containerHeight = window.innerHeight; - } - - } -}); - -/***/ }), - -/***/ "./src/utils/CancelableRequest.js": -/*!****************************************!*\ - !*** ./src/utils/CancelableRequest.js ***! - \****************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _nextcloud_axios__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/axios */ "./node_modules/@nextcloud/axios/dist/index.js"); -/** - * @copyright Copyright (c) 2019 Marco Ambrosini - * - * @author Marco Ambrosini - * - * @author John Molakvoæ - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ - -/** - * Create a cancel token - * - * @return {CancelTokenSource} - */ - -const createCancelToken = () => _nextcloud_axios__WEBPACK_IMPORTED_MODULE_0__["default"].CancelToken.source(); -/** - * Creates a cancelable axios 'request object'. - * - * @param {Function} request the axios promise request - * @return {object} - */ - - -const CancelableRequest = function (request) { - /** - * Generate an axios cancel token - */ - const cancelToken = createCancelToken(); - /** - * Execute the request - * - * @param {string} url the url to send the request to - * @param {object} [options] optional config for the request - */ - - const fetch = async function (url, options) { - return request(url, Object.assign({ - cancelToken: cancelToken.token - }, options)); - }; - - return { - request: fetch, - cancel: cancelToken.cancel - }; -}; - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (CancelableRequest); - -/***/ }), - -/***/ "./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!./src/components/Loader.vue?vue&type=style&index=0&lang=scss&": -/*!****************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/components/Loader.vue?vue&type=style&index=0&lang=scss& ***! - \****************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".loader {\n display: grid;\n height: 60px;\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./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!./src/components/VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss&": -/*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/components/VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss& ***! - \**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".vs-container[data-v-3d9f7b4c] {\n overflow-y: scroll;\n height: 100%;\n}\n.vs-rows-container[data-v-3d9f7b4c] {\n box-sizing: border-box;\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/Loader.vue?vue&type=style&index=0&lang=scss&": -/*!********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/components/Loader.vue?vue&type=style&index=0&lang=scss& ***! - \********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../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& */ "./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!./src/components/Loader.vue?vue&type=style&index=0&lang=scss&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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___WEBPACK_IMPORTED_MODULE_6__["default"] && _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___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss&": -/*!******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/components/VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss& ***! - \******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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_VirtualScrolling_vue_vue_type_style_index_0_id_3d9f7b4c_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../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!./VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss& */ "./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!./src/components/VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_VirtualScrolling_vue_vue_type_style_index_0_id_3d9f7b4c_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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_VirtualScrolling_vue_vue_type_style_index_0_id_3d9f7b4c_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_VirtualScrolling_vue_vue_type_style_index_0_id_3d9f7b4c_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_VirtualScrolling_vue_vue_type_style_index_0_id_3d9f7b4c_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./src/components/Loader.vue": -/*!***********************************!*\ - !*** ./src/components/Loader.vue ***! - \***********************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _Loader_vue_vue_type_template_id_04a0d67a___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Loader.vue?vue&type=template&id=04a0d67a& */ "./src/components/Loader.vue?vue&type=template&id=04a0d67a&"); -/* harmony import */ var _Loader_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Loader.vue?vue&type=script&lang=js& */ "./src/components/Loader.vue?vue&type=script&lang=js&"); -/* harmony import */ var _Loader_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Loader.vue?vue&type=style&index=0&lang=scss& */ "./src/components/Loader.vue?vue&type=style&index=0&lang=scss&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( - _Loader_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _Loader_vue_vue_type_template_id_04a0d67a___WEBPACK_IMPORTED_MODULE_0__.render, - _Loader_vue_vue_type_template_id_04a0d67a___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - null, - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/Loader.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/VirtualScrolling.vue": -/*!*********************************************!*\ - !*** ./src/components/VirtualScrolling.vue ***! - \*********************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _VirtualScrolling_vue_vue_type_template_id_3d9f7b4c_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true& */ "./src/components/VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true&"); -/* harmony import */ var _VirtualScrolling_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./VirtualScrolling.vue?vue&type=script&lang=js& */ "./src/components/VirtualScrolling.vue?vue&type=script&lang=js&"); -/* harmony import */ var _VirtualScrolling_vue_vue_type_style_index_0_id_3d9f7b4c_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss& */ "./src/components/VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( - _VirtualScrolling_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _VirtualScrolling_vue_vue_type_template_id_3d9f7b4c_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render, - _VirtualScrolling_vue_vue_type_template_id_3d9f7b4c_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - "3d9f7b4c", - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/VirtualScrolling.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/Loader.vue?vue&type=script&lang=js&": -/*!************************************************************!*\ - !*** ./src/components/Loader.vue?vue&type=script&lang=js& ***! - \************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Loader_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Loader.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Loader_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/components/VirtualScrolling.vue?vue&type=script&lang=js&": -/*!**********************************************************************!*\ - !*** ./src/components/VirtualScrolling.vue?vue&type=script&lang=js& ***! - \**********************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_VirtualScrolling_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VirtualScrolling.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/VirtualScrolling.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_VirtualScrolling_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/components/Loader.vue?vue&type=style&index=0&lang=scss&": -/*!*********************************************************************!*\ - !*** ./src/components/Loader.vue?vue&type=style&index=0&lang=scss& ***! - \*********************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/style-loader/dist/cjs.js!../../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& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/Loader.vue?vue&type=style&index=0&lang=scss&"); - - -/***/ }), - -/***/ "./src/components/VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss&": -/*!*******************************************************************************************************!*\ - !*** ./src/components/VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss& ***! - \*******************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_VirtualScrolling_vue_vue_type_style_index_0_id_3d9f7b4c_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/style-loader/dist/cjs.js!../../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!./VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss&"); - - -/***/ }), - -/***/ "./src/components/Loader.vue?vue&type=template&id=04a0d67a&": -/*!******************************************************************!*\ - !*** ./src/components/Loader.vue?vue&type=template&id=04a0d67a& ***! - \******************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Loader_vue_vue_type_template_id_04a0d67a___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Loader_vue_vue_type_template_id_04a0d67a___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Loader_vue_vue_type_template_id_04a0d67a___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=template&id=04a0d67a& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Loader.vue?vue&type=template&id=04a0d67a&"); - - -/***/ }), - -/***/ "./src/components/VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true&": -/*!****************************************************************************************!*\ - !*** ./src/components/VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true& ***! - \****************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_VirtualScrolling_vue_vue_type_template_id_3d9f7b4c_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_VirtualScrolling_vue_vue_type_template_id_3d9f7b4c_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_VirtualScrolling_vue_vue_type_template_id_3d9f7b4c_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true&"); - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Loader.vue?vue&type=template&id=04a0d67a&": -/*!*********************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Loader.vue?vue&type=template&id=04a0d67a& ***! - \*********************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -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 - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true&": -/*!*******************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true& ***! - \*******************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return !_vm.useWindow && _vm.containerElement === null - ? _c("div", { ref: "container", staticClass: "vs-container" }, [ - _c( - "div", - { - ref: "rowsContainer", - staticClass: "vs-rows-container", - style: _vm.rowsContainerStyle, - }, - [ - _vm._t("default", null, { renderedRows: _vm.visibleRows }), - _vm._v(" "), - _vm._t("loader"), - ], - 2 - ), - ]) - : _c( - "div", - { - ref: "rowsContainer", - staticClass: "vs-rows-container", - style: _vm.rowsContainerStyle, - }, - [ - _vm._t("default", null, { renderedRows: _vm.visibleRows }), - _vm._v(" "), - _vm._t("loader"), - ], - 2 - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }) - -}]); -//# sourceMappingURL=photos-src_utils_CancelableRequest_js-src_components_Loader_vue-src_components_VirtualScrolling_vue.js.map?v=5778ebfc562391970b1e \ No newline at end of file diff --git a/js/photos-src_utils_CancelableRequest_js-src_components_Loader_vue-src_components_VirtualScrolling_vue.js.map b/js/photos-src_utils_CancelableRequest_js-src_components_Loader_vue-src_components_VirtualScrolling_vue.js.map deleted file mode 100644 index f78a6b6b8..000000000 --- a/js/photos-src_utils_CancelableRequest_js-src_components_Loader_vue-src_components_VirtualScrolling_vue.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-src_utils_CancelableRequest_js-src_components_Loader_vue-src_components_VirtualScrolling_vue.js?v=5778ebfc562391970b1e","mappings":";;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;AChCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;AClSA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;AC/DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;;;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;ACvCA;;;;;;;;;;;;;;;ACAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AGAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sources":["webpack:///photos/src/components/Loader.vue?vue&type=script&lang=js&","webpack:///photos/src/components/VirtualScrolling.vue?vue&type=script&lang=js&","webpack:///photos/src/utils/CancelableRequest.js","webpack:///photos/src/components/Loader.vue?vue&type=style&index=0&lang=scss&","webpack:///photos/src/components/VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss&","webpack://photos/./src/components/Loader.vue?eb1b","webpack://photos/./src/components/VirtualScrolling.vue?38b9","webpack:///photos/src/components/Loader.vue","webpack:///photos/src/components/VirtualScrolling.vue","webpack://photos/./src/components/Loader.vue?5453","webpack://photos/./src/components/VirtualScrolling.vue?de60","webpack://photos/./src/components/VirtualScrolling.vue?7351","webpack:///photos/src/components/VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true&","webpack://photos/./src/components/Loader.vue?7124","webpack://photos/./src/components/VirtualScrolling.vue?74e7"],"sourcesContent":["//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nexport default {\n name: 'Loader'\n};","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport { debounce } from 'debounce';\nimport logger from '../services/logger.js';\n/**\n * @typedef {object} Row\n * @property {number} height - The height of the row.\n */\n\n/**\n * @typedef {Row} VisibleRow\n * @property {'none'|'near'|'visible'} visibility - The visibility state of the row\n * @property {boolean} shouldRender - Whether the row should be renderer in the DOM\n */\n\nexport default {\n name: 'VirtualScrolling',\n props: {\n rows: {\n type: Array,\n required: true\n },\n containerElement: {\n type: HTMLElement,\n default: null\n },\n useWindow: {\n type: Boolean,\n default: false\n },\n renderWindowRatio: {\n type: Number,\n default: 4\n },\n willBeVisibleWindowRatio: {\n type: Number,\n default: 4\n },\n visibleWindowRatio: {\n type: Number,\n // A little bit more than the container's height to include items at its edges.\n default: 0\n },\n bottomBufferRatio: {\n type: Number,\n default: 5\n },\n scrollToKey: {\n type: String,\n default: ''\n }\n },\n\n data() {\n return {\n scrollPosition: 0,\n containerHeight: 0,\n rowsContainerHeight: 0,\n\n /** @type {ResizeObserver} */\n resizeObserver: null\n };\n },\n\n computed: {\n /**\n * @return {VisibleRow[]}\n */\n visibleRows() {\n logger.debug('[VirtualScrolling] Computing visible rows', this.rows); // Optimisation: get those computed properties once to not go through vue's internal every time we need them.\n\n const scrollPosition = this.scrollPosition;\n const containerHeight = this.containerHeight; // Optimisation: different windows to hint the items how they should render themselves.\n // This will be forwarded with the visibility props.\n\n const shouldRenderedWindow = containerHeight * this.renderWindowRatio;\n const willBeVisibleWindow = containerHeight * this.willBeVisibleWindowRatio;\n const visibleWindow = containerHeight * this.visibleWindowRatio;\n let currentRowTopDistanceFromTop = 0;\n let currentRowBottomDistanceFromTop = 0; // Compute whether a row should be included in the DOM (shouldRender)\n // And how visible the row is.\n\n return this.rows.reduce((visibleRows, row) => {\n currentRowTopDistanceFromTop = currentRowBottomDistanceFromTop;\n currentRowBottomDistanceFromTop += row.height;\n\n if (currentRowTopDistanceFromTop < scrollPosition - shouldRenderedWindow || scrollPosition + containerHeight + shouldRenderedWindow < currentRowTopDistanceFromTop) {\n return visibleRows;\n }\n\n let visibility = 'none';\n\n if (scrollPosition - willBeVisibleWindow < currentRowTopDistanceFromTop && currentRowTopDistanceFromTop < scrollPosition + containerHeight + willBeVisibleWindow) {\n visibility = 'near';\n\n if (scrollPosition - visibleWindow < currentRowTopDistanceFromTop && currentRowTopDistanceFromTop < scrollPosition + containerHeight + visibleWindow) {\n visibility = 'visible';\n }\n\n if (scrollPosition - visibleWindow < currentRowBottomDistanceFromTop && currentRowBottomDistanceFromTop < scrollPosition + containerHeight + visibleWindow) {\n visibility = 'visible';\n }\n }\n\n return [...visibleRows, { ...row,\n visibility\n }];\n }, []);\n },\n\n /**\n * Total height of all the rows + some room for the loader.\n *\n * @return {number}\n */\n rowsHeight() {\n const loaderHeight = 200;\n return this.rows.map(row => row.height).reduce((totalHeight, rowHeight) => totalHeight + rowHeight, 0) + loaderHeight;\n },\n\n /**\n * @return {number}\n */\n paddingTop() {\n if (this.visibleRows.length === 0) {\n return 0;\n }\n\n const firstVisibleRowIndex = this.rows.findIndex(row => row.items === this.visibleRows[0].items);\n return this.rows.map(row => row.height).slice(0, firstVisibleRowIndex).reduce((totalHeight, rowHeight) => totalHeight + rowHeight, 0);\n },\n\n /**\n * padding-top is used to replace not included item in the container.\n *\n * @return {object}\n */\n rowsContainerStyle() {\n return {\n height: `${this.rowsHeight}px`,\n paddingTop: `${this.paddingTop}px`\n };\n },\n\n /**\n * Whether the user is near the bottom.\n * If true, then the need-content event will be emitted.\n *\n * @return {boolean}\n */\n isNearBottom() {\n const buffer = this.containerHeight * this.bottomBufferRatio;\n return this.scrollPosition + this.containerHeight >= this.rowsHeight - buffer;\n },\n\n /**\n * @return {HTMLElement}\n */\n container() {\n logger.debug('[VirtualScrolling] Computing container');\n\n if (this.containerElement !== null) {\n return this.containerElement;\n } else if (this.useWindow) {\n return window;\n } else {\n return this.$refs.container;\n }\n }\n\n },\n watch: {\n isNearBottom(value) {\n if (value) {\n this.$emit('need-content');\n }\n },\n\n rows() {\n // Re-emit need-content when rows is updated and isNearBottom is still true.\n // If the height of added rows is under `bottomBufferRatio`, `isNearBottom` will still be true so we need more content.\n if (this.isNearBottom) {\n this.$emit('need-content');\n }\n },\n\n scrollToKey(key) {\n let currentRowTopDistanceFromTop = 0;\n\n for (const row of this.rows) {\n if (row.key === key) {\n this.$refs.container.scrollTo({\n top: currentRowTopDistanceFromTop,\n behavior: 'smooth'\n });\n return;\n }\n\n currentRowTopDistanceFromTop += row.height;\n }\n }\n\n },\n\n mounted() {\n this.resizeObserver = new ResizeObserver(entries => {\n for (const entry of entries) {\n const cr = entry.contentRect;\n\n if (entry.target.classList.contains('vs-container')) {\n this.containerHeight = cr.height;\n }\n\n if (entry.target.classList.contains('vs-rows-container')) {\n this.rowsContainerHeight = cr.height;\n }\n }\n });\n\n if (this.useWindow) {\n window.addEventListener('resize', this.updateContainerSize);\n this.containerHeight = window.innerHeight;\n } else {\n this.resizeObserver.observe(this.container);\n }\n\n this.resizeObserver.observe(this.$refs.rowsContainer);\n this.container.addEventListener('scroll', this.updateScrollPosition);\n },\n\n beforeDestroy() {\n if (this.useWindow) {\n window.removeEventListener('resize', this.updateContainerSize);\n }\n\n this.resizeObserver.disconnect();\n this.container.removeEventListener('scroll', this.updateScrollPosition);\n },\n\n methods: {\n updateScrollPosition: debounce(function () {\n if (this.useWindow) {\n this.scrollPosition = this.container.scrollY;\n } else {\n this.scrollPosition = this.container.scrollTop;\n }\n }, 200),\n\n updateContainerSize() {\n this.containerHeight = window.innerHeight;\n }\n\n }\n};","/**\n * @copyright Copyright (c) 2019 Marco Ambrosini \n *\n * @author Marco Ambrosini \n *\n * @author John Molakvoæ \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 .\n *\n */\nimport axios from '@nextcloud/axios';\n/**\n * Create a cancel token\n *\n * @return {CancelTokenSource}\n */\n\nconst createCancelToken = () => axios.CancelToken.source();\n/**\n * Creates a cancelable axios 'request object'.\n *\n * @param {Function} request the axios promise request\n * @return {object}\n */\n\n\nconst CancelableRequest = function (request) {\n /**\n * Generate an axios cancel token\n */\n const cancelToken = createCancelToken();\n /**\n * Execute the request\n *\n * @param {string} url the url to send the request to\n * @param {object} [options] optional config for the request\n */\n\n const fetch = async function (url, options) {\n return request(url, Object.assign({\n cancelToken: cancelToken.token\n }, options));\n };\n\n return {\n request: fetch,\n cancel: cancelToken.cancel\n };\n};\n\nexport default CancelableRequest;","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".loader {\\n display: grid;\\n height: 60px;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".vs-container[data-v-3d9f7b4c] {\\n overflow-y: scroll;\\n height: 100%;\\n}\\n.vs-rows-container[data-v-3d9f7b4c] {\\n box-sizing: border-box;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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 \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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 export default content && content.locals ? content.locals : undefined;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Loader.vue?vue&type=template&id=04a0d67a&\"\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\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/louis/workspace/nextcloud/apps/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('04a0d67a')) {\n api.createRecord('04a0d67a', component.options)\n } else {\n api.reload('04a0d67a', component.options)\n }\n module.hot.accept(\"./Loader.vue?vue&type=template&id=04a0d67a&\", function () {\n api.rerender('04a0d67a', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/Loader.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true&\"\nimport script from \"./VirtualScrolling.vue?vue&type=script&lang=js&\"\nexport * from \"./VirtualScrolling.vue?vue&type=script&lang=js&\"\nimport style0 from \"./VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&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 \"3d9f7b4c\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/louis/workspace/nextcloud/apps/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('3d9f7b4c')) {\n api.createRecord('3d9f7b4c', component.options)\n } else {\n api.reload('3d9f7b4c', component.options)\n }\n module.hot.accept(\"./VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true&\", function () {\n api.rerender('3d9f7b4c', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/VirtualScrolling.vue\"\nexport default component.exports","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 mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VirtualScrolling.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!./VirtualScrolling.vue?vue&type=script&lang=js&\"","export * from \"-!../../node_modules/style-loader/dist/cjs.js!../../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!./VirtualScrolling.vue?vue&type=style&index=0&id=3d9f7b4c&scoped=true&lang=scss&\"","export * from \"-!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VirtualScrolling.vue?vue&type=template&id=3d9f7b4c&scoped=true&\"","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { staticClass: \"loader\" },\n [\n _vm._t(\"icon\", function () {\n return [_c(\"span\", { staticClass: \"icon-loading\" })]\n }),\n ],\n 2\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return !_vm.useWindow && _vm.containerElement === null\n ? _c(\"div\", { ref: \"container\", staticClass: \"vs-container\" }, [\n _c(\n \"div\",\n {\n ref: \"rowsContainer\",\n staticClass: \"vs-rows-container\",\n style: _vm.rowsContainerStyle,\n },\n [\n _vm._t(\"default\", null, { renderedRows: _vm.visibleRows }),\n _vm._v(\" \"),\n _vm._t(\"loader\"),\n ],\n 2\n ),\n ])\n : _c(\n \"div\",\n {\n ref: \"rowsContainer\",\n staticClass: \"vs-rows-container\",\n style: _vm.rowsContainerStyle,\n },\n [\n _vm._t(\"default\", null, { renderedRows: _vm.visibleRows }),\n _vm._v(\" \"),\n _vm._t(\"loader\"),\n ],\n 2\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-src_utils_CancelableRequest_js-src_views_Albums_vue.js b/js/photos-src_utils_CancelableRequest_js-src_views_Albums_vue.js deleted file mode 100644 index 7b8b2eb71..000000000 --- a/js/photos-src_utils_CancelableRequest_js-src_views_Albums_vue.js +++ /dev/null @@ -1,1159 +0,0 @@ -"use strict"; -(self["webpackChunkphotos"] = self["webpackChunkphotos"] || []).push([["src_utils_CancelableRequest_js-src_views_Albums_vue"],{ - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/AlbumCover.vue?vue&type=script&lang=js&": -/*!********************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/AlbumCover.vue?vue&type=script&lang=js& ***! - \********************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! vuex */ "./node_modules/vuex/dist/vuex.esm.js"); -/* harmony import */ var vue_material_design_icons_ImageMultiple__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue-material-design-icons/ImageMultiple */ "./node_modules/vue-material-design-icons/ImageMultiple.vue"); -/* harmony import */ var _nextcloud_router__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/router */ "./node_modules/@nextcloud/router/dist/index.js"); -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } - -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - // import ShareVariant from 'vue-material-design-icons/ShareVariant' -// import AccountMultiple from 'vue-material-design-icons/AccountMultiple' - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'AlbumCover', - components: { - // ShareVariant, - // AccountMultiple, - ImageMultiple: vue_material_design_icons_ImageMultiple__WEBPACK_IMPORTED_MODULE_0__["default"] - }, - props: { - baseName: { - type: String, - required: true - } - }, - computed: _objectSpread(_objectSpread({}, (0,vuex__WEBPACK_IMPORTED_MODULE_2__.mapGetters)(['files', 'albums'])), {}, { - /** - * @return {Album} - */ - album: function album() { - return this.albums[this.baseName]; - }, - - /** - * @return {string} - */ - coverUrl: function coverUrl() { - return (0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_1__.generateUrl)("/core/preview?fileId=".concat(this.album.lastPhoto, "&x=", 512, "&y=", 512, "&forceIcon=0&a=1")); - } - }) -}); - -/***/ }), - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Loader.vue?vue&type=script&lang=js&": -/*!****************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Loader.vue?vue&type=script&lang=js& ***! - \****************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'Loader' -}); - -/***/ }), - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/Albums.vue?vue&type=script&lang=js&": -/*!***********************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/Albums.vue?vue&type=script&lang=js& ***! - \***********************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var vue_material_design_icons_Plus__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue-material-design-icons/Plus */ "./node_modules/vue-material-design-icons/Plus.vue"); -/* harmony import */ var vue_material_design_icons_FolderMultipleImage__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! vue-material-design-icons/FolderMultipleImage */ "./node_modules/vue-material-design-icons/FolderMultipleImage.vue"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @nextcloud/vue */ "./node_modules/@nextcloud/vue/dist/ncvuecomponents.js"); -/* harmony import */ var _nextcloud_vue__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _mixins_FetchAlbumsMixin_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../mixins/FetchAlbumsMixin.js */ "./src/mixins/FetchAlbumsMixin.js"); -/* harmony import */ var _components_AlbumCover_vue__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../components/AlbumCover.vue */ "./src/components/AlbumCover.vue"); -/* harmony import */ var _components_AlbumForm_vue__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../components/AlbumForm.vue */ "./src/components/AlbumForm.vue"); -/* harmony import */ var _components_Loader_vue__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../components/Loader.vue */ "./src/components/Loader.vue"); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - - - - - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: 'Albums', - components: { - AlbumCover: _components_AlbumCover_vue__WEBPACK_IMPORTED_MODULE_4__["default"], - EmptyContent: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_2__.EmptyContent, - AlbumForm: _components_AlbumForm_vue__WEBPACK_IMPORTED_MODULE_5__["default"], - Loader: _components_Loader_vue__WEBPACK_IMPORTED_MODULE_6__["default"], - Modal: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_2__.Modal, - Button: _nextcloud_vue__WEBPACK_IMPORTED_MODULE_2__.Button, - Plus: vue_material_design_icons_Plus__WEBPACK_IMPORTED_MODULE_0__["default"], - FolderMultipleImage: vue_material_design_icons_FolderMultipleImage__WEBPACK_IMPORTED_MODULE_1__["default"] - }, - mixins: [_mixins_FetchAlbumsMixin_js__WEBPACK_IMPORTED_MODULE_3__["default"]], - data: function data() { - return { - showAlbumCreationForm: false - }; - }, - computed: { - /** - * @return {boolean} Whether the list of album is empty or not. - */ - noAlbums: function noAlbums() { - return Object.keys(this.albums).length === 0; - } - }, - methods: { - handleAlbumCreated: function handleAlbumCreated(_ref) { - var album = _ref.album; - this.showAlbumCreationForm = false; - this.$router.push("/albums/".concat(album.basename)); - } - } -}); - -/***/ }), - -/***/ "./src/utils/CancelableRequest.js": -/*!****************************************!*\ - !*** ./src/utils/CancelableRequest.js ***! - \****************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _nextcloud_axios__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/axios */ "./node_modules/@nextcloud/axios/dist/index.esm.js"); -function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } - -function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } - -/** - * @copyright Copyright (c) 2019 Marco Ambrosini - * - * @author Marco Ambrosini - * - * @author John Molakvoæ - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ - -/** - * Create a cancel token - * - * @return {CancelTokenSource} - */ - -var createCancelToken = function createCancelToken() { - return _nextcloud_axios__WEBPACK_IMPORTED_MODULE_0__["default"].CancelToken.source(); -}; -/** - * Creates a cancelable axios 'request object'. - * - * @param {Function} request the axios promise request - * @return {object} - */ - - -var CancelableRequest = function CancelableRequest(request) { - /** - * Generate an axios cancel token - */ - var cancelToken = createCancelToken(); - /** - * Execute the request - * - * @param {string} url the url to send the request to - * @param {object} [options] optional config for the request - */ - - var fetch = /*#__PURE__*/function () { - var _ref = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(url, options) { - return regeneratorRuntime.wrap(function _callee$(_context) { - while (1) { - switch (_context.prev = _context.next) { - case 0: - return _context.abrupt("return", request(url, Object.assign({ - cancelToken: cancelToken.token - }, options))); - - case 1: - case "end": - return _context.stop(); - } - } - }, _callee); - })); - - return function fetch(_x, _x2) { - return _ref.apply(this, arguments); - }; - }(); - - return { - request: fetch, - cancel: cancelToken.cancel - }; -}; - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (CancelableRequest); - -/***/ }), - -/***/ "./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!./src/components/AlbumCover.vue?vue&type=style&index=0&id=4e8bae90&lang=scss&scoped=true&": -/*!********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/components/AlbumCover.vue?vue&type=style&index=0&id=4e8bae90&lang=scss&scoped=true& ***! - \********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".album-cover[data-v-4e8bae90] {\n display: flex;\n flex-direction: column;\n padding: 16px;\n border-radius: 12px;\n}\n.album-cover[data-v-4e8bae90]:hover, .album-cover[data-v-4e8bae90]:focus {\n background: var(--color-background-dark);\n}\n.album-cover__image[data-v-4e8bae90] {\n width: 350px;\n height: 350px;\n object-fit: none;\n border-radius: 12px;\n}\n@media only screen and (max-width: 1200px) {\n.album-cover__image[data-v-4e8bae90] {\n width: 250px;\n height: 250px;\n}\n}\n.album-cover__image--placeholder[data-v-4e8bae90] {\n background: var(--color-primary-light);\n}\n.album-cover__image--placeholder[data-v-4e8bae90] .material-design-icon {\n width: 100%;\n height: 100%;\n}\n.album-cover__image--placeholder[data-v-4e8bae90] .material-design-icon .material-design-icon__svg {\n fill: var(--color-primary);\n}\n.album-cover__details[data-v-4e8bae90] {\n display: flex;\n flex-direction: column;\n margin-top: 16px;\n width: 350px;\n}\n@media only screen and (max-width: 1200px) {\n.album-cover__details[data-v-4e8bae90] {\n width: 250px;\n}\n}\n.album-cover__details__first-line[data-v-4e8bae90] {\n display: flex;\n}\n.album-cover__details__second-line[data-v-4e8bae90] {\n display: flex;\n color: var(--color-text-lighter);\n}\n.album-cover__details__name[data-v-4e8bae90] {\n flex-grow: 1;\n margin: 0;\n font-weight: normal;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./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!./src/components/Loader.vue?vue&type=style&index=0&lang=scss&": -/*!****************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/components/Loader.vue?vue&type=style&index=0&lang=scss& ***! - \****************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".loader {\n display: grid;\n height: 60px;\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./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!./src/views/Albums.vue?vue&type=style&index=0&id=28345ec4&lang=scss&scoped=true&": -/*!***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./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!./src/views/Albums.vue?vue&type=style&index=0&id=28345ec4&lang=scss&scoped=true& ***! - \***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); -/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); -// Imports - - -var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); -// Module -___CSS_LOADER_EXPORT___.push([module.id, ".albums[data-v-28345ec4] {\n display: flex;\n flex-direction: column;\n}\n.albums__header[data-v-28345ec4] {\n display: flex;\n min-height: 60px;\n align-items: center;\n padding: 8px 64px 32px 64px;\n position: -webkit-sticky;\n position: sticky;\n top: var(--header-height);\n width: 100%;\n z-index: 3;\n background: var(--color-main-background);\n}\n@media only screen and (max-width: 1200px) {\n.albums__header[data-v-28345ec4] {\n padding: 8px 48px 32px 48px;\n}\n}\n.albums__header button[data-v-28345ec4] {\n margin-right: 32px;\n}\n.albums__list[data-v-28345ec4] {\n padding: 0px 48px 32px 48px;\n flex-grow: 1;\n display: flex;\n flex-wrap: wrap;\n gap: 16px;\n align-items: flex-start;\n}\n@media only screen and (max-width: 1200px) {\n.albums__list[data-v-28345ec4] {\n padding: 0px 12px 32px 12px;\n justify-content: center;\n}\n}\n.albums__empty[data-v-28345ec4] {\n display: flex;\n flex-direction: column;\n align-items: center;\n}\n.albums__empty__button[data-v-28345ec4] {\n margin-top: 32px;\n}\n.empty-content-with-illustration[data-v-28345ec4] .empty-content__icon {\n width: 200px;\n height: 200px;\n}\n.empty-content-with-illustration[data-v-28345ec4] .empty-content__icon svg {\n width: 200px;\n height: 200px;\n}", ""]); -// Exports -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/AlbumCover.vue?vue&type=style&index=0&id=4e8bae90&lang=scss&scoped=true&": -/*!************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/components/AlbumCover.vue?vue&type=style&index=0&id=4e8bae90&lang=scss&scoped=true& ***! - \************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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_AlbumCover_vue_vue_type_style_index_0_id_4e8bae90_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../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!./AlbumCover.vue?vue&type=style&index=0&id=4e8bae90&lang=scss&scoped=true& */ "./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!./src/components/AlbumCover.vue?vue&type=style&index=0&id=4e8bae90&lang=scss&scoped=true&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_AlbumCover_vue_vue_type_style_index_0_id_4e8bae90_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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_AlbumCover_vue_vue_type_style_index_0_id_4e8bae90_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_AlbumCover_vue_vue_type_style_index_0_id_4e8bae90_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_AlbumCover_vue_vue_type_style_index_0_id_4e8bae90_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/Loader.vue?vue&type=style&index=0&lang=scss&": -/*!********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/components/Loader.vue?vue&type=style&index=0&lang=scss& ***! - \********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../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& */ "./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!./src/components/Loader.vue?vue&type=style&index=0&lang=scss&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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___WEBPACK_IMPORTED_MODULE_6__["default"] && _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___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./node_modules/style-loader/dist/cjs.js!./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!./src/views/Albums.vue?vue&type=style&index=0&id=28345ec4&lang=scss&scoped=true&": -/*!***************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/style-loader/dist/cjs.js!./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!./src/views/Albums.vue?vue&type=style&index=0&id=28345ec4&lang=scss&scoped=true& ***! - \***************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); -/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _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_Albums_vue_vue_type_style_index_0_id_28345ec4_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../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!./Albums.vue?vue&type=style&index=0&id=28345ec4&lang=scss&scoped=true& */ "./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!./src/views/Albums.vue?vue&type=style&index=0&id=28345ec4&lang=scss&scoped=true&"); - - - - - - - - - - - -var options = {}; - -options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); -options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); - - options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); - -options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); -options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); - -var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_Albums_vue_vue_type_style_index_0_id_28345ec4_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"], options); - - - - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_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_Albums_vue_vue_type_style_index_0_id_28345ec4_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_Albums_vue_vue_type_style_index_0_id_28345ec4_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_Albums_vue_vue_type_style_index_0_id_28345ec4_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); - - -/***/ }), - -/***/ "./src/components/AlbumCover.vue": -/*!***************************************!*\ - !*** ./src/components/AlbumCover.vue ***! - \***************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _AlbumCover_vue_vue_type_template_id_4e8bae90_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./AlbumCover.vue?vue&type=template&id=4e8bae90&scoped=true& */ "./src/components/AlbumCover.vue?vue&type=template&id=4e8bae90&scoped=true&"); -/* harmony import */ var _AlbumCover_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./AlbumCover.vue?vue&type=script&lang=js& */ "./src/components/AlbumCover.vue?vue&type=script&lang=js&"); -/* harmony import */ var _AlbumCover_vue_vue_type_style_index_0_id_4e8bae90_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./AlbumCover.vue?vue&type=style&index=0&id=4e8bae90&lang=scss&scoped=true& */ "./src/components/AlbumCover.vue?vue&type=style&index=0&id=4e8bae90&lang=scss&scoped=true&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( - _AlbumCover_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _AlbumCover_vue_vue_type_template_id_4e8bae90_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render, - _AlbumCover_vue_vue_type_template_id_4e8bae90_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - "4e8bae90", - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/AlbumCover.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/Loader.vue": -/*!***********************************!*\ - !*** ./src/components/Loader.vue ***! - \***********************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _Loader_vue_vue_type_template_id_04a0d67a___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Loader.vue?vue&type=template&id=04a0d67a& */ "./src/components/Loader.vue?vue&type=template&id=04a0d67a&"); -/* harmony import */ var _Loader_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Loader.vue?vue&type=script&lang=js& */ "./src/components/Loader.vue?vue&type=script&lang=js&"); -/* harmony import */ var _Loader_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Loader.vue?vue&type=style&index=0&lang=scss& */ "./src/components/Loader.vue?vue&type=style&index=0&lang=scss&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( - _Loader_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _Loader_vue_vue_type_template_id_04a0d67a___WEBPACK_IMPORTED_MODULE_0__.render, - _Loader_vue_vue_type_template_id_04a0d67a___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - null, - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/components/Loader.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/views/Albums.vue": -/*!******************************!*\ - !*** ./src/views/Albums.vue ***! - \******************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _Albums_vue_vue_type_template_id_28345ec4_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Albums.vue?vue&type=template&id=28345ec4&scoped=true& */ "./src/views/Albums.vue?vue&type=template&id=28345ec4&scoped=true&"); -/* harmony import */ var _Albums_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Albums.vue?vue&type=script&lang=js& */ "./src/views/Albums.vue?vue&type=script&lang=js&"); -/* harmony import */ var _Albums_vue_vue_type_style_index_0_id_28345ec4_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Albums.vue?vue&type=style&index=0&id=28345ec4&lang=scss&scoped=true& */ "./src/views/Albums.vue?vue&type=style&index=0&id=28345ec4&lang=scss&scoped=true&"); -/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - -; - - -/* normalize component */ - -var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( - _Albums_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _Albums_vue_vue_type_template_id_28345ec4_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render, - _Albums_vue_vue_type_template_id_28345ec4_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - "28345ec4", - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "src/views/Albums.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./src/components/AlbumCover.vue?vue&type=script&lang=js&": -/*!****************************************************************!*\ - !*** ./src/components/AlbumCover.vue?vue&type=script&lang=js& ***! - \****************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_AlbumCover_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AlbumCover.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/AlbumCover.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_AlbumCover_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/components/Loader.vue?vue&type=script&lang=js&": -/*!************************************************************!*\ - !*** ./src/components/Loader.vue?vue&type=script&lang=js& ***! - \************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Loader_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Loader.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Loader_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/views/Albums.vue?vue&type=script&lang=js&": -/*!*******************************************************!*\ - !*** ./src/views/Albums.vue?vue&type=script&lang=js& ***! - \*******************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Albums_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Albums.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/Albums.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Albums_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./src/components/AlbumCover.vue?vue&type=style&index=0&id=4e8bae90&lang=scss&scoped=true&": -/*!*************************************************************************************************!*\ - !*** ./src/components/AlbumCover.vue?vue&type=style&index=0&id=4e8bae90&lang=scss&scoped=true& ***! - \*************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_AlbumCover_vue_vue_type_style_index_0_id_4e8bae90_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/style-loader/dist/cjs.js!../../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!./AlbumCover.vue?vue&type=style&index=0&id=4e8bae90&lang=scss&scoped=true& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/AlbumCover.vue?vue&type=style&index=0&id=4e8bae90&lang=scss&scoped=true&"); - - -/***/ }), - -/***/ "./src/components/Loader.vue?vue&type=style&index=0&lang=scss&": -/*!*********************************************************************!*\ - !*** ./src/components/Loader.vue?vue&type=style&index=0&lang=scss& ***! - \*********************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/style-loader/dist/cjs.js!../../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& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/components/Loader.vue?vue&type=style&index=0&lang=scss&"); - - -/***/ }), - -/***/ "./src/views/Albums.vue?vue&type=style&index=0&id=28345ec4&lang=scss&scoped=true&": -/*!****************************************************************************************!*\ - !*** ./src/views/Albums.vue?vue&type=style&index=0&id=28345ec4&lang=scss&scoped=true& ***! - \****************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_Albums_vue_vue_type_style_index_0_id_28345ec4_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/style-loader/dist/cjs.js!../../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!./Albums.vue?vue&type=style&index=0&id=28345ec4&lang=scss&scoped=true& */ "./node_modules/style-loader/dist/cjs.js!./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!./src/views/Albums.vue?vue&type=style&index=0&id=28345ec4&lang=scss&scoped=true&"); - - -/***/ }), - -/***/ "./src/components/AlbumCover.vue?vue&type=template&id=4e8bae90&scoped=true&": -/*!**********************************************************************************!*\ - !*** ./src/components/AlbumCover.vue?vue&type=template&id=4e8bae90&scoped=true& ***! - \**********************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_AlbumCover_vue_vue_type_template_id_4e8bae90_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_AlbumCover_vue_vue_type_template_id_4e8bae90_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_AlbumCover_vue_vue_type_template_id_4e8bae90_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AlbumCover.vue?vue&type=template&id=4e8bae90&scoped=true& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/AlbumCover.vue?vue&type=template&id=4e8bae90&scoped=true&"); - - -/***/ }), - -/***/ "./src/components/Loader.vue?vue&type=template&id=04a0d67a&": -/*!******************************************************************!*\ - !*** ./src/components/Loader.vue?vue&type=template&id=04a0d67a& ***! - \******************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Loader_vue_vue_type_template_id_04a0d67a___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Loader_vue_vue_type_template_id_04a0d67a___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Loader_vue_vue_type_template_id_04a0d67a___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=template&id=04a0d67a& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Loader.vue?vue&type=template&id=04a0d67a&"); - - -/***/ }), - -/***/ "./src/views/Albums.vue?vue&type=template&id=28345ec4&scoped=true&": -/*!*************************************************************************!*\ - !*** ./src/views/Albums.vue?vue&type=template&id=28345ec4&scoped=true& ***! - \*************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Albums_vue_vue_type_template_id_28345ec4_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Albums_vue_vue_type_template_id_28345ec4_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Albums_vue_vue_type_template_id_28345ec4_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Albums.vue?vue&type=template&id=28345ec4&scoped=true& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/Albums.vue?vue&type=template&id=28345ec4&scoped=true&"); - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/AlbumCover.vue?vue&type=template&id=4e8bae90&scoped=true&": -/*!*************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/AlbumCover.vue?vue&type=template&id=4e8bae90&scoped=true& ***! - \*************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c( - "router-link", - { staticClass: "album-cover", attrs: { to: "/albums/" + _vm.baseName } }, - [ - _vm.album.lastPhoto !== 0 - ? _c("img", { - staticClass: "album-cover__image", - attrs: { src: _vm.coverUrl }, - }) - : _c( - "div", - { - staticClass: "album-cover__image album-cover__image--placeholder", - }, - [_c("ImageMultiple", { attrs: { size: 128 } })], - 1 - ), - _vm._v(" "), - _c("div", { staticClass: "album-cover__details" }, [ - _c("div", { staticClass: "album-cover__details__first-line" }, [ - _c("h2", { staticClass: "album-cover__details__name" }, [ - _vm._v("\n\t\t\t\t" + _vm._s(_vm.baseName) + "\n\t\t\t"), - ]), - ]), - _vm._v(" "), - _c("div", { staticClass: "album-cover__details__second-line" }, [ - _vm._v( - "\n\t\t\t" + - _vm._s(_vm.album.date) + - " ⸱ " + - _vm._s( - _vm.n( - "photos", - "%n item", - "%n photos and videos", - _vm.album.nbItems - ) - ) + - "\n\t\t" - ), - ]), - ]), - ] - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Loader.vue?vue&type=template&id=04a0d67a&": -/*!*********************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/Loader.vue?vue&type=template&id=04a0d67a& ***! - \*********************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -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 - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/Albums.vue?vue&type=template&id=28345ec4&scoped=true&": -/*!****************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/views/Albums.vue?vue&type=template&id=28345ec4&scoped=true& ***! - \****************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _vm.errorFetchingAlbums - ? _c("EmptyContent", [ - _vm._v("\n\t" + _vm._s(_vm.t("photos", "An error occurred")) + "\n"), - ]) - : _c( - "div", - { staticClass: "albums" }, - [ - _c( - "div", - { staticClass: "albums__header" }, - [ - _c( - "Button", - { - attrs: { - type: "primary", - "aria-label": _vm.t("photos", "Create a new album."), - }, - on: { - click: function ($event) { - _vm.showAlbumCreationForm = true - }, - }, - scopedSlots: _vm._u([ - { - key: "icon", - fn: function () { - return [_c("Plus")] - }, - proxy: true, - }, - ]), - }, - [ - _vm._v( - "\n\t\t\t" + _vm._s(_vm.t("photos", "New album")) + "\n\t\t" - ), - ] - ), - _vm._v(" "), - _vm.loadingAlbums ? _c("Loader") : _vm._e(), - ], - 1 - ), - _vm._v(" "), - _vm.noAlbums && !_vm.loadingAlbums - ? _c( - "div", - { staticClass: "albums__empty" }, - [ - _c("EmptyContent", { - scopedSlots: _vm._u( - [ - { - key: "icon", - fn: function () { - return [_c("FolderMultipleImage")] - }, - proxy: true, - }, - { - key: "desc", - fn: function () { - return [ - _vm._v( - "\n\t\t\t\t" + - _vm._s( - _vm.t("photos", "There is no album yet!") - ) + - "\n\t\t\t" - ), - ] - }, - proxy: true, - }, - ], - null, - false, - 3685789295 - ), - }), - _vm._v(" "), - _c( - "Button", - { - staticClass: "albums__empty__button", - attrs: { - type: "primary", - "aria-label": _vm.t("photos", "Create a new album"), - }, - on: { - click: function ($event) { - _vm.showAlbumCreationForm = true - }, - }, - scopedSlots: _vm._u( - [ - { - key: "icon", - fn: function () { - return [_c("Plus")] - }, - proxy: true, - }, - ], - null, - false, - 1489515321 - ), - }, - [ - _vm._v( - "\n\t\t\t" + _vm._s(_vm.t("photos", "Add")) + "\n\t\t" - ), - ] - ), - ], - 1 - ) - : !_vm.noAlbums - ? _c( - "div", - { staticClass: "albums__list" }, - _vm._l(_vm.albums, function (album) { - return _c("AlbumCover", { - key: album.basename, - staticClass: "album", - attrs: { "base-name": album.basename }, - }) - }), - 1 - ) - : _vm._e(), - _vm._v(" "), - _vm.showAlbumCreationForm - ? _c( - "Modal", - { - attrs: { title: _vm.t("photos", "New album") }, - on: { - close: function ($event) { - _vm.showAlbumCreationForm = false - }, - }, - }, - [_c("AlbumForm", { on: { done: _vm.handleAlbumCreated } })], - 1 - ) - : _vm._e(), - ], - 1 - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }) - -}]); -//# sourceMappingURL=photos-src_utils_CancelableRequest_js-src_views_Albums_vue.js.map?v=420459ab1951a027a8f6 \ No newline at end of file diff --git a/js/photos-src_utils_CancelableRequest_js-src_views_Albums_vue.js.map b/js/photos-src_utils_CancelableRequest_js-src_views_Albums_vue.js.map deleted file mode 100644 index 93932c32e..000000000 --- a/js/photos-src_utils_CancelableRequest_js-src_views_Albums_vue.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-src_utils_CancelableRequest_js-src_views_Albums_vue.js?v=420459ab1951a027a8f6","mappings":";;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;ACpFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;AChCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;ACvHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;ACtFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;;;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;;;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;ACvCA;;;;;;;;;;;;;;;ACAA;;;;;;;;;;;;;;;ACAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AOAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;ACnDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sources":["webpack:///photos/src/components/AlbumCover.vue?vue&type=script&lang=js&","webpack:///photos/src/components/Loader.vue?vue&type=script&lang=js&","webpack:///photos/src/views/Albums.vue?vue&type=script&lang=js&","webpack:///photos/src/utils/CancelableRequest.js","webpack:///photos/src/components/AlbumCover.vue?vue&type=style&index=0&id=4e8bae90&lang=scss&scoped=true&","webpack:///photos/src/components/Loader.vue?vue&type=style&index=0&lang=scss&","webpack:///photos/src/views/Albums.vue?vue&type=style&index=0&id=28345ec4&lang=scss&scoped=true&","webpack://photos/./src/components/AlbumCover.vue?3af4","webpack://photos/./src/components/Loader.vue?eb1b","webpack://photos/./src/views/Albums.vue?6c02","webpack:///photos/src/components/AlbumCover.vue","webpack:///photos/src/components/Loader.vue","webpack:///photos/src/views/Albums.vue","webpack://photos/./src/components/AlbumCover.vue?6e35","webpack://photos/./src/components/Loader.vue?5453","webpack://photos/./src/views/Albums.vue?818f","webpack://photos/./src/components/AlbumCover.vue?40e8","webpack://photos/./src/components/Loader.vue?ddeb","webpack://photos/./src/views/Albums.vue?59af","webpack:///photos/src/components/AlbumCover.vue?vue&type=template&id=4e8bae90&scoped=true&","webpack:///photos/src/components/Loader.vue?vue&type=template&id=04a0d67a&","webpack:///photos/src/views/Albums.vue?vue&type=template&id=28345ec4&scoped=true&","webpack://photos/./src/components/AlbumCover.vue?efc3","webpack://photos/./src/components/Loader.vue?7124","webpack://photos/./src/views/Albums.vue?207e"],"sourcesContent":["function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport { mapGetters } from 'vuex'; // import ShareVariant from 'vue-material-design-icons/ShareVariant'\n// import AccountMultiple from 'vue-material-design-icons/AccountMultiple'\n\nimport ImageMultiple from 'vue-material-design-icons/ImageMultiple';\nimport { generateUrl } from '@nextcloud/router';\nexport default {\n name: 'AlbumCover',\n components: {\n // ShareVariant,\n // AccountMultiple,\n ImageMultiple: ImageMultiple\n },\n props: {\n baseName: {\n type: String,\n required: true\n }\n },\n computed: _objectSpread(_objectSpread({}, mapGetters(['files', 'albums'])), {}, {\n /**\n * @return {Album}\n */\n album: function album() {\n return this.albums[this.baseName];\n },\n\n /**\n * @return {string}\n */\n coverUrl: function coverUrl() {\n return generateUrl(\"/core/preview?fileId=\".concat(this.album.lastPhoto, \"&x=\", 512, \"&y=\", 512, \"&forceIcon=0&a=1\"));\n }\n })\n};","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nexport default {\n name: 'Loader'\n};","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport Plus from 'vue-material-design-icons/Plus';\nimport FolderMultipleImage from 'vue-material-design-icons/FolderMultipleImage';\nimport { Button, Modal, EmptyContent } from '@nextcloud/vue';\nimport FetchAlbumsMixin from '../mixins/FetchAlbumsMixin.js';\nimport AlbumCover from '../components/AlbumCover.vue';\nimport AlbumForm from '../components/AlbumForm.vue';\nimport Loader from '../components/Loader.vue';\nexport default {\n name: 'Albums',\n components: {\n AlbumCover: AlbumCover,\n EmptyContent: EmptyContent,\n AlbumForm: AlbumForm,\n Loader: Loader,\n Modal: Modal,\n Button: Button,\n Plus: Plus,\n FolderMultipleImage: FolderMultipleImage\n },\n mixins: [FetchAlbumsMixin],\n data: function data() {\n return {\n showAlbumCreationForm: false\n };\n },\n computed: {\n /**\n * @return {boolean} Whether the list of album is empty or not.\n */\n noAlbums: function noAlbums() {\n return Object.keys(this.albums).length === 0;\n }\n },\n methods: {\n handleAlbumCreated: function handleAlbumCreated(_ref) {\n var album = _ref.album;\n this.showAlbumCreationForm = false;\n this.$router.push(\"/albums/\".concat(album.basename));\n }\n }\n};","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\n/**\n * @copyright Copyright (c) 2019 Marco Ambrosini \n *\n * @author Marco Ambrosini \n *\n * @author John Molakvoæ \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 .\n *\n */\nimport axios from '@nextcloud/axios';\n/**\n * Create a cancel token\n *\n * @return {CancelTokenSource}\n */\n\nvar createCancelToken = function createCancelToken() {\n return axios.CancelToken.source();\n};\n/**\n * Creates a cancelable axios 'request object'.\n *\n * @param {Function} request the axios promise request\n * @return {object}\n */\n\n\nvar CancelableRequest = function CancelableRequest(request) {\n /**\n * Generate an axios cancel token\n */\n var cancelToken = createCancelToken();\n /**\n * Execute the request\n *\n * @param {string} url the url to send the request to\n * @param {object} [options] optional config for the request\n */\n\n var fetch = /*#__PURE__*/function () {\n var _ref = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(url, options) {\n return regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n return _context.abrupt(\"return\", request(url, Object.assign({\n cancelToken: cancelToken.token\n }, options)));\n\n case 1:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n\n return function fetch(_x, _x2) {\n return _ref.apply(this, arguments);\n };\n }();\n\n return {\n request: fetch,\n cancel: cancelToken.cancel\n };\n};\n\nexport default CancelableRequest;","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".album-cover[data-v-4e8bae90] {\\n display: flex;\\n flex-direction: column;\\n padding: 16px;\\n border-radius: 12px;\\n}\\n.album-cover[data-v-4e8bae90]:hover, .album-cover[data-v-4e8bae90]:focus {\\n background: var(--color-background-dark);\\n}\\n.album-cover__image[data-v-4e8bae90] {\\n width: 350px;\\n height: 350px;\\n object-fit: none;\\n border-radius: 12px;\\n}\\n@media only screen and (max-width: 1200px) {\\n.album-cover__image[data-v-4e8bae90] {\\n width: 250px;\\n height: 250px;\\n}\\n}\\n.album-cover__image--placeholder[data-v-4e8bae90] {\\n background: var(--color-primary-light);\\n}\\n.album-cover__image--placeholder[data-v-4e8bae90] .material-design-icon {\\n width: 100%;\\n height: 100%;\\n}\\n.album-cover__image--placeholder[data-v-4e8bae90] .material-design-icon .material-design-icon__svg {\\n fill: var(--color-primary);\\n}\\n.album-cover__details[data-v-4e8bae90] {\\n display: flex;\\n flex-direction: column;\\n margin-top: 16px;\\n width: 350px;\\n}\\n@media only screen and (max-width: 1200px) {\\n.album-cover__details[data-v-4e8bae90] {\\n width: 250px;\\n}\\n}\\n.album-cover__details__first-line[data-v-4e8bae90] {\\n display: flex;\\n}\\n.album-cover__details__second-line[data-v-4e8bae90] {\\n display: flex;\\n color: var(--color-text-lighter);\\n}\\n.album-cover__details__name[data-v-4e8bae90] {\\n flex-grow: 1;\\n margin: 0;\\n font-weight: normal;\\n overflow: hidden;\\n white-space: nowrap;\\n text-overflow: ellipsis;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".loader {\\n display: grid;\\n height: 60px;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".albums[data-v-28345ec4] {\\n display: flex;\\n flex-direction: column;\\n}\\n.albums__header[data-v-28345ec4] {\\n display: flex;\\n min-height: 60px;\\n align-items: center;\\n padding: 8px 64px 32px 64px;\\n position: -webkit-sticky;\\n position: sticky;\\n top: var(--header-height);\\n width: 100%;\\n z-index: 3;\\n background: var(--color-main-background);\\n}\\n@media only screen and (max-width: 1200px) {\\n.albums__header[data-v-28345ec4] {\\n padding: 8px 48px 32px 48px;\\n}\\n}\\n.albums__header button[data-v-28345ec4] {\\n margin-right: 32px;\\n}\\n.albums__list[data-v-28345ec4] {\\n padding: 0px 48px 32px 48px;\\n flex-grow: 1;\\n display: flex;\\n flex-wrap: wrap;\\n gap: 16px;\\n align-items: flex-start;\\n}\\n@media only screen and (max-width: 1200px) {\\n.albums__list[data-v-28345ec4] {\\n padding: 0px 12px 32px 12px;\\n justify-content: center;\\n}\\n}\\n.albums__empty[data-v-28345ec4] {\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n}\\n.albums__empty__button[data-v-28345ec4] {\\n margin-top: 32px;\\n}\\n.empty-content-with-illustration[data-v-28345ec4] .empty-content__icon {\\n width: 200px;\\n height: 200px;\\n}\\n.empty-content-with-illustration[data-v-28345ec4] .empty-content__icon svg {\\n width: 200px;\\n height: 200px;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./AlbumCover.vue?vue&type=style&index=0&id=4e8bae90&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./AlbumCover.vue?vue&type=style&index=0&id=4e8bae90&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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 \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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 export default content && content.locals ? content.locals : undefined;\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport 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!./Albums.vue?vue&type=style&index=0&id=28345ec4&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * 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!./Albums.vue?vue&type=style&index=0&id=28345ec4&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./AlbumCover.vue?vue&type=template&id=4e8bae90&scoped=true&\"\nimport script from \"./AlbumCover.vue?vue&type=script&lang=js&\"\nexport * from \"./AlbumCover.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AlbumCover.vue?vue&type=style&index=0&id=4e8bae90&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 \"4e8bae90\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/admin/Docker/apps2/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('4e8bae90')) {\n api.createRecord('4e8bae90', component.options)\n } else {\n api.reload('4e8bae90', component.options)\n }\n module.hot.accept(\"./AlbumCover.vue?vue&type=template&id=4e8bae90&scoped=true&\", function () {\n api.rerender('4e8bae90', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/AlbumCover.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./Loader.vue?vue&type=template&id=04a0d67a&\"\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\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/admin/Docker/apps2/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('04a0d67a')) {\n api.createRecord('04a0d67a', component.options)\n } else {\n api.reload('04a0d67a', component.options)\n }\n module.hot.accept(\"./Loader.vue?vue&type=template&id=04a0d67a&\", function () {\n api.rerender('04a0d67a', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/Loader.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./Albums.vue?vue&type=template&id=28345ec4&scoped=true&\"\nimport script from \"./Albums.vue?vue&type=script&lang=js&\"\nexport * from \"./Albums.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Albums.vue?vue&type=style&index=0&id=28345ec4&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 \"28345ec4\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/admin/Docker/apps2/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('28345ec4')) {\n api.createRecord('28345ec4', component.options)\n } else {\n api.reload('28345ec4', component.options)\n }\n module.hot.accept(\"./Albums.vue?vue&type=template&id=28345ec4&scoped=true&\", function () {\n api.rerender('28345ec4', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/views/Albums.vue\"\nexport default component.exports","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AlbumCover.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!./AlbumCover.vue?vue&type=script&lang=js&\"","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 mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Albums.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!./Albums.vue?vue&type=script&lang=js&\"","export * from \"-!../../node_modules/style-loader/dist/cjs.js!../../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!./AlbumCover.vue?vue&type=style&index=0&id=4e8bae90&lang=scss&scoped=true&\"","export * from \"-!../../node_modules/style-loader/dist/cjs.js!../../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&\"","export * from \"-!../../node_modules/style-loader/dist/cjs.js!../../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!./Albums.vue?vue&type=style&index=0&id=28345ec4&lang=scss&scoped=true&\"","export * from \"-!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AlbumCover.vue?vue&type=template&id=4e8bae90&scoped=true&\"","export * from \"-!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=template&id=04a0d67a&\"","export * from \"-!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Albums.vue?vue&type=template&id=28345ec4&scoped=true&\"","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"router-link\",\n { staticClass: \"album-cover\", attrs: { to: \"/albums/\" + _vm.baseName } },\n [\n _vm.album.lastPhoto !== 0\n ? _c(\"img\", {\n staticClass: \"album-cover__image\",\n attrs: { src: _vm.coverUrl },\n })\n : _c(\n \"div\",\n {\n staticClass: \"album-cover__image album-cover__image--placeholder\",\n },\n [_c(\"ImageMultiple\", { attrs: { size: 128 } })],\n 1\n ),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"album-cover__details\" }, [\n _c(\"div\", { staticClass: \"album-cover__details__first-line\" }, [\n _c(\"h2\", { staticClass: \"album-cover__details__name\" }, [\n _vm._v(\"\\n\\t\\t\\t\\t\" + _vm._s(_vm.baseName) + \"\\n\\t\\t\\t\"),\n ]),\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"album-cover__details__second-line\" }, [\n _vm._v(\n \"\\n\\t\\t\\t\" +\n _vm._s(_vm.album.date) +\n \" ⸱ \" +\n _vm._s(\n _vm.n(\n \"photos\",\n \"%n item\",\n \"%n photos and videos\",\n _vm.album.nbItems\n )\n ) +\n \"\\n\\t\\t\"\n ),\n ]),\n ]),\n ]\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { staticClass: \"loader\" },\n [\n _vm._t(\"icon\", function () {\n return [_c(\"span\", { staticClass: \"icon-loading\" })]\n }),\n ],\n 2\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _vm.errorFetchingAlbums\n ? _c(\"EmptyContent\", [\n _vm._v(\"\\n\\t\" + _vm._s(_vm.t(\"photos\", \"An error occurred\")) + \"\\n\"),\n ])\n : _c(\n \"div\",\n { staticClass: \"albums\" },\n [\n _c(\n \"div\",\n { staticClass: \"albums__header\" },\n [\n _c(\n \"Button\",\n {\n attrs: {\n type: \"primary\",\n \"aria-label\": _vm.t(\"photos\", \"Create a new album.\"),\n },\n on: {\n click: function ($event) {\n _vm.showAlbumCreationForm = true\n },\n },\n scopedSlots: _vm._u([\n {\n key: \"icon\",\n fn: function () {\n return [_c(\"Plus\")]\n },\n proxy: true,\n },\n ]),\n },\n [\n _vm._v(\n \"\\n\\t\\t\\t\" + _vm._s(_vm.t(\"photos\", \"New album\")) + \"\\n\\t\\t\"\n ),\n ]\n ),\n _vm._v(\" \"),\n _vm.loadingAlbums ? _c(\"Loader\") : _vm._e(),\n ],\n 1\n ),\n _vm._v(\" \"),\n _vm.noAlbums && !_vm.loadingAlbums\n ? _c(\n \"div\",\n { staticClass: \"albums__empty\" },\n [\n _c(\"EmptyContent\", {\n scopedSlots: _vm._u(\n [\n {\n key: \"icon\",\n fn: function () {\n return [_c(\"FolderMultipleImage\")]\n },\n proxy: true,\n },\n {\n key: \"desc\",\n fn: function () {\n return [\n _vm._v(\n \"\\n\\t\\t\\t\\t\" +\n _vm._s(\n _vm.t(\"photos\", \"There is no album yet!\")\n ) +\n \"\\n\\t\\t\\t\"\n ),\n ]\n },\n proxy: true,\n },\n ],\n null,\n false,\n 3685789295\n ),\n }),\n _vm._v(\" \"),\n _c(\n \"Button\",\n {\n staticClass: \"albums__empty__button\",\n attrs: {\n type: \"primary\",\n \"aria-label\": _vm.t(\"photos\", \"Create a new album\"),\n },\n on: {\n click: function ($event) {\n _vm.showAlbumCreationForm = true\n },\n },\n scopedSlots: _vm._u(\n [\n {\n key: \"icon\",\n fn: function () {\n return [_c(\"Plus\")]\n },\n proxy: true,\n },\n ],\n null,\n false,\n 1489515321\n ),\n },\n [\n _vm._v(\n \"\\n\\t\\t\\t\" + _vm._s(_vm.t(\"photos\", \"Add\")) + \"\\n\\t\\t\"\n ),\n ]\n ),\n ],\n 1\n )\n : !_vm.noAlbums\n ? _c(\n \"div\",\n { staticClass: \"albums__list\" },\n _vm._l(_vm.albums, function (album) {\n return _c(\"AlbumCover\", {\n key: album.basename,\n staticClass: \"album\",\n attrs: { \"base-name\": album.basename },\n })\n }),\n 1\n )\n : _vm._e(),\n _vm._v(\" \"),\n _vm.showAlbumCreationForm\n ? _c(\n \"Modal\",\n {\n attrs: { title: _vm.t(\"photos\", \"New album\") },\n on: {\n close: function ($event) {\n _vm.showAlbumCreationForm = false\n },\n },\n },\n [_c(\"AlbumForm\", { on: { done: _vm.handleAlbumCreated } })],\n 1\n )\n : _vm._e(),\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-src_views_AlbumContent_vue.js.LICENSE.txt b/js/photos-src_views_AlbumContent_vue.js.LICENSE.txt deleted file mode 100644 index 6f3657b52..000000000 --- a/js/photos-src_views_AlbumContent_vue.js.LICENSE.txt +++ /dev/null @@ -1,21 +0,0 @@ -/** - * @copyright Copyright (c) 2022 Louis Chemineau - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ diff --git a/js/photos-src_views_SharedAlbumContent_vue.js.LICENSE.txt b/js/photos-src_views_SharedAlbumContent_vue.js.LICENSE.txt deleted file mode 100644 index 6f3657b52..000000000 --- a/js/photos-src_views_SharedAlbumContent_vue.js.LICENSE.txt +++ /dev/null @@ -1,21 +0,0 @@ -/** - * @copyright Copyright (c) 2022 Louis Chemineau - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ diff --git a/js/photos-src_views_SharedAlbums_vue.js.LICENSE.txt b/js/photos-src_views_SharedAlbums_vue.js.LICENSE.txt deleted file mode 100644 index 6f3657b52..000000000 --- a/js/photos-src_views_SharedAlbums_vue.js.LICENSE.txt +++ /dev/null @@ -1,21 +0,0 @@ -/** - * @copyright Copyright (c) 2022 Louis Chemineau - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ diff --git a/js/photos-src_views_Timeline_vue.js.LICENSE.txt b/js/photos-src_views_Timeline_vue.js.LICENSE.txt deleted file mode 100644 index 6f3657b52..000000000 --- a/js/photos-src_views_Timeline_vue.js.LICENSE.txt +++ /dev/null @@ -1,21 +0,0 @@ -/** - * @copyright Copyright (c) 2022 Louis Chemineau - * - * @author Louis Chemineau - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ diff --git a/js/photos-vendors-node_modules_debounce_index_js-node_modules_vue-material-design-icons_Delete_vue-node-1807a7.js b/js/photos-vendors-node_modules_debounce_index_js-node_modules_vue-material-design-icons_Delete_vue-node-1807a7.js deleted file mode 100644 index 71311cf7d..000000000 --- a/js/photos-vendors-node_modules_debounce_index_js-node_modules_vue-material-design-icons_Delete_vue-node-1807a7.js +++ /dev/null @@ -1,852 +0,0 @@ -(self["webpackChunkphotos"] = self["webpackChunkphotos"] || []).push([["vendors-node_modules_debounce_index_js-node_modules_vue-material-design-icons_Delete_vue-node-1807a7"],{ - -/***/ "./node_modules/debounce/index.js": -/*!****************************************!*\ - !*** ./node_modules/debounce/index.js ***! - \****************************************/ -/***/ ((module) => { - -/** - * Returns a function, that, as long as it continues to be invoked, will not - * be triggered. The function will be called after it stops being called for - * N milliseconds. If `immediate` is passed, trigger the function on the - * leading edge, instead of the trailing. The function also has a property 'clear' - * that is a function which will clear the timer to prevent previously scheduled executions. - * - * @source underscore.js - * @see http://unscriptable.com/2009/03/20/debouncing-javascript-methods/ - * @param {Function} function to wrap - * @param {Number} timeout in ms (`100`) - * @param {Boolean} whether to execute at the beginning (`false`) - * @api public - */ -function debounce(func, wait, immediate){ - var timeout, args, context, timestamp, result; - if (null == wait) wait = 100; - - function later() { - var last = Date.now() - timestamp; - - if (last < wait && last >= 0) { - timeout = setTimeout(later, wait - last); - } else { - timeout = null; - if (!immediate) { - result = func.apply(context, args); - context = args = null; - } - } - }; - - var debounced = function(){ - context = this; - args = arguments; - timestamp = Date.now(); - var callNow = immediate && !timeout; - if (!timeout) timeout = setTimeout(later, wait); - if (callNow) { - result = func.apply(context, args); - context = args = null; - } - - return result; - }; - - debounced.clear = function() { - if (timeout) { - clearTimeout(timeout); - timeout = null; - } - }; - - debounced.flush = function() { - if (timeout) { - result = func.apply(context, args); - context = args = null; - - clearTimeout(timeout); - timeout = null; - } - }; - - return debounced; -}; - -// Adds compatibility for ES modules -debounce.debounce = debounce; - -module.exports = debounce; - - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/Delete.vue": -/*!***********************************************************!*\ - !*** ./node_modules/vue-material-design-icons/Delete.vue ***! - \***********************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _Delete_vue_vue_type_template_id_423aa957___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Delete.vue?vue&type=template&id=423aa957& */ "./node_modules/vue-material-design-icons/Delete.vue?vue&type=template&id=423aa957&"); -/* harmony import */ var _Delete_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Delete.vue?vue&type=script&lang=js& */ "./node_modules/vue-material-design-icons/Delete.vue?vue&type=script&lang=js&"); -/* harmony import */ var _vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - - - -/* normalize component */ -; -var component = (0,_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])( - _Delete_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _Delete_vue_vue_type_template_id_423aa957___WEBPACK_IMPORTED_MODULE_0__.render, - _Delete_vue_vue_type_template_id_423aa957___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - null, - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "node_modules/vue-material-design-icons/Delete.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Delete.vue?vue&type=script&lang=js&": -/*!***********************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Delete.vue?vue&type=script&lang=js& ***! - \***********************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: "DeleteIcon", - props: { - title: { - type: String, - }, - fillColor: { - type: String, - default: "currentColor" - }, - size: { - type: Number, - default: 24 - } - } -}); - - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/Download.vue": -/*!*************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/Download.vue ***! - \*************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _Download_vue_vue_type_template_id_4c92e0b4___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Download.vue?vue&type=template&id=4c92e0b4& */ "./node_modules/vue-material-design-icons/Download.vue?vue&type=template&id=4c92e0b4&"); -/* harmony import */ var _Download_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Download.vue?vue&type=script&lang=js& */ "./node_modules/vue-material-design-icons/Download.vue?vue&type=script&lang=js&"); -/* harmony import */ var _vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - - - -/* normalize component */ -; -var component = (0,_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])( - _Download_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _Download_vue_vue_type_template_id_4c92e0b4___WEBPACK_IMPORTED_MODULE_0__.render, - _Download_vue_vue_type_template_id_4c92e0b4___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - null, - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "node_modules/vue-material-design-icons/Download.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Download.vue?vue&type=script&lang=js&": -/*!*************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Download.vue?vue&type=script&lang=js& ***! - \*************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: "DownloadIcon", - props: { - title: { - type: String, - }, - fillColor: { - type: String, - default: "currentColor" - }, - size: { - type: Number, - default: 24 - } - } -}); - - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/FileUpload.vue": -/*!***************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/FileUpload.vue ***! - \***************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _FileUpload_vue_vue_type_template_id_78fe596e___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./FileUpload.vue?vue&type=template&id=78fe596e& */ "./node_modules/vue-material-design-icons/FileUpload.vue?vue&type=template&id=78fe596e&"); -/* harmony import */ var _FileUpload_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./FileUpload.vue?vue&type=script&lang=js& */ "./node_modules/vue-material-design-icons/FileUpload.vue?vue&type=script&lang=js&"); -/* harmony import */ var _vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - - - -/* normalize component */ -; -var component = (0,_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])( - _FileUpload_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _FileUpload_vue_vue_type_template_id_78fe596e___WEBPACK_IMPORTED_MODULE_0__.render, - _FileUpload_vue_vue_type_template_id_78fe596e___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - null, - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "node_modules/vue-material-design-icons/FileUpload.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/FileUpload.vue?vue&type=script&lang=js&": -/*!***************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/FileUpload.vue?vue&type=script&lang=js& ***! - \***************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: "FileUploadIcon", - props: { - title: { - type: String, - }, - fillColor: { - type: String, - default: "currentColor" - }, - size: { - type: Number, - default: 24 - } - } -}); - - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/PlusBoxMultiple.vue": -/*!********************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/PlusBoxMultiple.vue ***! - \********************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _PlusBoxMultiple_vue_vue_type_template_id_b24795f6___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./PlusBoxMultiple.vue?vue&type=template&id=b24795f6& */ "./node_modules/vue-material-design-icons/PlusBoxMultiple.vue?vue&type=template&id=b24795f6&"); -/* harmony import */ var _PlusBoxMultiple_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./PlusBoxMultiple.vue?vue&type=script&lang=js& */ "./node_modules/vue-material-design-icons/PlusBoxMultiple.vue?vue&type=script&lang=js&"); -/* harmony import */ var _vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - - - -/* normalize component */ -; -var component = (0,_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])( - _PlusBoxMultiple_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _PlusBoxMultiple_vue_vue_type_template_id_b24795f6___WEBPACK_IMPORTED_MODULE_0__.render, - _PlusBoxMultiple_vue_vue_type_template_id_b24795f6___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - null, - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "node_modules/vue-material-design-icons/PlusBoxMultiple.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/PlusBoxMultiple.vue?vue&type=script&lang=js&": -/*!********************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/PlusBoxMultiple.vue?vue&type=script&lang=js& ***! - \********************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: "PlusBoxMultipleIcon", - props: { - title: { - type: String, - }, - fillColor: { - type: String, - default: "currentColor" - }, - size: { - type: Number, - default: 24 - } - } -}); - - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/Delete.vue?vue&type=script&lang=js&": -/*!************************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/Delete.vue?vue&type=script&lang=js& ***! - \************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _vue_loader_lib_index_js_vue_loader_options_Delete_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/index.js??vue-loader-options!./Delete.vue?vue&type=script&lang=js& */ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Delete.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_vue_loader_lib_index_js_vue_loader_options_Delete_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/Delete.vue?vue&type=template&id=423aa957&": -/*!******************************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/Delete.vue?vue&type=template&id=423aa957& ***! - \******************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_Delete_vue_vue_type_template_id_423aa957___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_Delete_vue_vue_type_template_id_423aa957___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_Delete_vue_vue_type_template_id_423aa957___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../vue-loader/lib/index.js??vue-loader-options!./Delete.vue?vue&type=template&id=423aa957& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Delete.vue?vue&type=template&id=423aa957&"); - - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/Download.vue?vue&type=script&lang=js&": -/*!**************************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/Download.vue?vue&type=script&lang=js& ***! - \**************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _vue_loader_lib_index_js_vue_loader_options_Download_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/index.js??vue-loader-options!./Download.vue?vue&type=script&lang=js& */ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Download.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_vue_loader_lib_index_js_vue_loader_options_Download_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/Download.vue?vue&type=template&id=4c92e0b4&": -/*!********************************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/Download.vue?vue&type=template&id=4c92e0b4& ***! - \********************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_Download_vue_vue_type_template_id_4c92e0b4___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_Download_vue_vue_type_template_id_4c92e0b4___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_Download_vue_vue_type_template_id_4c92e0b4___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../vue-loader/lib/index.js??vue-loader-options!./Download.vue?vue&type=template&id=4c92e0b4& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Download.vue?vue&type=template&id=4c92e0b4&"); - - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/FileUpload.vue?vue&type=script&lang=js&": -/*!****************************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/FileUpload.vue?vue&type=script&lang=js& ***! - \****************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _vue_loader_lib_index_js_vue_loader_options_FileUpload_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/index.js??vue-loader-options!./FileUpload.vue?vue&type=script&lang=js& */ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/FileUpload.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_vue_loader_lib_index_js_vue_loader_options_FileUpload_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/FileUpload.vue?vue&type=template&id=78fe596e&": -/*!**********************************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/FileUpload.vue?vue&type=template&id=78fe596e& ***! - \**********************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_FileUpload_vue_vue_type_template_id_78fe596e___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_FileUpload_vue_vue_type_template_id_78fe596e___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_FileUpload_vue_vue_type_template_id_78fe596e___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../vue-loader/lib/index.js??vue-loader-options!./FileUpload.vue?vue&type=template&id=78fe596e& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/FileUpload.vue?vue&type=template&id=78fe596e&"); - - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/PlusBoxMultiple.vue?vue&type=script&lang=js&": -/*!*********************************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/PlusBoxMultiple.vue?vue&type=script&lang=js& ***! - \*********************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _vue_loader_lib_index_js_vue_loader_options_PlusBoxMultiple_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/index.js??vue-loader-options!./PlusBoxMultiple.vue?vue&type=script&lang=js& */ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/PlusBoxMultiple.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_vue_loader_lib_index_js_vue_loader_options_PlusBoxMultiple_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/PlusBoxMultiple.vue?vue&type=template&id=b24795f6&": -/*!***************************************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/PlusBoxMultiple.vue?vue&type=template&id=b24795f6& ***! - \***************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_PlusBoxMultiple_vue_vue_type_template_id_b24795f6___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_PlusBoxMultiple_vue_vue_type_template_id_b24795f6___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_PlusBoxMultiple_vue_vue_type_template_id_b24795f6___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../vue-loader/lib/index.js??vue-loader-options!./PlusBoxMultiple.vue?vue&type=template&id=b24795f6& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/PlusBoxMultiple.vue?vue&type=template&id=b24795f6&"); - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Delete.vue?vue&type=template&id=423aa957&": -/*!*********************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Delete.vue?vue&type=template&id=423aa957& ***! - \*********************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c( - "span", - _vm._b( - { - staticClass: "material-design-icon delete-icon", - attrs: { - "aria-hidden": !_vm.title, - "aria-label": _vm.title, - role: "img", - }, - on: { - click: function ($event) { - return _vm.$emit("click", $event) - }, - }, - }, - "span", - _vm.$attrs, - false - ), - [ - _c( - "svg", - { - staticClass: "material-design-icon__svg", - attrs: { - fill: _vm.fillColor, - width: _vm.size, - height: _vm.size, - viewBox: "0 0 24 24", - }, - }, - [ - _c( - "path", - { - attrs: { - d: "M19,4H15.5L14.5,3H9.5L8.5,4H5V6H19M6,19A2,2 0 0,0 8,21H16A2,2 0 0,0 18,19V7H6V19Z", - }, - }, - [_vm.title ? _c("title", [_vm._v(_vm._s(_vm.title))]) : _vm._e()] - ), - ] - ), - ] - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Download.vue?vue&type=template&id=4c92e0b4&": -/*!***********************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Download.vue?vue&type=template&id=4c92e0b4& ***! - \***********************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c( - "span", - _vm._b( - { - staticClass: "material-design-icon download-icon", - attrs: { - "aria-hidden": !_vm.title, - "aria-label": _vm.title, - role: "img", - }, - on: { - click: function ($event) { - return _vm.$emit("click", $event) - }, - }, - }, - "span", - _vm.$attrs, - false - ), - [ - _c( - "svg", - { - staticClass: "material-design-icon__svg", - attrs: { - fill: _vm.fillColor, - width: _vm.size, - height: _vm.size, - viewBox: "0 0 24 24", - }, - }, - [ - _c( - "path", - { attrs: { d: "M5,20H19V18H5M19,9H15V3H9V9H5L12,16L19,9Z" } }, - [_vm.title ? _c("title", [_vm._v(_vm._s(_vm.title))]) : _vm._e()] - ), - ] - ), - ] - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/FileUpload.vue?vue&type=template&id=78fe596e&": -/*!*************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/FileUpload.vue?vue&type=template&id=78fe596e& ***! - \*************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c( - "span", - _vm._b( - { - staticClass: "material-design-icon file-upload-icon", - attrs: { - "aria-hidden": !_vm.title, - "aria-label": _vm.title, - role: "img", - }, - on: { - click: function ($event) { - return _vm.$emit("click", $event) - }, - }, - }, - "span", - _vm.$attrs, - false - ), - [ - _c( - "svg", - { - staticClass: "material-design-icon__svg", - attrs: { - fill: _vm.fillColor, - width: _vm.size, - height: _vm.size, - viewBox: "0 0 24 24", - }, - }, - [ - _c( - "path", - { - attrs: { - d: "M14,2H6A2,2 0 0,0 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2M13.5,16V19H10.5V16H8L12,12L16,16H13.5M13,9V3.5L18.5,9H13Z", - }, - }, - [_vm.title ? _c("title", [_vm._v(_vm._s(_vm.title))]) : _vm._e()] - ), - ] - ), - ] - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/PlusBoxMultiple.vue?vue&type=template&id=b24795f6&": -/*!******************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/PlusBoxMultiple.vue?vue&type=template&id=b24795f6& ***! - \******************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c( - "span", - _vm._b( - { - staticClass: "material-design-icon plus-box-multiple-icon", - attrs: { - "aria-hidden": !_vm.title, - "aria-label": _vm.title, - role: "img", - }, - on: { - click: function ($event) { - return _vm.$emit("click", $event) - }, - }, - }, - "span", - _vm.$attrs, - false - ), - [ - _c( - "svg", - { - staticClass: "material-design-icon__svg", - attrs: { - fill: _vm.fillColor, - width: _vm.size, - height: _vm.size, - viewBox: "0 0 24 24", - }, - }, - [ - _c( - "path", - { - attrs: { - d: "M19,11H15V15H13V11H9V9H13V5H15V9H19M20,2H8A2,2 0 0,0 6,4V16A2,2 0 0,0 8,18H20A2,2 0 0,0 22,16V4A2,2 0 0,0 20,2M4,6H2V20A2,2 0 0,0 4,22H18V20H4V6Z", - }, - }, - [_vm.title ? _c("title", [_vm._v(_vm._s(_vm.title))]) : _vm._e()] - ), - ] - ), - ] - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }) - -}]); -//# sourceMappingURL=photos-vendors-node_modules_debounce_index_js-node_modules_vue-material-design-icons_Delete_vue-node-1807a7.js.map?v=09a4b377c3d642b3090d \ No newline at end of file diff --git a/js/photos-vendors-node_modules_debounce_index_js-node_modules_vue-material-design-icons_Delete_vue-node-1807a7.js.map b/js/photos-vendors-node_modules_debounce_index_js-node_modules_vue-material-design-icons_Delete_vue-node-1807a7.js.map deleted file mode 100644 index 2a46a17ba..000000000 --- a/js/photos-vendors-node_modules_debounce_index_js-node_modules_vue-material-design-icons_Delete_vue-node-1807a7.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-vendors-node_modules_debounce_index_js-node_modules_vue-material-design-icons_Delete_vue-node-1807a7.js?v=09a4b377c3d642b3090d","mappings":";;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACrEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;ACtCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACnCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;ACtCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACnCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;ACtCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACnCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;ACtCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;ACnCA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;ACrDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;ACjDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;ACrDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sources":["webpack:///photos/node_modules/debounce/index.js","webpack:///photos/node_modules/vue-material-design-icons/Delete.vue","webpack:///photos/node_modules/vue-material-design-icons/Delete.vue?vue&type=script&lang=js&","webpack:///photos/node_modules/vue-material-design-icons/Download.vue","webpack:///photos/node_modules/vue-material-design-icons/Download.vue?vue&type=script&lang=js&","webpack:///photos/node_modules/vue-material-design-icons/FileUpload.vue","webpack:///photos/node_modules/vue-material-design-icons/FileUpload.vue?vue&type=script&lang=js&","webpack:///photos/node_modules/vue-material-design-icons/PlusBoxMultiple.vue","webpack:///photos/node_modules/vue-material-design-icons/PlusBoxMultiple.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/Delete.vue?095e","webpack://photos/./node_modules/vue-material-design-icons/Download.vue?bb3b","webpack://photos/./node_modules/vue-material-design-icons/FileUpload.vue?dd37","webpack://photos/./node_modules/vue-material-design-icons/PlusBoxMultiple.vue?09ef","webpack:///photos/node_modules/vue-material-design-icons/Delete.vue?vue&type=template&id=423aa957&","webpack:///photos/node_modules/vue-material-design-icons/Download.vue?vue&type=template&id=4c92e0b4&","webpack:///photos/node_modules/vue-material-design-icons/FileUpload.vue?vue&type=template&id=78fe596e&","webpack:///photos/node_modules/vue-material-design-icons/PlusBoxMultiple.vue?vue&type=template&id=b24795f6&"],"sourcesContent":["/**\n * Returns a function, that, as long as it continues to be invoked, will not\n * be triggered. The function will be called after it stops being called for\n * N milliseconds. If `immediate` is passed, trigger the function on the\n * leading edge, instead of the trailing. The function also has a property 'clear' \n * that is a function which will clear the timer to prevent previously scheduled executions. \n *\n * @source underscore.js\n * @see http://unscriptable.com/2009/03/20/debouncing-javascript-methods/\n * @param {Function} function to wrap\n * @param {Number} timeout in ms (`100`)\n * @param {Boolean} whether to execute at the beginning (`false`)\n * @api public\n */\nfunction debounce(func, wait, immediate){\n var timeout, args, context, timestamp, result;\n if (null == wait) wait = 100;\n\n function later() {\n var last = Date.now() - timestamp;\n\n if (last < wait && last >= 0) {\n timeout = setTimeout(later, wait - last);\n } else {\n timeout = null;\n if (!immediate) {\n result = func.apply(context, args);\n context = args = null;\n }\n }\n };\n\n var debounced = function(){\n context = this;\n args = arguments;\n timestamp = Date.now();\n var callNow = immediate && !timeout;\n if (!timeout) timeout = setTimeout(later, wait);\n if (callNow) {\n result = func.apply(context, args);\n context = args = null;\n }\n\n return result;\n };\n\n debounced.clear = function() {\n if (timeout) {\n clearTimeout(timeout);\n timeout = null;\n }\n };\n \n debounced.flush = function() {\n if (timeout) {\n result = func.apply(context, args);\n context = args = null;\n \n clearTimeout(timeout);\n timeout = null;\n }\n };\n\n return debounced;\n};\n\n// Adds compatibility for ES modules\ndebounce.debounce = debounce;\n\nmodule.exports = debounce;\n","import { render, staticRenderFns } from \"./Delete.vue?vue&type=template&id=423aa957&\"\nimport script from \"./Delete.vue?vue&type=script&lang=js&\"\nexport * from \"./Delete.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/admin/Docker/apps2/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('423aa957')) {\n api.createRecord('423aa957', component.options)\n } else {\n api.reload('423aa957', component.options)\n }\n module.hot.accept(\"./Delete.vue?vue&type=template&id=423aa957&\", function () {\n api.rerender('423aa957', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"node_modules/vue-material-design-icons/Delete.vue\"\nexport default component.exports","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nexport default {\n name: \"DeleteIcon\",\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n","import { render, staticRenderFns } from \"./Download.vue?vue&type=template&id=4c92e0b4&\"\nimport script from \"./Download.vue?vue&type=script&lang=js&\"\nexport * from \"./Download.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/admin/Docker/apps2/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('4c92e0b4')) {\n api.createRecord('4c92e0b4', component.options)\n } else {\n api.reload('4c92e0b4', component.options)\n }\n module.hot.accept(\"./Download.vue?vue&type=template&id=4c92e0b4&\", function () {\n api.rerender('4c92e0b4', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"node_modules/vue-material-design-icons/Download.vue\"\nexport default component.exports","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nexport default {\n name: \"DownloadIcon\",\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n","import { render, staticRenderFns } from \"./FileUpload.vue?vue&type=template&id=78fe596e&\"\nimport script from \"./FileUpload.vue?vue&type=script&lang=js&\"\nexport * from \"./FileUpload.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/admin/Docker/apps2/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('78fe596e')) {\n api.createRecord('78fe596e', component.options)\n } else {\n api.reload('78fe596e', component.options)\n }\n module.hot.accept(\"./FileUpload.vue?vue&type=template&id=78fe596e&\", function () {\n api.rerender('78fe596e', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"node_modules/vue-material-design-icons/FileUpload.vue\"\nexport default component.exports","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nexport default {\n name: \"FileUploadIcon\",\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n","import { render, staticRenderFns } from \"./PlusBoxMultiple.vue?vue&type=template&id=b24795f6&\"\nimport script from \"./PlusBoxMultiple.vue?vue&type=script&lang=js&\"\nexport * from \"./PlusBoxMultiple.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/admin/Docker/apps2/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('b24795f6')) {\n api.createRecord('b24795f6', component.options)\n } else {\n api.reload('b24795f6', component.options)\n }\n module.hot.accept(\"./PlusBoxMultiple.vue?vue&type=template&id=b24795f6&\", function () {\n api.rerender('b24795f6', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"node_modules/vue-material-design-icons/PlusBoxMultiple.vue\"\nexport default component.exports","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nexport default {\n name: \"PlusBoxMultipleIcon\",\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Delete.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Delete.vue?vue&type=script&lang=js&\"","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Download.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Download.vue?vue&type=script&lang=js&\"","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./FileUpload.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./FileUpload.vue?vue&type=script&lang=js&\"","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./PlusBoxMultiple.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./PlusBoxMultiple.vue?vue&type=script&lang=js&\"","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"span\",\n _vm._b(\n {\n staticClass: \"material-design-icon delete-icon\",\n attrs: {\n \"aria-hidden\": !_vm.title,\n \"aria-label\": _vm.title,\n role: \"img\",\n },\n on: {\n click: function ($event) {\n return _vm.$emit(\"click\", $event)\n },\n },\n },\n \"span\",\n _vm.$attrs,\n false\n ),\n [\n _c(\n \"svg\",\n {\n staticClass: \"material-design-icon__svg\",\n attrs: {\n fill: _vm.fillColor,\n width: _vm.size,\n height: _vm.size,\n viewBox: \"0 0 24 24\",\n },\n },\n [\n _c(\n \"path\",\n {\n attrs: {\n d: \"M19,4H15.5L14.5,3H9.5L8.5,4H5V6H19M6,19A2,2 0 0,0 8,21H16A2,2 0 0,0 18,19V7H6V19Z\",\n },\n },\n [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()]\n ),\n ]\n ),\n ]\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"span\",\n _vm._b(\n {\n staticClass: \"material-design-icon download-icon\",\n attrs: {\n \"aria-hidden\": !_vm.title,\n \"aria-label\": _vm.title,\n role: \"img\",\n },\n on: {\n click: function ($event) {\n return _vm.$emit(\"click\", $event)\n },\n },\n },\n \"span\",\n _vm.$attrs,\n false\n ),\n [\n _c(\n \"svg\",\n {\n staticClass: \"material-design-icon__svg\",\n attrs: {\n fill: _vm.fillColor,\n width: _vm.size,\n height: _vm.size,\n viewBox: \"0 0 24 24\",\n },\n },\n [\n _c(\n \"path\",\n { attrs: { d: \"M5,20H19V18H5M19,9H15V3H9V9H5L12,16L19,9Z\" } },\n [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()]\n ),\n ]\n ),\n ]\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"span\",\n _vm._b(\n {\n staticClass: \"material-design-icon file-upload-icon\",\n attrs: {\n \"aria-hidden\": !_vm.title,\n \"aria-label\": _vm.title,\n role: \"img\",\n },\n on: {\n click: function ($event) {\n return _vm.$emit(\"click\", $event)\n },\n },\n },\n \"span\",\n _vm.$attrs,\n false\n ),\n [\n _c(\n \"svg\",\n {\n staticClass: \"material-design-icon__svg\",\n attrs: {\n fill: _vm.fillColor,\n width: _vm.size,\n height: _vm.size,\n viewBox: \"0 0 24 24\",\n },\n },\n [\n _c(\n \"path\",\n {\n attrs: {\n d: \"M14,2H6A2,2 0 0,0 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2M13.5,16V19H10.5V16H8L12,12L16,16H13.5M13,9V3.5L18.5,9H13Z\",\n },\n },\n [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()]\n ),\n ]\n ),\n ]\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"span\",\n _vm._b(\n {\n staticClass: \"material-design-icon plus-box-multiple-icon\",\n attrs: {\n \"aria-hidden\": !_vm.title,\n \"aria-label\": _vm.title,\n role: \"img\",\n },\n on: {\n click: function ($event) {\n return _vm.$emit(\"click\", $event)\n },\n },\n },\n \"span\",\n _vm.$attrs,\n false\n ),\n [\n _c(\n \"svg\",\n {\n staticClass: \"material-design-icon__svg\",\n attrs: {\n fill: _vm.fillColor,\n width: _vm.size,\n height: _vm.size,\n viewBox: \"0 0 24 24\",\n },\n },\n [\n _c(\n \"path\",\n {\n attrs: {\n d: \"M19,11H15V15H13V11H9V9H13V5H15V9H19M20,2H8A2,2 0 0,0 6,4V16A2,2 0 0,0 8,18H20A2,2 0 0,0 22,16V4A2,2 0 0,0 20,2M4,6H2V20A2,2 0 0,0 4,22H18V20H4V6Z\",\n },\n },\n [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()]\n ),\n ]\n ),\n ]\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-vendors-node_modules_nextcloud_event-bus_dist_index_js.js b/js/photos-vendors-node_modules_nextcloud_event-bus_dist_index_js.js deleted file mode 100644 index 7bf515dde..000000000 --- a/js/photos-vendors-node_modules_nextcloud_event-bus_dist_index_js.js +++ /dev/null @@ -1,982 +0,0 @@ -(self["webpackChunkphotos"] = self["webpackChunkphotos"] || []).push([["vendors-node_modules_nextcloud_event-bus_dist_index_js"],{ - -/***/ "./node_modules/@nextcloud/event-bus/dist/ProxyBus.js": -/*!************************************************************!*\ - !*** ./node_modules/@nextcloud/event-bus/dist/ProxyBus.js ***! - \************************************************************/ -/***/ ((__unused_webpack_module, exports, __webpack_require__) => { - -"use strict"; -/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js"); - - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; } - -Object.defineProperty(exports, "__esModule", ({ - value: true -})); -exports.ProxyBus = void 0; - -var _valid = _interopRequireDefault(__webpack_require__(/*! semver/functions/valid */ "./node_modules/@nextcloud/event-bus/node_modules/semver/functions/valid.js")); - -var _major = _interopRequireDefault(__webpack_require__(/*! semver/functions/major */ "./node_modules/@nextcloud/event-bus/node_modules/semver/functions/major.js")); - -function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { - default: obj - }; -} - -function _defineProperty(obj, key, value) { - if (key in obj) { - Object.defineProperty(obj, key, { - value: value, - enumerable: true, - configurable: true, - writable: true - }); - } else { - obj[key] = value; - } - - return obj; -} - -var packageJson = { - name: "@nextcloud/event-bus", - version: "2.1.1", - description: "", - main: "dist/index.js", - types: "dist/index.d.ts", - scripts: { - build: "babel ./lib --out-dir dist --extensions '.ts,.tsx' --source-maps && tsc --emitDeclarationOnly", - "build:doc": "typedoc --out dist/doc lib/index.ts && touch dist/doc/.nojekyll", - "check-types": "tsc", - dev: "babel ./lib --out-dir dist --extensions '.ts,.tsx' --watch", - test: "jest", - "test:watch": "jest --watchAll" - }, - keywords: ["nextcloud"], - homepage: "https://github.com/nextcloud/nextcloud-event-bus#readme", - author: "Christoph Wurst", - license: "GPL-3.0-or-later", - repository: { - type: "git", - url: "https://github.com/nextcloud/nextcloud-event-bus" - }, - dependencies: { - "@types/semver": "^7.1.0", - "core-js": "^3.6.2", - semver: "^7.3.2" - }, - devDependencies: { - "@babel/cli": "^7.6.0", - "@babel/core": "^7.6.0", - "@babel/plugin-proposal-class-properties": "^7.5.5", - "@babel/preset-env": "^7.6.0", - "@babel/preset-typescript": "^7.6.0", - "@nextcloud/browserslist-config": "^2.1.0", - "@rollup/plugin-babel": "^5.3.0", - "@rollup/plugin-commonjs": "^21.0.1", - "@rollup/plugin-node-resolve": "^13.0.0", - "babel-jest": "^27.2.1", - "babel-plugin-inline-json-import": "^0.3.2", - jest: "^26.0.1", - rollup: "^2.47.0", - "rollup-plugin-inject-process-env": "^1.3.1", - "rollup-plugin-typescript2": "^0.30.0", - typedoc: "^0.22.4", - typescript: "^4.0.2" - }, - browserslist: ["extends @nextcloud/browserslist-config"] -}; - -var ProxyBus = /*#__PURE__*/function () { - function ProxyBus(bus) { - _classCallCheck(this, ProxyBus); - - _defineProperty(this, "bus", void 0); - - if (typeof bus.getVersion !== 'function' || !(0, _valid.default)(bus.getVersion())) { - console.warn('Proxying an event bus with an unknown or invalid version'); - } else if ((0, _major.default)(bus.getVersion()) !== (0, _major.default)(this.getVersion())) { - console.warn('Proxying an event bus of version ' + bus.getVersion() + ' with ' + this.getVersion()); - } - - this.bus = bus; - } - - _createClass(ProxyBus, [{ - key: "getVersion", - value: function getVersion() { - return packageJson.version; - } - }, { - key: "subscribe", - value: function subscribe(name, handler) { - this.bus.subscribe(name, handler); - } - }, { - key: "unsubscribe", - value: function unsubscribe(name, handler) { - this.bus.unsubscribe(name, handler); - } - }, { - key: "emit", - value: function emit(name, event) { - this.bus.emit(name, event); - } - }]); - - return ProxyBus; -}(); - -exports.ProxyBus = ProxyBus; - -/***/ }), - -/***/ "./node_modules/@nextcloud/event-bus/dist/SimpleBus.js": -/*!*************************************************************!*\ - !*** ./node_modules/@nextcloud/event-bus/dist/SimpleBus.js ***! - \*************************************************************/ -/***/ ((__unused_webpack_module, exports, __webpack_require__) => { - -"use strict"; -/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js"); - - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; } - -Object.defineProperty(exports, "__esModule", ({ - value: true -})); -exports.SimpleBus = void 0; - -__webpack_require__(/*! core-js/modules/web.dom-collections.iterator.js */ "./node_modules/core-js/modules/web.dom-collections.iterator.js"); - -function _defineProperty(obj, key, value) { - if (key in obj) { - Object.defineProperty(obj, key, { - value: value, - enumerable: true, - configurable: true, - writable: true - }); - } else { - obj[key] = value; - } - - return obj; -} - -var packageJson = { - name: "@nextcloud/event-bus", - version: "2.1.1", - description: "", - main: "dist/index.js", - types: "dist/index.d.ts", - scripts: { - build: "babel ./lib --out-dir dist --extensions '.ts,.tsx' --source-maps && tsc --emitDeclarationOnly", - "build:doc": "typedoc --out dist/doc lib/index.ts && touch dist/doc/.nojekyll", - "check-types": "tsc", - dev: "babel ./lib --out-dir dist --extensions '.ts,.tsx' --watch", - test: "jest", - "test:watch": "jest --watchAll" - }, - keywords: ["nextcloud"], - homepage: "https://github.com/nextcloud/nextcloud-event-bus#readme", - author: "Christoph Wurst", - license: "GPL-3.0-or-later", - repository: { - type: "git", - url: "https://github.com/nextcloud/nextcloud-event-bus" - }, - dependencies: { - "@types/semver": "^7.1.0", - "core-js": "^3.6.2", - semver: "^7.3.2" - }, - devDependencies: { - "@babel/cli": "^7.6.0", - "@babel/core": "^7.6.0", - "@babel/plugin-proposal-class-properties": "^7.5.5", - "@babel/preset-env": "^7.6.0", - "@babel/preset-typescript": "^7.6.0", - "@nextcloud/browserslist-config": "^2.1.0", - "@rollup/plugin-babel": "^5.3.0", - "@rollup/plugin-commonjs": "^21.0.1", - "@rollup/plugin-node-resolve": "^13.0.0", - "babel-jest": "^27.2.1", - "babel-plugin-inline-json-import": "^0.3.2", - jest: "^26.0.1", - rollup: "^2.47.0", - "rollup-plugin-inject-process-env": "^1.3.1", - "rollup-plugin-typescript2": "^0.30.0", - typedoc: "^0.22.4", - typescript: "^4.0.2" - }, - browserslist: ["extends @nextcloud/browserslist-config"] -}; - -var SimpleBus = /*#__PURE__*/function () { - function SimpleBus() { - _classCallCheck(this, SimpleBus); - - _defineProperty(this, "handlers", new Map()); - } - - _createClass(SimpleBus, [{ - key: "getVersion", - value: function getVersion() { - return packageJson.version; - } - }, { - key: "subscribe", - value: function subscribe(name, handler) { - this.handlers.set(name, (this.handlers.get(name) || []).concat(handler)); - } - }, { - key: "unsubscribe", - value: function unsubscribe(name, handler) { - this.handlers.set(name, (this.handlers.get(name) || []).filter(function (h) { - return h != handler; - })); - } - }, { - key: "emit", - value: function emit(name, event) { - (this.handlers.get(name) || []).forEach(function (h) { - try { - h(event); - } catch (e) { - console.error('could not invoke event listener', e); - } - }); - } - }]); - - return SimpleBus; -}(); - -exports.SimpleBus = SimpleBus; - -/***/ }), - -/***/ "./node_modules/@nextcloud/event-bus/dist/index.js": -/*!*********************************************************!*\ - !*** ./node_modules/@nextcloud/event-bus/dist/index.js ***! - \*********************************************************/ -/***/ ((__unused_webpack_module, exports, __webpack_require__) => { - -"use strict"; -/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js"); - - -Object.defineProperty(exports, "__esModule", ({ - value: true -})); -exports.emit = emit; -exports.subscribe = subscribe; -exports.unsubscribe = unsubscribe; - -var _ProxyBus = __webpack_require__(/*! ./ProxyBus */ "./node_modules/@nextcloud/event-bus/dist/ProxyBus.js"); - -var _SimpleBus = __webpack_require__(/*! ./SimpleBus */ "./node_modules/@nextcloud/event-bus/dist/SimpleBus.js"); - -function getBus() { - if (typeof window.OC !== 'undefined' && window.OC._eventBus && typeof window._nc_event_bus === 'undefined') { - console.warn('found old event bus instance at OC._eventBus. Update your version!'); - window._nc_event_bus = window.OC._eventBus; - } // Either use an existing event bus instance or create one - - - if (typeof window._nc_event_bus !== 'undefined') { - return new _ProxyBus.ProxyBus(window._nc_event_bus); - } else { - return window._nc_event_bus = new _SimpleBus.SimpleBus(); - } -} - -var bus = getBus(); -/** - * Register an event listener - * - * @param name name of the event - * @param handler callback invoked for every matching event emitted on the bus - */ - -function subscribe(name, handler) { - bus.subscribe(name, handler); -} -/** - * Unregister a previously registered event listener - * - * Note: doesn't work with anonymous functions (closures). Use method of an object or store listener function in variable. - * - * @param name name of the event - * @param handler callback passed to `subscribed` - */ - - -function unsubscribe(name, handler) { - bus.unsubscribe(name, handler); -} -/** - * Emit an event - * - * @param name name of the event - * @param event event payload - */ - - -function emit(name, event) { - bus.emit(name, event); -} - -/***/ }), - -/***/ "./node_modules/@nextcloud/event-bus/node_modules/semver/classes/semver.js": -/*!*********************************************************************************!*\ - !*** ./node_modules/@nextcloud/event-bus/node_modules/semver/classes/semver.js ***! - \*********************************************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; } - -var debug = __webpack_require__(/*! ../internal/debug */ "./node_modules/@nextcloud/event-bus/node_modules/semver/internal/debug.js"); - -var _require = __webpack_require__(/*! ../internal/constants */ "./node_modules/@nextcloud/event-bus/node_modules/semver/internal/constants.js"), - MAX_LENGTH = _require.MAX_LENGTH, - MAX_SAFE_INTEGER = _require.MAX_SAFE_INTEGER; - -var _require2 = __webpack_require__(/*! ../internal/re */ "./node_modules/@nextcloud/event-bus/node_modules/semver/internal/re.js"), - re = _require2.re, - t = _require2.t; - -var _require3 = __webpack_require__(/*! ../internal/identifiers */ "./node_modules/@nextcloud/event-bus/node_modules/semver/internal/identifiers.js"), - compareIdentifiers = _require3.compareIdentifiers; - -var SemVer = /*#__PURE__*/function () { - function SemVer(version, options) { - _classCallCheck(this, SemVer); - - if (!options || _typeof(options) !== 'object') { - options = { - loose: !!options, - includePrerelease: false - }; - } - - if (version instanceof SemVer) { - if (version.loose === !!options.loose && version.includePrerelease === !!options.includePrerelease) { - return version; - } else { - version = version.version; - } - } else if (typeof version !== 'string') { - throw new TypeError("Invalid Version: ".concat(version)); - } - - if (version.length > MAX_LENGTH) { - throw new TypeError("version is longer than ".concat(MAX_LENGTH, " characters")); - } - - debug('SemVer', version, options); - this.options = options; - this.loose = !!options.loose; // this isn't actually relevant for versions, but keep it so that we - // don't run into trouble passing this.options around. - - this.includePrerelease = !!options.includePrerelease; - var m = version.trim().match(options.loose ? re[t.LOOSE] : re[t.FULL]); - - if (!m) { - throw new TypeError("Invalid Version: ".concat(version)); - } - - this.raw = version; // these are actually numbers - - this.major = +m[1]; - this.minor = +m[2]; - this.patch = +m[3]; - - if (this.major > MAX_SAFE_INTEGER || this.major < 0) { - throw new TypeError('Invalid major version'); - } - - if (this.minor > MAX_SAFE_INTEGER || this.minor < 0) { - throw new TypeError('Invalid minor version'); - } - - if (this.patch > MAX_SAFE_INTEGER || this.patch < 0) { - throw new TypeError('Invalid patch version'); - } // numberify any prerelease numeric ids - - - if (!m[4]) { - this.prerelease = []; - } else { - this.prerelease = m[4].split('.').map(function (id) { - if (/^[0-9]+$/.test(id)) { - var num = +id; - - if (num >= 0 && num < MAX_SAFE_INTEGER) { - return num; - } - } - - return id; - }); - } - - this.build = m[5] ? m[5].split('.') : []; - this.format(); - } - - _createClass(SemVer, [{ - key: "format", - value: function format() { - this.version = "".concat(this.major, ".").concat(this.minor, ".").concat(this.patch); - - if (this.prerelease.length) { - this.version += "-".concat(this.prerelease.join('.')); - } - - return this.version; - } - }, { - key: "toString", - value: function toString() { - return this.version; - } - }, { - key: "compare", - value: function compare(other) { - debug('SemVer.compare', this.version, this.options, other); - - if (!(other instanceof SemVer)) { - if (typeof other === 'string' && other === this.version) { - return 0; - } - - other = new SemVer(other, this.options); - } - - if (other.version === this.version) { - return 0; - } - - return this.compareMain(other) || this.comparePre(other); - } - }, { - key: "compareMain", - value: function compareMain(other) { - if (!(other instanceof SemVer)) { - other = new SemVer(other, this.options); - } - - return compareIdentifiers(this.major, other.major) || compareIdentifiers(this.minor, other.minor) || compareIdentifiers(this.patch, other.patch); - } - }, { - key: "comparePre", - value: function comparePre(other) { - if (!(other instanceof SemVer)) { - other = new SemVer(other, this.options); - } // NOT having a prerelease is > having one - - - if (this.prerelease.length && !other.prerelease.length) { - return -1; - } else if (!this.prerelease.length && other.prerelease.length) { - return 1; - } else if (!this.prerelease.length && !other.prerelease.length) { - return 0; - } - - var i = 0; - - do { - var a = this.prerelease[i]; - var b = other.prerelease[i]; - debug('prerelease compare', i, a, b); - - if (a === undefined && b === undefined) { - return 0; - } else if (b === undefined) { - return 1; - } else if (a === undefined) { - return -1; - } else if (a === b) { - continue; - } else { - return compareIdentifiers(a, b); - } - } while (++i); - } - }, { - key: "compareBuild", - value: function compareBuild(other) { - if (!(other instanceof SemVer)) { - other = new SemVer(other, this.options); - } - - var i = 0; - - do { - var a = this.build[i]; - var b = other.build[i]; - debug('prerelease compare', i, a, b); - - if (a === undefined && b === undefined) { - return 0; - } else if (b === undefined) { - return 1; - } else if (a === undefined) { - return -1; - } else if (a === b) { - continue; - } else { - return compareIdentifiers(a, b); - } - } while (++i); - } // preminor will bump the version up to the next minor release, and immediately - // down to pre-release. premajor and prepatch work the same way. - - }, { - key: "inc", - value: function inc(release, identifier) { - switch (release) { - case 'premajor': - this.prerelease.length = 0; - this.patch = 0; - this.minor = 0; - this.major++; - this.inc('pre', identifier); - break; - - case 'preminor': - this.prerelease.length = 0; - this.patch = 0; - this.minor++; - this.inc('pre', identifier); - break; - - case 'prepatch': - // If this is already a prerelease, it will bump to the next version - // drop any prereleases that might already exist, since they are not - // relevant at this point. - this.prerelease.length = 0; - this.inc('patch', identifier); - this.inc('pre', identifier); - break; - // If the input is a non-prerelease version, this acts the same as - // prepatch. - - case 'prerelease': - if (this.prerelease.length === 0) { - this.inc('patch', identifier); - } - - this.inc('pre', identifier); - break; - - case 'major': - // If this is a pre-major version, bump up to the same major version. - // Otherwise increment major. - // 1.0.0-5 bumps to 1.0.0 - // 1.1.0 bumps to 2.0.0 - if (this.minor !== 0 || this.patch !== 0 || this.prerelease.length === 0) { - this.major++; - } - - this.minor = 0; - this.patch = 0; - this.prerelease = []; - break; - - case 'minor': - // If this is a pre-minor version, bump up to the same minor version. - // Otherwise increment minor. - // 1.2.0-5 bumps to 1.2.0 - // 1.2.1 bumps to 1.3.0 - if (this.patch !== 0 || this.prerelease.length === 0) { - this.minor++; - } - - this.patch = 0; - this.prerelease = []; - break; - - case 'patch': - // If this is not a pre-release version, it will increment the patch. - // If it is a pre-release it will bump up to the same patch version. - // 1.2.0-5 patches to 1.2.0 - // 1.2.0 patches to 1.2.1 - if (this.prerelease.length === 0) { - this.patch++; - } - - this.prerelease = []; - break; - // This probably shouldn't be used publicly. - // 1.0.0 'pre' would become 1.0.0-0 which is the wrong direction. - - case 'pre': - if (this.prerelease.length === 0) { - this.prerelease = [0]; - } else { - var i = this.prerelease.length; - - while (--i >= 0) { - if (typeof this.prerelease[i] === 'number') { - this.prerelease[i]++; - i = -2; - } - } - - if (i === -1) { - // didn't increment anything - this.prerelease.push(0); - } - } - - if (identifier) { - // 1.2.0-beta.1 bumps to 1.2.0-beta.2, - // 1.2.0-beta.fooblz or 1.2.0-beta bumps to 1.2.0-beta.0 - if (this.prerelease[0] === identifier) { - if (isNaN(this.prerelease[1])) { - this.prerelease = [identifier, 0]; - } - } else { - this.prerelease = [identifier, 0]; - } - } - - break; - - default: - throw new Error("invalid increment argument: ".concat(release)); - } - - this.format(); - this.raw = this.version; - return this; - } - }]); - - return SemVer; -}(); - -module.exports = SemVer; - -/***/ }), - -/***/ "./node_modules/@nextcloud/event-bus/node_modules/semver/functions/major.js": -/*!**********************************************************************************!*\ - !*** ./node_modules/@nextcloud/event-bus/node_modules/semver/functions/major.js ***! - \**********************************************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var SemVer = __webpack_require__(/*! ../classes/semver */ "./node_modules/@nextcloud/event-bus/node_modules/semver/classes/semver.js"); - -var major = function major(a, loose) { - return new SemVer(a, loose).major; -}; - -module.exports = major; - -/***/ }), - -/***/ "./node_modules/@nextcloud/event-bus/node_modules/semver/functions/parse.js": -/*!**********************************************************************************!*\ - !*** ./node_modules/@nextcloud/event-bus/node_modules/semver/functions/parse.js ***! - \**********************************************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } - -var _require = __webpack_require__(/*! ../internal/constants */ "./node_modules/@nextcloud/event-bus/node_modules/semver/internal/constants.js"), - MAX_LENGTH = _require.MAX_LENGTH; - -var _require2 = __webpack_require__(/*! ../internal/re */ "./node_modules/@nextcloud/event-bus/node_modules/semver/internal/re.js"), - re = _require2.re, - t = _require2.t; - -var SemVer = __webpack_require__(/*! ../classes/semver */ "./node_modules/@nextcloud/event-bus/node_modules/semver/classes/semver.js"); - -var parse = function parse(version, options) { - if (!options || _typeof(options) !== 'object') { - options = { - loose: !!options, - includePrerelease: false - }; - } - - if (version instanceof SemVer) { - return version; - } - - if (typeof version !== 'string') { - return null; - } - - if (version.length > MAX_LENGTH) { - return null; - } - - var r = options.loose ? re[t.LOOSE] : re[t.FULL]; - - if (!r.test(version)) { - return null; - } - - try { - return new SemVer(version, options); - } catch (er) { - return null; - } -}; - -module.exports = parse; - -/***/ }), - -/***/ "./node_modules/@nextcloud/event-bus/node_modules/semver/functions/valid.js": -/*!**********************************************************************************!*\ - !*** ./node_modules/@nextcloud/event-bus/node_modules/semver/functions/valid.js ***! - \**********************************************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var parse = __webpack_require__(/*! ./parse */ "./node_modules/@nextcloud/event-bus/node_modules/semver/functions/parse.js"); - -var valid = function valid(version, options) { - var v = parse(version, options); - return v ? v.version : null; -}; - -module.exports = valid; - -/***/ }), - -/***/ "./node_modules/@nextcloud/event-bus/node_modules/semver/internal/constants.js": -/*!*************************************************************************************!*\ - !*** ./node_modules/@nextcloud/event-bus/node_modules/semver/internal/constants.js ***! - \*************************************************************************************/ -/***/ ((module) => { - -// Note: this is the semver.org version of the spec that it implements -// Not necessarily the package version of this code. -var SEMVER_SPEC_VERSION = '2.0.0'; -var MAX_LENGTH = 256; -var MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER || -/* istanbul ignore next */ -9007199254740991; // Max safe segment length for coercion. - -var MAX_SAFE_COMPONENT_LENGTH = 16; -module.exports = { - SEMVER_SPEC_VERSION: SEMVER_SPEC_VERSION, - MAX_LENGTH: MAX_LENGTH, - MAX_SAFE_INTEGER: MAX_SAFE_INTEGER, - MAX_SAFE_COMPONENT_LENGTH: MAX_SAFE_COMPONENT_LENGTH -}; - -/***/ }), - -/***/ "./node_modules/@nextcloud/event-bus/node_modules/semver/internal/debug.js": -/*!*********************************************************************************!*\ - !*** ./node_modules/@nextcloud/event-bus/node_modules/semver/internal/debug.js ***! - \*********************************************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -/* provided dependency */ var process = __webpack_require__(/*! ./node_modules/process/browser.js */ "./node_modules/process/browser.js"); -/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js"); -function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } - -var debug = (typeof process === "undefined" ? "undefined" : _typeof(process)) === 'object' && process.env && process.env.NODE_DEBUG && /\bsemver\b/i.test(process.env.NODE_DEBUG) ? function () { - var _console; - - for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { - args[_key] = arguments[_key]; - } - - return (_console = console).error.apply(_console, ['SEMVER'].concat(args)); -} : function () {}; -module.exports = debug; - -/***/ }), - -/***/ "./node_modules/@nextcloud/event-bus/node_modules/semver/internal/identifiers.js": -/*!***************************************************************************************!*\ - !*** ./node_modules/@nextcloud/event-bus/node_modules/semver/internal/identifiers.js ***! - \***************************************************************************************/ -/***/ ((module) => { - -var numeric = /^[0-9]+$/; - -var compareIdentifiers = function compareIdentifiers(a, b) { - var anum = numeric.test(a); - var bnum = numeric.test(b); - - if (anum && bnum) { - a = +a; - b = +b; - } - - return a === b ? 0 : anum && !bnum ? -1 : bnum && !anum ? 1 : a < b ? -1 : 1; -}; - -var rcompareIdentifiers = function rcompareIdentifiers(a, b) { - return compareIdentifiers(b, a); -}; - -module.exports = { - compareIdentifiers: compareIdentifiers, - rcompareIdentifiers: rcompareIdentifiers -}; - -/***/ }), - -/***/ "./node_modules/@nextcloud/event-bus/node_modules/semver/internal/re.js": -/*!******************************************************************************!*\ - !*** ./node_modules/@nextcloud/event-bus/node_modules/semver/internal/re.js ***! - \******************************************************************************/ -/***/ ((module, exports, __webpack_require__) => { - -var _require = __webpack_require__(/*! ./constants */ "./node_modules/@nextcloud/event-bus/node_modules/semver/internal/constants.js"), - MAX_SAFE_COMPONENT_LENGTH = _require.MAX_SAFE_COMPONENT_LENGTH; - -var debug = __webpack_require__(/*! ./debug */ "./node_modules/@nextcloud/event-bus/node_modules/semver/internal/debug.js"); - -exports = module.exports = {}; // The actual regexps go on exports.re - -var re = exports.re = []; -var src = exports.src = []; -var t = exports.t = {}; -var R = 0; - -var createToken = function createToken(name, value, isGlobal) { - var index = R++; - debug(index, value); - t[name] = index; - src[index] = value; - re[index] = new RegExp(value, isGlobal ? 'g' : undefined); -}; // The following Regular Expressions can be used for tokenizing, -// validating, and parsing SemVer version strings. -// ## Numeric Identifier -// A single `0`, or a non-zero digit followed by zero or more digits. - - -createToken('NUMERICIDENTIFIER', '0|[1-9]\\d*'); -createToken('NUMERICIDENTIFIERLOOSE', '[0-9]+'); // ## Non-numeric Identifier -// Zero or more digits, followed by a letter or hyphen, and then zero or -// more letters, digits, or hyphens. - -createToken('NONNUMERICIDENTIFIER', '\\d*[a-zA-Z-][a-zA-Z0-9-]*'); // ## Main Version -// Three dot-separated numeric identifiers. - -createToken('MAINVERSION', "(".concat(src[t.NUMERICIDENTIFIER], ")\\.") + "(".concat(src[t.NUMERICIDENTIFIER], ")\\.") + "(".concat(src[t.NUMERICIDENTIFIER], ")")); -createToken('MAINVERSIONLOOSE', "(".concat(src[t.NUMERICIDENTIFIERLOOSE], ")\\.") + "(".concat(src[t.NUMERICIDENTIFIERLOOSE], ")\\.") + "(".concat(src[t.NUMERICIDENTIFIERLOOSE], ")")); // ## Pre-release Version Identifier -// A numeric identifier, or a non-numeric identifier. - -createToken('PRERELEASEIDENTIFIER', "(?:".concat(src[t.NUMERICIDENTIFIER], "|").concat(src[t.NONNUMERICIDENTIFIER], ")")); -createToken('PRERELEASEIDENTIFIERLOOSE', "(?:".concat(src[t.NUMERICIDENTIFIERLOOSE], "|").concat(src[t.NONNUMERICIDENTIFIER], ")")); // ## Pre-release Version -// Hyphen, followed by one or more dot-separated pre-release version -// identifiers. - -createToken('PRERELEASE', "(?:-(".concat(src[t.PRERELEASEIDENTIFIER], "(?:\\.").concat(src[t.PRERELEASEIDENTIFIER], ")*))")); -createToken('PRERELEASELOOSE', "(?:-?(".concat(src[t.PRERELEASEIDENTIFIERLOOSE], "(?:\\.").concat(src[t.PRERELEASEIDENTIFIERLOOSE], ")*))")); // ## Build Metadata Identifier -// Any combination of digits, letters, or hyphens. - -createToken('BUILDIDENTIFIER', '[0-9A-Za-z-]+'); // ## Build Metadata -// Plus sign, followed by one or more period-separated build metadata -// identifiers. - -createToken('BUILD', "(?:\\+(".concat(src[t.BUILDIDENTIFIER], "(?:\\.").concat(src[t.BUILDIDENTIFIER], ")*))")); // ## Full Version String -// A main version, followed optionally by a pre-release version and -// build metadata. -// Note that the only major, minor, patch, and pre-release sections of -// the version string are capturing groups. The build metadata is not a -// capturing group, because it should not ever be used in version -// comparison. - -createToken('FULLPLAIN', "v?".concat(src[t.MAINVERSION]).concat(src[t.PRERELEASE], "?").concat(src[t.BUILD], "?")); -createToken('FULL', "^".concat(src[t.FULLPLAIN], "$")); // like full, but allows v1.2.3 and =1.2.3, which people do sometimes. -// also, 1.0.0alpha1 (prerelease without the hyphen) which is pretty -// common in the npm registry. - -createToken('LOOSEPLAIN', "[v=\\s]*".concat(src[t.MAINVERSIONLOOSE]).concat(src[t.PRERELEASELOOSE], "?").concat(src[t.BUILD], "?")); -createToken('LOOSE', "^".concat(src[t.LOOSEPLAIN], "$")); -createToken('GTLT', '((?:<|>)?=?)'); // Something like "2.*" or "1.2.x". -// Note that "x.x" is a valid xRange identifer, meaning "any version" -// Only the first item is strictly required. - -createToken('XRANGEIDENTIFIERLOOSE', "".concat(src[t.NUMERICIDENTIFIERLOOSE], "|x|X|\\*")); -createToken('XRANGEIDENTIFIER', "".concat(src[t.NUMERICIDENTIFIER], "|x|X|\\*")); -createToken('XRANGEPLAIN', "[v=\\s]*(".concat(src[t.XRANGEIDENTIFIER], ")") + "(?:\\.(".concat(src[t.XRANGEIDENTIFIER], ")") + "(?:\\.(".concat(src[t.XRANGEIDENTIFIER], ")") + "(?:".concat(src[t.PRERELEASE], ")?").concat(src[t.BUILD], "?") + ")?)?"); -createToken('XRANGEPLAINLOOSE', "[v=\\s]*(".concat(src[t.XRANGEIDENTIFIERLOOSE], ")") + "(?:\\.(".concat(src[t.XRANGEIDENTIFIERLOOSE], ")") + "(?:\\.(".concat(src[t.XRANGEIDENTIFIERLOOSE], ")") + "(?:".concat(src[t.PRERELEASELOOSE], ")?").concat(src[t.BUILD], "?") + ")?)?"); -createToken('XRANGE', "^".concat(src[t.GTLT], "\\s*").concat(src[t.XRANGEPLAIN], "$")); -createToken('XRANGELOOSE', "^".concat(src[t.GTLT], "\\s*").concat(src[t.XRANGEPLAINLOOSE], "$")); // Coercion. -// Extract anything that could conceivably be a part of a valid semver - -createToken('COERCE', "".concat('(^|[^\\d])' + '(\\d{1,').concat(MAX_SAFE_COMPONENT_LENGTH, "})") + "(?:\\.(\\d{1,".concat(MAX_SAFE_COMPONENT_LENGTH, "}))?") + "(?:\\.(\\d{1,".concat(MAX_SAFE_COMPONENT_LENGTH, "}))?") + "(?:$|[^\\d])"); -createToken('COERCERTL', src[t.COERCE], true); // Tilde ranges. -// Meaning is "reasonably at or greater than" - -createToken('LONETILDE', '(?:~>?)'); -createToken('TILDETRIM', "(\\s*)".concat(src[t.LONETILDE], "\\s+"), true); -exports.tildeTrimReplace = '$1~'; -createToken('TILDE', "^".concat(src[t.LONETILDE]).concat(src[t.XRANGEPLAIN], "$")); -createToken('TILDELOOSE', "^".concat(src[t.LONETILDE]).concat(src[t.XRANGEPLAINLOOSE], "$")); // Caret ranges. -// Meaning is "at least and backwards compatible with" - -createToken('LONECARET', '(?:\\^)'); -createToken('CARETTRIM', "(\\s*)".concat(src[t.LONECARET], "\\s+"), true); -exports.caretTrimReplace = '$1^'; -createToken('CARET', "^".concat(src[t.LONECARET]).concat(src[t.XRANGEPLAIN], "$")); -createToken('CARETLOOSE', "^".concat(src[t.LONECARET]).concat(src[t.XRANGEPLAINLOOSE], "$")); // A simple gt/lt/eq thing, or just "" to indicate "any version" - -createToken('COMPARATORLOOSE', "^".concat(src[t.GTLT], "\\s*(").concat(src[t.LOOSEPLAIN], ")$|^$")); -createToken('COMPARATOR', "^".concat(src[t.GTLT], "\\s*(").concat(src[t.FULLPLAIN], ")$|^$")); // An expression to strip any whitespace between the gtlt and the thing -// it modifies, so that `> 1.2.3` ==> `>1.2.3` - -createToken('COMPARATORTRIM', "(\\s*)".concat(src[t.GTLT], "\\s*(").concat(src[t.LOOSEPLAIN], "|").concat(src[t.XRANGEPLAIN], ")"), true); -exports.comparatorTrimReplace = '$1$2$3'; // Something like `1.2.3 - 1.2.4` -// Note that these all use the loose form, because they'll be -// checked against either the strict or loose comparator form -// later. - -createToken('HYPHENRANGE', "^\\s*(".concat(src[t.XRANGEPLAIN], ")") + "\\s+-\\s+" + "(".concat(src[t.XRANGEPLAIN], ")") + "\\s*$"); -createToken('HYPHENRANGELOOSE', "^\\s*(".concat(src[t.XRANGEPLAINLOOSE], ")") + "\\s+-\\s+" + "(".concat(src[t.XRANGEPLAINLOOSE], ")") + "\\s*$"); // Star ranges basically just allow anything at all. - -createToken('STAR', '(<|>)?=?\\s*\\*'); // >=0.0.0 is like a star - -createToken('GTE0', '^\\s*>=\\s*0\.0\.0\\s*$'); -createToken('GTE0PRE', '^\\s*>=\\s*0\.0\.0-0\\s*$'); - -/***/ }), - -/***/ "./node_modules/core-js/modules/web.dom-collections.iterator.js": -/*!**********************************************************************!*\ - !*** ./node_modules/core-js/modules/web.dom-collections.iterator.js ***! - \**********************************************************************/ -/***/ (() => { - -throw new Error("Module build failed: Error: ENOENT: no such file or directory, open '/home/admin/Docker/apps2/photos/node_modules/core-js/modules/web.dom-collections.iterator.js'"); - -/***/ }) - -}]); -//# sourceMappingURL=photos-vendors-node_modules_nextcloud_event-bus_dist_index_js.js.map?v=112988fd7d1acb6ae8ee \ No newline at end of file diff --git a/js/photos-vendors-node_modules_nextcloud_event-bus_dist_index_js.js.map b/js/photos-vendors-node_modules_nextcloud_event-bus_dist_index_js.js.map deleted file mode 100644 index a5f4881c4..000000000 --- a/js/photos-vendors-node_modules_nextcloud_event-bus_dist_index_js.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-vendors-node_modules_nextcloud_event-bus_dist_index_js.js?v=112988fd7d1acb6ae8ee","mappings":";;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;AC/HA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACvHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;AC7DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;AC3UA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;AC5CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;ACrBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sources":["webpack:///photos/node_modules/@nextcloud/event-bus/dist/ProxyBus.js","webpack:///photos/node_modules/@nextcloud/event-bus/dist/SimpleBus.js","webpack:///photos/node_modules/@nextcloud/event-bus/dist/index.js","webpack:///photos/node_modules/@nextcloud/event-bus/node_modules/semver/classes/semver.js","webpack:///photos/node_modules/@nextcloud/event-bus/node_modules/semver/functions/major.js","webpack:///photos/node_modules/@nextcloud/event-bus/node_modules/semver/functions/parse.js","webpack:///photos/node_modules/@nextcloud/event-bus/node_modules/semver/functions/valid.js","webpack:///photos/node_modules/@nextcloud/event-bus/node_modules/semver/internal/constants.js","webpack:///photos/node_modules/@nextcloud/event-bus/node_modules/semver/internal/debug.js","webpack:///photos/node_modules/@nextcloud/event-bus/node_modules/semver/internal/identifiers.js","webpack:///photos/node_modules/@nextcloud/event-bus/node_modules/semver/internal/re.js"],"sourcesContent":["\"use strict\";\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.ProxyBus = void 0;\n\nvar _valid = _interopRequireDefault(require(\"semver/functions/valid\"));\n\nvar _major = _interopRequireDefault(require(\"semver/functions/major\"));\n\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nvar packageJson = {\n name: \"@nextcloud/event-bus\",\n version: \"2.1.1\",\n description: \"\",\n main: \"dist/index.js\",\n types: \"dist/index.d.ts\",\n scripts: {\n build: \"babel ./lib --out-dir dist --extensions '.ts,.tsx' --source-maps && tsc --emitDeclarationOnly\",\n \"build:doc\": \"typedoc --out dist/doc lib/index.ts && touch dist/doc/.nojekyll\",\n \"check-types\": \"tsc\",\n dev: \"babel ./lib --out-dir dist --extensions '.ts,.tsx' --watch\",\n test: \"jest\",\n \"test:watch\": \"jest --watchAll\"\n },\n keywords: [\"nextcloud\"],\n homepage: \"https://github.com/nextcloud/nextcloud-event-bus#readme\",\n author: \"Christoph Wurst\",\n license: \"GPL-3.0-or-later\",\n repository: {\n type: \"git\",\n url: \"https://github.com/nextcloud/nextcloud-event-bus\"\n },\n dependencies: {\n \"@types/semver\": \"^7.1.0\",\n \"core-js\": \"^3.6.2\",\n semver: \"^7.3.2\"\n },\n devDependencies: {\n \"@babel/cli\": \"^7.6.0\",\n \"@babel/core\": \"^7.6.0\",\n \"@babel/plugin-proposal-class-properties\": \"^7.5.5\",\n \"@babel/preset-env\": \"^7.6.0\",\n \"@babel/preset-typescript\": \"^7.6.0\",\n \"@nextcloud/browserslist-config\": \"^2.1.0\",\n \"@rollup/plugin-babel\": \"^5.3.0\",\n \"@rollup/plugin-commonjs\": \"^21.0.1\",\n \"@rollup/plugin-node-resolve\": \"^13.0.0\",\n \"babel-jest\": \"^27.2.1\",\n \"babel-plugin-inline-json-import\": \"^0.3.2\",\n jest: \"^26.0.1\",\n rollup: \"^2.47.0\",\n \"rollup-plugin-inject-process-env\": \"^1.3.1\",\n \"rollup-plugin-typescript2\": \"^0.30.0\",\n typedoc: \"^0.22.4\",\n typescript: \"^4.0.2\"\n },\n browserslist: [\"extends @nextcloud/browserslist-config\"]\n};\n\nvar ProxyBus = /*#__PURE__*/function () {\n function ProxyBus(bus) {\n _classCallCheck(this, ProxyBus);\n\n _defineProperty(this, \"bus\", void 0);\n\n if (typeof bus.getVersion !== 'function' || !(0, _valid.default)(bus.getVersion())) {\n console.warn('Proxying an event bus with an unknown or invalid version');\n } else if ((0, _major.default)(bus.getVersion()) !== (0, _major.default)(this.getVersion())) {\n console.warn('Proxying an event bus of version ' + bus.getVersion() + ' with ' + this.getVersion());\n }\n\n this.bus = bus;\n }\n\n _createClass(ProxyBus, [{\n key: \"getVersion\",\n value: function getVersion() {\n return packageJson.version;\n }\n }, {\n key: \"subscribe\",\n value: function subscribe(name, handler) {\n this.bus.subscribe(name, handler);\n }\n }, {\n key: \"unsubscribe\",\n value: function unsubscribe(name, handler) {\n this.bus.unsubscribe(name, handler);\n }\n }, {\n key: \"emit\",\n value: function emit(name, event) {\n this.bus.emit(name, event);\n }\n }]);\n\n return ProxyBus;\n}();\n\nexports.ProxyBus = ProxyBus;","\"use strict\";\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.SimpleBus = void 0;\n\nrequire(\"core-js/modules/web.dom-collections.iterator.js\");\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nvar packageJson = {\n name: \"@nextcloud/event-bus\",\n version: \"2.1.1\",\n description: \"\",\n main: \"dist/index.js\",\n types: \"dist/index.d.ts\",\n scripts: {\n build: \"babel ./lib --out-dir dist --extensions '.ts,.tsx' --source-maps && tsc --emitDeclarationOnly\",\n \"build:doc\": \"typedoc --out dist/doc lib/index.ts && touch dist/doc/.nojekyll\",\n \"check-types\": \"tsc\",\n dev: \"babel ./lib --out-dir dist --extensions '.ts,.tsx' --watch\",\n test: \"jest\",\n \"test:watch\": \"jest --watchAll\"\n },\n keywords: [\"nextcloud\"],\n homepage: \"https://github.com/nextcloud/nextcloud-event-bus#readme\",\n author: \"Christoph Wurst\",\n license: \"GPL-3.0-or-later\",\n repository: {\n type: \"git\",\n url: \"https://github.com/nextcloud/nextcloud-event-bus\"\n },\n dependencies: {\n \"@types/semver\": \"^7.1.0\",\n \"core-js\": \"^3.6.2\",\n semver: \"^7.3.2\"\n },\n devDependencies: {\n \"@babel/cli\": \"^7.6.0\",\n \"@babel/core\": \"^7.6.0\",\n \"@babel/plugin-proposal-class-properties\": \"^7.5.5\",\n \"@babel/preset-env\": \"^7.6.0\",\n \"@babel/preset-typescript\": \"^7.6.0\",\n \"@nextcloud/browserslist-config\": \"^2.1.0\",\n \"@rollup/plugin-babel\": \"^5.3.0\",\n \"@rollup/plugin-commonjs\": \"^21.0.1\",\n \"@rollup/plugin-node-resolve\": \"^13.0.0\",\n \"babel-jest\": \"^27.2.1\",\n \"babel-plugin-inline-json-import\": \"^0.3.2\",\n jest: \"^26.0.1\",\n rollup: \"^2.47.0\",\n \"rollup-plugin-inject-process-env\": \"^1.3.1\",\n \"rollup-plugin-typescript2\": \"^0.30.0\",\n typedoc: \"^0.22.4\",\n typescript: \"^4.0.2\"\n },\n browserslist: [\"extends @nextcloud/browserslist-config\"]\n};\n\nvar SimpleBus = /*#__PURE__*/function () {\n function SimpleBus() {\n _classCallCheck(this, SimpleBus);\n\n _defineProperty(this, \"handlers\", new Map());\n }\n\n _createClass(SimpleBus, [{\n key: \"getVersion\",\n value: function getVersion() {\n return packageJson.version;\n }\n }, {\n key: \"subscribe\",\n value: function subscribe(name, handler) {\n this.handlers.set(name, (this.handlers.get(name) || []).concat(handler));\n }\n }, {\n key: \"unsubscribe\",\n value: function unsubscribe(name, handler) {\n this.handlers.set(name, (this.handlers.get(name) || []).filter(function (h) {\n return h != handler;\n }));\n }\n }, {\n key: \"emit\",\n value: function emit(name, event) {\n (this.handlers.get(name) || []).forEach(function (h) {\n try {\n h(event);\n } catch (e) {\n console.error('could not invoke event listener', e);\n }\n });\n }\n }]);\n\n return SimpleBus;\n}();\n\nexports.SimpleBus = SimpleBus;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.emit = emit;\nexports.subscribe = subscribe;\nexports.unsubscribe = unsubscribe;\n\nvar _ProxyBus = require(\"./ProxyBus\");\n\nvar _SimpleBus = require(\"./SimpleBus\");\n\nfunction getBus() {\n if (typeof window.OC !== 'undefined' && window.OC._eventBus && typeof window._nc_event_bus === 'undefined') {\n console.warn('found old event bus instance at OC._eventBus. Update your version!');\n window._nc_event_bus = window.OC._eventBus;\n } // Either use an existing event bus instance or create one\n\n\n if (typeof window._nc_event_bus !== 'undefined') {\n return new _ProxyBus.ProxyBus(window._nc_event_bus);\n } else {\n return window._nc_event_bus = new _SimpleBus.SimpleBus();\n }\n}\n\nvar bus = getBus();\n/**\n * Register an event listener\n *\n * @param name name of the event\n * @param handler callback invoked for every matching event emitted on the bus\n */\n\nfunction subscribe(name, handler) {\n bus.subscribe(name, handler);\n}\n/**\n * Unregister a previously registered event listener\n *\n * Note: doesn't work with anonymous functions (closures). Use method of an object or store listener function in variable.\n *\n * @param name name of the event\n * @param handler callback passed to `subscribed`\n */\n\n\nfunction unsubscribe(name, handler) {\n bus.unsubscribe(name, handler);\n}\n/**\n * Emit an event\n *\n * @param name name of the event\n * @param event event payload\n */\n\n\nfunction emit(name, event) {\n bus.emit(name, event);\n}","function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\n\nvar debug = require('../internal/debug');\n\nvar _require = require('../internal/constants'),\n MAX_LENGTH = _require.MAX_LENGTH,\n MAX_SAFE_INTEGER = _require.MAX_SAFE_INTEGER;\n\nvar _require2 = require('../internal/re'),\n re = _require2.re,\n t = _require2.t;\n\nvar _require3 = require('../internal/identifiers'),\n compareIdentifiers = _require3.compareIdentifiers;\n\nvar SemVer = /*#__PURE__*/function () {\n function SemVer(version, options) {\n _classCallCheck(this, SemVer);\n\n if (!options || _typeof(options) !== 'object') {\n options = {\n loose: !!options,\n includePrerelease: false\n };\n }\n\n if (version instanceof SemVer) {\n if (version.loose === !!options.loose && version.includePrerelease === !!options.includePrerelease) {\n return version;\n } else {\n version = version.version;\n }\n } else if (typeof version !== 'string') {\n throw new TypeError(\"Invalid Version: \".concat(version));\n }\n\n if (version.length > MAX_LENGTH) {\n throw new TypeError(\"version is longer than \".concat(MAX_LENGTH, \" characters\"));\n }\n\n debug('SemVer', version, options);\n this.options = options;\n this.loose = !!options.loose; // this isn't actually relevant for versions, but keep it so that we\n // don't run into trouble passing this.options around.\n\n this.includePrerelease = !!options.includePrerelease;\n var m = version.trim().match(options.loose ? re[t.LOOSE] : re[t.FULL]);\n\n if (!m) {\n throw new TypeError(\"Invalid Version: \".concat(version));\n }\n\n this.raw = version; // these are actually numbers\n\n this.major = +m[1];\n this.minor = +m[2];\n this.patch = +m[3];\n\n if (this.major > MAX_SAFE_INTEGER || this.major < 0) {\n throw new TypeError('Invalid major version');\n }\n\n if (this.minor > MAX_SAFE_INTEGER || this.minor < 0) {\n throw new TypeError('Invalid minor version');\n }\n\n if (this.patch > MAX_SAFE_INTEGER || this.patch < 0) {\n throw new TypeError('Invalid patch version');\n } // numberify any prerelease numeric ids\n\n\n if (!m[4]) {\n this.prerelease = [];\n } else {\n this.prerelease = m[4].split('.').map(function (id) {\n if (/^[0-9]+$/.test(id)) {\n var num = +id;\n\n if (num >= 0 && num < MAX_SAFE_INTEGER) {\n return num;\n }\n }\n\n return id;\n });\n }\n\n this.build = m[5] ? m[5].split('.') : [];\n this.format();\n }\n\n _createClass(SemVer, [{\n key: \"format\",\n value: function format() {\n this.version = \"\".concat(this.major, \".\").concat(this.minor, \".\").concat(this.patch);\n\n if (this.prerelease.length) {\n this.version += \"-\".concat(this.prerelease.join('.'));\n }\n\n return this.version;\n }\n }, {\n key: \"toString\",\n value: function toString() {\n return this.version;\n }\n }, {\n key: \"compare\",\n value: function compare(other) {\n debug('SemVer.compare', this.version, this.options, other);\n\n if (!(other instanceof SemVer)) {\n if (typeof other === 'string' && other === this.version) {\n return 0;\n }\n\n other = new SemVer(other, this.options);\n }\n\n if (other.version === this.version) {\n return 0;\n }\n\n return this.compareMain(other) || this.comparePre(other);\n }\n }, {\n key: \"compareMain\",\n value: function compareMain(other) {\n if (!(other instanceof SemVer)) {\n other = new SemVer(other, this.options);\n }\n\n return compareIdentifiers(this.major, other.major) || compareIdentifiers(this.minor, other.minor) || compareIdentifiers(this.patch, other.patch);\n }\n }, {\n key: \"comparePre\",\n value: function comparePre(other) {\n if (!(other instanceof SemVer)) {\n other = new SemVer(other, this.options);\n } // NOT having a prerelease is > having one\n\n\n if (this.prerelease.length && !other.prerelease.length) {\n return -1;\n } else if (!this.prerelease.length && other.prerelease.length) {\n return 1;\n } else if (!this.prerelease.length && !other.prerelease.length) {\n return 0;\n }\n\n var i = 0;\n\n do {\n var a = this.prerelease[i];\n var b = other.prerelease[i];\n debug('prerelease compare', i, a, b);\n\n if (a === undefined && b === undefined) {\n return 0;\n } else if (b === undefined) {\n return 1;\n } else if (a === undefined) {\n return -1;\n } else if (a === b) {\n continue;\n } else {\n return compareIdentifiers(a, b);\n }\n } while (++i);\n }\n }, {\n key: \"compareBuild\",\n value: function compareBuild(other) {\n if (!(other instanceof SemVer)) {\n other = new SemVer(other, this.options);\n }\n\n var i = 0;\n\n do {\n var a = this.build[i];\n var b = other.build[i];\n debug('prerelease compare', i, a, b);\n\n if (a === undefined && b === undefined) {\n return 0;\n } else if (b === undefined) {\n return 1;\n } else if (a === undefined) {\n return -1;\n } else if (a === b) {\n continue;\n } else {\n return compareIdentifiers(a, b);\n }\n } while (++i);\n } // preminor will bump the version up to the next minor release, and immediately\n // down to pre-release. premajor and prepatch work the same way.\n\n }, {\n key: \"inc\",\n value: function inc(release, identifier) {\n switch (release) {\n case 'premajor':\n this.prerelease.length = 0;\n this.patch = 0;\n this.minor = 0;\n this.major++;\n this.inc('pre', identifier);\n break;\n\n case 'preminor':\n this.prerelease.length = 0;\n this.patch = 0;\n this.minor++;\n this.inc('pre', identifier);\n break;\n\n case 'prepatch':\n // If this is already a prerelease, it will bump to the next version\n // drop any prereleases that might already exist, since they are not\n // relevant at this point.\n this.prerelease.length = 0;\n this.inc('patch', identifier);\n this.inc('pre', identifier);\n break;\n // If the input is a non-prerelease version, this acts the same as\n // prepatch.\n\n case 'prerelease':\n if (this.prerelease.length === 0) {\n this.inc('patch', identifier);\n }\n\n this.inc('pre', identifier);\n break;\n\n case 'major':\n // If this is a pre-major version, bump up to the same major version.\n // Otherwise increment major.\n // 1.0.0-5 bumps to 1.0.0\n // 1.1.0 bumps to 2.0.0\n if (this.minor !== 0 || this.patch !== 0 || this.prerelease.length === 0) {\n this.major++;\n }\n\n this.minor = 0;\n this.patch = 0;\n this.prerelease = [];\n break;\n\n case 'minor':\n // If this is a pre-minor version, bump up to the same minor version.\n // Otherwise increment minor.\n // 1.2.0-5 bumps to 1.2.0\n // 1.2.1 bumps to 1.3.0\n if (this.patch !== 0 || this.prerelease.length === 0) {\n this.minor++;\n }\n\n this.patch = 0;\n this.prerelease = [];\n break;\n\n case 'patch':\n // If this is not a pre-release version, it will increment the patch.\n // If it is a pre-release it will bump up to the same patch version.\n // 1.2.0-5 patches to 1.2.0\n // 1.2.0 patches to 1.2.1\n if (this.prerelease.length === 0) {\n this.patch++;\n }\n\n this.prerelease = [];\n break;\n // This probably shouldn't be used publicly.\n // 1.0.0 'pre' would become 1.0.0-0 which is the wrong direction.\n\n case 'pre':\n if (this.prerelease.length === 0) {\n this.prerelease = [0];\n } else {\n var i = this.prerelease.length;\n\n while (--i >= 0) {\n if (typeof this.prerelease[i] === 'number') {\n this.prerelease[i]++;\n i = -2;\n }\n }\n\n if (i === -1) {\n // didn't increment anything\n this.prerelease.push(0);\n }\n }\n\n if (identifier) {\n // 1.2.0-beta.1 bumps to 1.2.0-beta.2,\n // 1.2.0-beta.fooblz or 1.2.0-beta bumps to 1.2.0-beta.0\n if (this.prerelease[0] === identifier) {\n if (isNaN(this.prerelease[1])) {\n this.prerelease = [identifier, 0];\n }\n } else {\n this.prerelease = [identifier, 0];\n }\n }\n\n break;\n\n default:\n throw new Error(\"invalid increment argument: \".concat(release));\n }\n\n this.format();\n this.raw = this.version;\n return this;\n }\n }]);\n\n return SemVer;\n}();\n\nmodule.exports = SemVer;","var SemVer = require('../classes/semver');\n\nvar major = function major(a, loose) {\n return new SemVer(a, loose).major;\n};\n\nmodule.exports = major;","function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\n\nvar _require = require('../internal/constants'),\n MAX_LENGTH = _require.MAX_LENGTH;\n\nvar _require2 = require('../internal/re'),\n re = _require2.re,\n t = _require2.t;\n\nvar SemVer = require('../classes/semver');\n\nvar parse = function parse(version, options) {\n if (!options || _typeof(options) !== 'object') {\n options = {\n loose: !!options,\n includePrerelease: false\n };\n }\n\n if (version instanceof SemVer) {\n return version;\n }\n\n if (typeof version !== 'string') {\n return null;\n }\n\n if (version.length > MAX_LENGTH) {\n return null;\n }\n\n var r = options.loose ? re[t.LOOSE] : re[t.FULL];\n\n if (!r.test(version)) {\n return null;\n }\n\n try {\n return new SemVer(version, options);\n } catch (er) {\n return null;\n }\n};\n\nmodule.exports = parse;","var parse = require('./parse');\n\nvar valid = function valid(version, options) {\n var v = parse(version, options);\n return v ? v.version : null;\n};\n\nmodule.exports = valid;","// Note: this is the semver.org version of the spec that it implements\n// Not necessarily the package version of this code.\nvar SEMVER_SPEC_VERSION = '2.0.0';\nvar MAX_LENGTH = 256;\nvar MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER ||\n/* istanbul ignore next */\n9007199254740991; // Max safe segment length for coercion.\n\nvar MAX_SAFE_COMPONENT_LENGTH = 16;\nmodule.exports = {\n SEMVER_SPEC_VERSION: SEMVER_SPEC_VERSION,\n MAX_LENGTH: MAX_LENGTH,\n MAX_SAFE_INTEGER: MAX_SAFE_INTEGER,\n MAX_SAFE_COMPONENT_LENGTH: MAX_SAFE_COMPONENT_LENGTH\n};","function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\n\nvar debug = (typeof process === \"undefined\" ? \"undefined\" : _typeof(process)) === 'object' && process.env && process.env.NODE_DEBUG && /\\bsemver\\b/i.test(process.env.NODE_DEBUG) ? function () {\n var _console;\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return (_console = console).error.apply(_console, ['SEMVER'].concat(args));\n} : function () {};\nmodule.exports = debug;","var numeric = /^[0-9]+$/;\n\nvar compareIdentifiers = function compareIdentifiers(a, b) {\n var anum = numeric.test(a);\n var bnum = numeric.test(b);\n\n if (anum && bnum) {\n a = +a;\n b = +b;\n }\n\n return a === b ? 0 : anum && !bnum ? -1 : bnum && !anum ? 1 : a < b ? -1 : 1;\n};\n\nvar rcompareIdentifiers = function rcompareIdentifiers(a, b) {\n return compareIdentifiers(b, a);\n};\n\nmodule.exports = {\n compareIdentifiers: compareIdentifiers,\n rcompareIdentifiers: rcompareIdentifiers\n};","var _require = require('./constants'),\n MAX_SAFE_COMPONENT_LENGTH = _require.MAX_SAFE_COMPONENT_LENGTH;\n\nvar debug = require('./debug');\n\nexports = module.exports = {}; // The actual regexps go on exports.re\n\nvar re = exports.re = [];\nvar src = exports.src = [];\nvar t = exports.t = {};\nvar R = 0;\n\nvar createToken = function createToken(name, value, isGlobal) {\n var index = R++;\n debug(index, value);\n t[name] = index;\n src[index] = value;\n re[index] = new RegExp(value, isGlobal ? 'g' : undefined);\n}; // The following Regular Expressions can be used for tokenizing,\n// validating, and parsing SemVer version strings.\n// ## Numeric Identifier\n// A single `0`, or a non-zero digit followed by zero or more digits.\n\n\ncreateToken('NUMERICIDENTIFIER', '0|[1-9]\\\\d*');\ncreateToken('NUMERICIDENTIFIERLOOSE', '[0-9]+'); // ## Non-numeric Identifier\n// Zero or more digits, followed by a letter or hyphen, and then zero or\n// more letters, digits, or hyphens.\n\ncreateToken('NONNUMERICIDENTIFIER', '\\\\d*[a-zA-Z-][a-zA-Z0-9-]*'); // ## Main Version\n// Three dot-separated numeric identifiers.\n\ncreateToken('MAINVERSION', \"(\".concat(src[t.NUMERICIDENTIFIER], \")\\\\.\") + \"(\".concat(src[t.NUMERICIDENTIFIER], \")\\\\.\") + \"(\".concat(src[t.NUMERICIDENTIFIER], \")\"));\ncreateToken('MAINVERSIONLOOSE', \"(\".concat(src[t.NUMERICIDENTIFIERLOOSE], \")\\\\.\") + \"(\".concat(src[t.NUMERICIDENTIFIERLOOSE], \")\\\\.\") + \"(\".concat(src[t.NUMERICIDENTIFIERLOOSE], \")\")); // ## Pre-release Version Identifier\n// A numeric identifier, or a non-numeric identifier.\n\ncreateToken('PRERELEASEIDENTIFIER', \"(?:\".concat(src[t.NUMERICIDENTIFIER], \"|\").concat(src[t.NONNUMERICIDENTIFIER], \")\"));\ncreateToken('PRERELEASEIDENTIFIERLOOSE', \"(?:\".concat(src[t.NUMERICIDENTIFIERLOOSE], \"|\").concat(src[t.NONNUMERICIDENTIFIER], \")\")); // ## Pre-release Version\n// Hyphen, followed by one or more dot-separated pre-release version\n// identifiers.\n\ncreateToken('PRERELEASE', \"(?:-(\".concat(src[t.PRERELEASEIDENTIFIER], \"(?:\\\\.\").concat(src[t.PRERELEASEIDENTIFIER], \")*))\"));\ncreateToken('PRERELEASELOOSE', \"(?:-?(\".concat(src[t.PRERELEASEIDENTIFIERLOOSE], \"(?:\\\\.\").concat(src[t.PRERELEASEIDENTIFIERLOOSE], \")*))\")); // ## Build Metadata Identifier\n// Any combination of digits, letters, or hyphens.\n\ncreateToken('BUILDIDENTIFIER', '[0-9A-Za-z-]+'); // ## Build Metadata\n// Plus sign, followed by one or more period-separated build metadata\n// identifiers.\n\ncreateToken('BUILD', \"(?:\\\\+(\".concat(src[t.BUILDIDENTIFIER], \"(?:\\\\.\").concat(src[t.BUILDIDENTIFIER], \")*))\")); // ## Full Version String\n// A main version, followed optionally by a pre-release version and\n// build metadata.\n// Note that the only major, minor, patch, and pre-release sections of\n// the version string are capturing groups. The build metadata is not a\n// capturing group, because it should not ever be used in version\n// comparison.\n\ncreateToken('FULLPLAIN', \"v?\".concat(src[t.MAINVERSION]).concat(src[t.PRERELEASE], \"?\").concat(src[t.BUILD], \"?\"));\ncreateToken('FULL', \"^\".concat(src[t.FULLPLAIN], \"$\")); // like full, but allows v1.2.3 and =1.2.3, which people do sometimes.\n// also, 1.0.0alpha1 (prerelease without the hyphen) which is pretty\n// common in the npm registry.\n\ncreateToken('LOOSEPLAIN', \"[v=\\\\s]*\".concat(src[t.MAINVERSIONLOOSE]).concat(src[t.PRERELEASELOOSE], \"?\").concat(src[t.BUILD], \"?\"));\ncreateToken('LOOSE', \"^\".concat(src[t.LOOSEPLAIN], \"$\"));\ncreateToken('GTLT', '((?:<|>)?=?)'); // Something like \"2.*\" or \"1.2.x\".\n// Note that \"x.x\" is a valid xRange identifer, meaning \"any version\"\n// Only the first item is strictly required.\n\ncreateToken('XRANGEIDENTIFIERLOOSE', \"\".concat(src[t.NUMERICIDENTIFIERLOOSE], \"|x|X|\\\\*\"));\ncreateToken('XRANGEIDENTIFIER', \"\".concat(src[t.NUMERICIDENTIFIER], \"|x|X|\\\\*\"));\ncreateToken('XRANGEPLAIN', \"[v=\\\\s]*(\".concat(src[t.XRANGEIDENTIFIER], \")\") + \"(?:\\\\.(\".concat(src[t.XRANGEIDENTIFIER], \")\") + \"(?:\\\\.(\".concat(src[t.XRANGEIDENTIFIER], \")\") + \"(?:\".concat(src[t.PRERELEASE], \")?\").concat(src[t.BUILD], \"?\") + \")?)?\");\ncreateToken('XRANGEPLAINLOOSE', \"[v=\\\\s]*(\".concat(src[t.XRANGEIDENTIFIERLOOSE], \")\") + \"(?:\\\\.(\".concat(src[t.XRANGEIDENTIFIERLOOSE], \")\") + \"(?:\\\\.(\".concat(src[t.XRANGEIDENTIFIERLOOSE], \")\") + \"(?:\".concat(src[t.PRERELEASELOOSE], \")?\").concat(src[t.BUILD], \"?\") + \")?)?\");\ncreateToken('XRANGE', \"^\".concat(src[t.GTLT], \"\\\\s*\").concat(src[t.XRANGEPLAIN], \"$\"));\ncreateToken('XRANGELOOSE', \"^\".concat(src[t.GTLT], \"\\\\s*\").concat(src[t.XRANGEPLAINLOOSE], \"$\")); // Coercion.\n// Extract anything that could conceivably be a part of a valid semver\n\ncreateToken('COERCE', \"\".concat('(^|[^\\\\d])' + '(\\\\d{1,').concat(MAX_SAFE_COMPONENT_LENGTH, \"})\") + \"(?:\\\\.(\\\\d{1,\".concat(MAX_SAFE_COMPONENT_LENGTH, \"}))?\") + \"(?:\\\\.(\\\\d{1,\".concat(MAX_SAFE_COMPONENT_LENGTH, \"}))?\") + \"(?:$|[^\\\\d])\");\ncreateToken('COERCERTL', src[t.COERCE], true); // Tilde ranges.\n// Meaning is \"reasonably at or greater than\"\n\ncreateToken('LONETILDE', '(?:~>?)');\ncreateToken('TILDETRIM', \"(\\\\s*)\".concat(src[t.LONETILDE], \"\\\\s+\"), true);\nexports.tildeTrimReplace = '$1~';\ncreateToken('TILDE', \"^\".concat(src[t.LONETILDE]).concat(src[t.XRANGEPLAIN], \"$\"));\ncreateToken('TILDELOOSE', \"^\".concat(src[t.LONETILDE]).concat(src[t.XRANGEPLAINLOOSE], \"$\")); // Caret ranges.\n// Meaning is \"at least and backwards compatible with\"\n\ncreateToken('LONECARET', '(?:\\\\^)');\ncreateToken('CARETTRIM', \"(\\\\s*)\".concat(src[t.LONECARET], \"\\\\s+\"), true);\nexports.caretTrimReplace = '$1^';\ncreateToken('CARET', \"^\".concat(src[t.LONECARET]).concat(src[t.XRANGEPLAIN], \"$\"));\ncreateToken('CARETLOOSE', \"^\".concat(src[t.LONECARET]).concat(src[t.XRANGEPLAINLOOSE], \"$\")); // A simple gt/lt/eq thing, or just \"\" to indicate \"any version\"\n\ncreateToken('COMPARATORLOOSE', \"^\".concat(src[t.GTLT], \"\\\\s*(\").concat(src[t.LOOSEPLAIN], \")$|^$\"));\ncreateToken('COMPARATOR', \"^\".concat(src[t.GTLT], \"\\\\s*(\").concat(src[t.FULLPLAIN], \")$|^$\")); // An expression to strip any whitespace between the gtlt and the thing\n// it modifies, so that `> 1.2.3` ==> `>1.2.3`\n\ncreateToken('COMPARATORTRIM', \"(\\\\s*)\".concat(src[t.GTLT], \"\\\\s*(\").concat(src[t.LOOSEPLAIN], \"|\").concat(src[t.XRANGEPLAIN], \")\"), true);\nexports.comparatorTrimReplace = '$1$2$3'; // Something like `1.2.3 - 1.2.4`\n// Note that these all use the loose form, because they'll be\n// checked against either the strict or loose comparator form\n// later.\n\ncreateToken('HYPHENRANGE', \"^\\\\s*(\".concat(src[t.XRANGEPLAIN], \")\") + \"\\\\s+-\\\\s+\" + \"(\".concat(src[t.XRANGEPLAIN], \")\") + \"\\\\s*$\");\ncreateToken('HYPHENRANGELOOSE', \"^\\\\s*(\".concat(src[t.XRANGEPLAINLOOSE], \")\") + \"\\\\s+-\\\\s+\" + \"(\".concat(src[t.XRANGEPLAINLOOSE], \")\") + \"\\\\s*$\"); // Star ranges basically just allow anything at all.\n\ncreateToken('STAR', '(<|>)?=?\\\\s*\\\\*'); // >=0.0.0 is like a star\n\ncreateToken('GTE0', '^\\\\s*>=\\\\s*0\\.0\\.0\\\\s*$');\ncreateToken('GTE0PRE', '^\\\\s*>=\\\\s*0\\.0\\.0-0\\\\s*$');"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-vendors-node_modules_nextcloud_files_dist_index_esm_js-node_modules_nextcloud_upload_dist_ind-645437.js b/js/photos-vendors-node_modules_nextcloud_files_dist_index_esm_js-node_modules_nextcloud_upload_dist_ind-645437.js deleted file mode 100644 index e53f3cded..000000000 --- a/js/photos-vendors-node_modules_nextcloud_files_dist_index_esm_js-node_modules_nextcloud_upload_dist_ind-645437.js +++ /dev/null @@ -1,1049 +0,0 @@ -(self["webpackChunkphotos"] = self["webpackChunkphotos"] || []).push([["vendors-node_modules_nextcloud_files_dist_index_esm_js-node_modules_nextcloud_upload_dist_ind-645437"],{ - -/***/ "./node_modules/@nextcloud/files/dist/index.esm.js": -/*!*********************************************************!*\ - !*** ./node_modules/@nextcloud/files/dist/index.esm.js ***! - \*********************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "addNewFileMenuEntry": () => (/* binding */ addNewFileMenuEntry), -/* harmony export */ "formatFileSize": () => (/* binding */ formatFileSize), -/* harmony export */ "getNewFileMenuEntries": () => (/* binding */ getNewFileMenuEntries), -/* harmony export */ "removeNewFileMenuEntry": () => (/* binding */ removeNewFileMenuEntry) -/* harmony export */ }); -/* harmony import */ var _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/l10n */ "./node_modules/@nextcloud/l10n/dist/index.js"); -/* harmony import */ var _nextcloud_auth__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/auth */ "./node_modules/@nextcloud/auth/dist/index.esm.js"); -/* harmony import */ var _nextcloud_logger__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @nextcloud/logger */ "./node_modules/@nextcloud/logger/dist/index.js"); - - - - -/** - * @copyright 2019 Christoph Wurst - * - * @author Christoph Wurst - * @author John Molakvoæ - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ -const humanList = ['B', 'KB', 'MB', 'GB', 'TB']; -/** - * Format a file size in a human-like format. e.g. 42GB - * - * @param size in bytes - * @param skipSmallSizes avoid rendering tiny sizes and return '< 1 KB' instead - */ -function formatFileSize(size, skipSmallSizes = false) { - if (typeof size === 'string') { - size = Number(size); - } - // Calculate Log with base 1024: size = 1024 ** order - let order = size > 0 ? Math.floor(Math.log(size) / Math.log(1024)) : 0; - // Stay in range of the byte sizes that are defined - order = Math.min(humanList.length - 1, order); - const readableFormat = humanList[order]; - let relativeSize = (size / Math.pow(1024, order)).toFixed(1); - if (skipSmallSizes === true && order === 0) { - if (relativeSize !== '0.0') { - return '< 1 KB'; - } - else { - return '0 KB'; - } - } - if (order < 2) { - relativeSize = parseFloat(relativeSize).toFixed(0); - } - else { - relativeSize = parseFloat(relativeSize).toLocaleString((0,_nextcloud_l10n__WEBPACK_IMPORTED_MODULE_0__.getCanonicalLocale)()); - } - return relativeSize + ' ' + readableFormat; -} - -/** - * @copyright 2019 Christoph Wurst - * - * @author Christoph Wurst - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ -const getLogger = user => { - if (user === null) { - return (0,_nextcloud_logger__WEBPACK_IMPORTED_MODULE_2__.getLoggerBuilder)() - .setApp('files') - .build(); - } - return (0,_nextcloud_logger__WEBPACK_IMPORTED_MODULE_2__.getLoggerBuilder)() - .setApp('files') - .setUid(user.uid) - .build(); -}; -var logger = getLogger((0,_nextcloud_auth__WEBPACK_IMPORTED_MODULE_1__.getCurrentUser)()); - -/** - * @copyright Copyright (c) 2021 John Molakvoæ - * - * @author John Molakvoæ - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ -class NewFileMenu { - _entries = []; - registerEntry(entry) { - this.validateEntry(entry); - this._entries.push(entry); - } - unregisterEntry(entry) { - const entryIndex = typeof entry === 'string' - ? this.getEntryIndex(entry) - : this.getEntryIndex(entry.id); - if (entryIndex === -1) { - logger.warn('Entry not found, nothing removed', { entry, entries: this.getEntries() }); - return; - } - this._entries.splice(entryIndex, 1); - } - /** - * Get the list of registered entries - * - * @param {FileInfo} context the creation context. Usually the current folder FileInfo - */ - getEntries(context) { - if (context) { - return this._entries - .filter(entry => typeof entry.if === 'function' ? entry.if(context) : true); - } - return this._entries; - } - getEntryIndex(id) { - return this._entries.findIndex(entry => entry.id === id); - } - validateEntry(entry) { - if (!entry.id || !entry.displayName || !(entry.iconSvgInline || entry.iconClass)) { - throw new Error('Invalid entry'); - } - if (typeof entry.id !== 'string' - || typeof entry.displayName !== 'string') { - throw new Error('Invalid id or displayName property'); - } - if ((entry.iconClass && typeof entry.iconClass !== 'string') - || (entry.iconSvgInline && typeof entry.iconSvgInline !== 'string')) { - throw new Error('Invalid icon provided'); - } - if (entry.if !== undefined && typeof entry.if !== 'function') { - throw new Error('Invalid if property'); - } - if (entry.templateName && typeof entry.templateName !== 'string') { - throw new Error('Invalid templateName property'); - } - if (entry.handler && typeof entry.handler !== 'function') { - throw new Error('Invalid handler property'); - } - if (!entry.templateName && !entry.handler) { - throw new Error('At least a templateName or a handler must be provided'); - } - if (this.getEntryIndex(entry.id) !== -1) { - throw new Error('Duplicate entry'); - } - } -} -const getNewFileMenu = function () { - if (typeof window._nc_newfilemenu === 'undefined') { - window._nc_newfilemenu = new NewFileMenu(); - logger.debug('NewFileMenu initialized'); - } - return window._nc_newfilemenu; -}; - -/** - * @copyright 2019 Christoph Wurst - * - * @author Christoph Wurst - * @author John Molakvoæ - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ -/** - * Add a new menu entry to the upload manager menu - */ -const addNewFileMenuEntry = function (entry) { - const newFileMenu = getNewFileMenu(); - return newFileMenu.registerEntry(entry); -}; -/** - * Remove a previously registered entry from the upload menu - */ -const removeNewFileMenuEntry = function (entry) { - const newFileMenu = getNewFileMenu(); - return newFileMenu.unregisterEntry(entry); -}; -/** - * Get the list of registered entries from the upload menu - * - * @param {FileInfo} context the creation context. Usually the current folder FileInfo - */ -const getNewFileMenuEntries = function (context) { - const newFileMenu = getNewFileMenu(); - return newFileMenu.getEntries(context); -}; - - -//# sourceMappingURL=index.esm.js.map - - -/***/ }), - -/***/ "./node_modules/@nextcloud/upload/dist/index.esm.js": -/*!**********************************************************!*\ - !*** ./node_modules/@nextcloud/upload/dist/index.esm.js ***! - \**********************************************************/ -/***/ (() => { - -throw new Error("Module build failed: Error: ENOENT: no such file or directory, open '/home/admin/Docker/apps2/photos/node_modules/@nextcloud/upload/dist/index.esm.js'"); - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/AlertCircle.vue": -/*!****************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/AlertCircle.vue ***! - \****************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _AlertCircle_vue_vue_type_template_id_7b52a7d0___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./AlertCircle.vue?vue&type=template&id=7b52a7d0& */ "./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=template&id=7b52a7d0&"); -/* harmony import */ var _AlertCircle_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./AlertCircle.vue?vue&type=script&lang=js& */ "./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=script&lang=js&"); -/* harmony import */ var _vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - - - -/* normalize component */ -; -var component = (0,_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])( - _AlertCircle_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _AlertCircle_vue_vue_type_template_id_7b52a7d0___WEBPACK_IMPORTED_MODULE_0__.render, - _AlertCircle_vue_vue_type_template_id_7b52a7d0___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - null, - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "node_modules/vue-material-design-icons/AlertCircle.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=script&lang=js&": -/*!****************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=script&lang=js& ***! - \****************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: "AlertCircleIcon", - emits: ['click'], - props: { - title: { - type: String, - }, - fillColor: { - type: String, - default: "currentColor" - }, - size: { - type: Number, - default: 24 - } - } -}); - - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/DownloadMultiple.vue": -/*!*********************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/DownloadMultiple.vue ***! - \*********************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _DownloadMultiple_vue_vue_type_template_id_a6391238___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./DownloadMultiple.vue?vue&type=template&id=a6391238& */ "./node_modules/vue-material-design-icons/DownloadMultiple.vue?vue&type=template&id=a6391238&"); -/* harmony import */ var _DownloadMultiple_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./DownloadMultiple.vue?vue&type=script&lang=js& */ "./node_modules/vue-material-design-icons/DownloadMultiple.vue?vue&type=script&lang=js&"); -/* harmony import */ var _vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - - - -/* normalize component */ -; -var component = (0,_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])( - _DownloadMultiple_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _DownloadMultiple_vue_vue_type_template_id_a6391238___WEBPACK_IMPORTED_MODULE_0__.render, - _DownloadMultiple_vue_vue_type_template_id_a6391238___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - null, - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "node_modules/vue-material-design-icons/DownloadMultiple.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/DownloadMultiple.vue?vue&type=script&lang=js&": -/*!*********************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/DownloadMultiple.vue?vue&type=script&lang=js& ***! - \*********************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: "DownloadMultipleIcon", - emits: ['click'], - props: { - title: { - type: String, - }, - fillColor: { - type: String, - default: "currentColor" - }, - size: { - type: Number, - default: 24 - } - } -}); - - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/ImagePlus.vue": -/*!**************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/ImagePlus.vue ***! - \**************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _ImagePlus_vue_vue_type_template_id_29baae99___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./ImagePlus.vue?vue&type=template&id=29baae99& */ "./node_modules/vue-material-design-icons/ImagePlus.vue?vue&type=template&id=29baae99&"); -/* harmony import */ var _ImagePlus_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./ImagePlus.vue?vue&type=script&lang=js& */ "./node_modules/vue-material-design-icons/ImagePlus.vue?vue&type=script&lang=js&"); -/* harmony import */ var _vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - - - -/* normalize component */ -; -var component = (0,_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])( - _ImagePlus_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _ImagePlus_vue_vue_type_template_id_29baae99___WEBPACK_IMPORTED_MODULE_0__.render, - _ImagePlus_vue_vue_type_template_id_29baae99___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - null, - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "node_modules/vue-material-design-icons/ImagePlus.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/ImagePlus.vue?vue&type=script&lang=js&": -/*!**************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/ImagePlus.vue?vue&type=script&lang=js& ***! - \**************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: "ImagePlusIcon", - emits: ['click'], - props: { - title: { - type: String, - }, - fillColor: { - type: String, - default: "currentColor" - }, - size: { - type: Number, - default: 24 - } - } -}); - - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/Upload.vue": -/*!***********************************************************!*\ - !*** ./node_modules/vue-material-design-icons/Upload.vue ***! - \***********************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _Upload_vue_vue_type_template_id_6adfd2a6___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Upload.vue?vue&type=template&id=6adfd2a6& */ "./node_modules/vue-material-design-icons/Upload.vue?vue&type=template&id=6adfd2a6&"); -/* harmony import */ var _Upload_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Upload.vue?vue&type=script&lang=js& */ "./node_modules/vue-material-design-icons/Upload.vue?vue&type=script&lang=js&"); -/* harmony import */ var _vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - - - -/* normalize component */ -; -var component = (0,_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])( - _Upload_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _Upload_vue_vue_type_template_id_6adfd2a6___WEBPACK_IMPORTED_MODULE_0__.render, - _Upload_vue_vue_type_template_id_6adfd2a6___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - null, - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "node_modules/vue-material-design-icons/Upload.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Upload.vue?vue&type=script&lang=js&": -/*!***********************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Upload.vue?vue&type=script&lang=js& ***! - \***********************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: "UploadIcon", - emits: ['click'], - props: { - title: { - type: String, - }, - fillColor: { - type: String, - default: "currentColor" - }, - size: { - type: Number, - default: 24 - } - } -}); - - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=script&lang=js&": -/*!*****************************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=script&lang=js& ***! - \*****************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _vue_loader_lib_index_js_vue_loader_options_AlertCircle_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/index.js??vue-loader-options!./AlertCircle.vue?vue&type=script&lang=js& */ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_vue_loader_lib_index_js_vue_loader_options_AlertCircle_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=template&id=7b52a7d0&": -/*!***********************************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=template&id=7b52a7d0& ***! - \***********************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_AlertCircle_vue_vue_type_template_id_7b52a7d0___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_AlertCircle_vue_vue_type_template_id_7b52a7d0___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_AlertCircle_vue_vue_type_template_id_7b52a7d0___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../vue-loader/lib/index.js??vue-loader-options!./AlertCircle.vue?vue&type=template&id=7b52a7d0& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=template&id=7b52a7d0&"); - - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/DownloadMultiple.vue?vue&type=script&lang=js&": -/*!**********************************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/DownloadMultiple.vue?vue&type=script&lang=js& ***! - \**********************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _vue_loader_lib_index_js_vue_loader_options_DownloadMultiple_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/index.js??vue-loader-options!./DownloadMultiple.vue?vue&type=script&lang=js& */ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/DownloadMultiple.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_vue_loader_lib_index_js_vue_loader_options_DownloadMultiple_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/DownloadMultiple.vue?vue&type=template&id=a6391238&": -/*!****************************************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/DownloadMultiple.vue?vue&type=template&id=a6391238& ***! - \****************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_DownloadMultiple_vue_vue_type_template_id_a6391238___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_DownloadMultiple_vue_vue_type_template_id_a6391238___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_DownloadMultiple_vue_vue_type_template_id_a6391238___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../vue-loader/lib/index.js??vue-loader-options!./DownloadMultiple.vue?vue&type=template&id=a6391238& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/DownloadMultiple.vue?vue&type=template&id=a6391238&"); - - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/ImagePlus.vue?vue&type=script&lang=js&": -/*!***************************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/ImagePlus.vue?vue&type=script&lang=js& ***! - \***************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _vue_loader_lib_index_js_vue_loader_options_ImagePlus_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/index.js??vue-loader-options!./ImagePlus.vue?vue&type=script&lang=js& */ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/ImagePlus.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_vue_loader_lib_index_js_vue_loader_options_ImagePlus_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/ImagePlus.vue?vue&type=template&id=29baae99&": -/*!*********************************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/ImagePlus.vue?vue&type=template&id=29baae99& ***! - \*********************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_ImagePlus_vue_vue_type_template_id_29baae99___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_ImagePlus_vue_vue_type_template_id_29baae99___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_ImagePlus_vue_vue_type_template_id_29baae99___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../vue-loader/lib/index.js??vue-loader-options!./ImagePlus.vue?vue&type=template&id=29baae99& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/ImagePlus.vue?vue&type=template&id=29baae99&"); - - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/Upload.vue?vue&type=script&lang=js&": -/*!************************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/Upload.vue?vue&type=script&lang=js& ***! - \************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _vue_loader_lib_index_js_vue_loader_options_Upload_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/index.js??vue-loader-options!./Upload.vue?vue&type=script&lang=js& */ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Upload.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_vue_loader_lib_index_js_vue_loader_options_Upload_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/Upload.vue?vue&type=template&id=6adfd2a6&": -/*!******************************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/Upload.vue?vue&type=template&id=6adfd2a6& ***! - \******************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_Upload_vue_vue_type_template_id_6adfd2a6___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_Upload_vue_vue_type_template_id_6adfd2a6___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_Upload_vue_vue_type_template_id_6adfd2a6___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../vue-loader/lib/index.js??vue-loader-options!./Upload.vue?vue&type=template&id=6adfd2a6& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Upload.vue?vue&type=template&id=6adfd2a6&"); - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=template&id=7b52a7d0&": -/*!**************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=template&id=7b52a7d0& ***! - \**************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c( - "span", - _vm._b( - { - staticClass: "material-design-icon alert-circle-icon", - attrs: { - "aria-hidden": !_vm.title, - "aria-label": _vm.title, - role: "img", - }, - on: { - click: function ($event) { - return _vm.$emit("click", $event) - }, - }, - }, - "span", - _vm.$attrs, - false - ), - [ - _c( - "svg", - { - staticClass: "material-design-icon__svg", - attrs: { - fill: _vm.fillColor, - width: _vm.size, - height: _vm.size, - viewBox: "0 0 24 24", - }, - }, - [ - _c( - "path", - { - attrs: { - d: "M13,13H11V7H13M13,17H11V15H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z", - }, - }, - [_vm.title ? _c("title", [_vm._v(_vm._s(_vm.title))]) : _vm._e()] - ), - ] - ), - ] - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/DownloadMultiple.vue?vue&type=template&id=a6391238&": -/*!*******************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/DownloadMultiple.vue?vue&type=template&id=a6391238& ***! - \*******************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c( - "span", - _vm._b( - { - staticClass: "material-design-icon download-multiple-icon", - attrs: { - "aria-hidden": !_vm.title, - "aria-label": _vm.title, - role: "img", - }, - on: { - click: function ($event) { - return _vm.$emit("click", $event) - }, - }, - }, - "span", - _vm.$attrs, - false - ), - [ - _c( - "svg", - { - staticClass: "material-design-icon__svg", - attrs: { - fill: _vm.fillColor, - width: _vm.size, - height: _vm.size, - viewBox: "0 0 24 24", - }, - }, - [ - _c( - "path", - { - attrs: { - d: "M9,1V7H5L12,14L19,7H15V1H9M5,16V18H19V16H5M5,20V22H19V20H5Z", - }, - }, - [_vm.title ? _c("title", [_vm._v(_vm._s(_vm.title))]) : _vm._e()] - ), - ] - ), - ] - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/ImagePlus.vue?vue&type=template&id=29baae99&": -/*!************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/ImagePlus.vue?vue&type=template&id=29baae99& ***! - \************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c( - "span", - _vm._b( - { - staticClass: "material-design-icon image-plus-icon", - attrs: { - "aria-hidden": !_vm.title, - "aria-label": _vm.title, - role: "img", - }, - on: { - click: function ($event) { - return _vm.$emit("click", $event) - }, - }, - }, - "span", - _vm.$attrs, - false - ), - [ - _c( - "svg", - { - staticClass: "material-design-icon__svg", - attrs: { - fill: _vm.fillColor, - width: _vm.size, - height: _vm.size, - viewBox: "0 0 24 24", - }, - }, - [ - _c( - "path", - { - attrs: { - d: "M18 15V18H15V20H18V23H20V20H23V18H20V15H18M13.3 21H5C3.9 21 3 20.1 3 19V5C3 3.9 3.9 3 5 3H19C20.1 3 21 3.9 21 5V13.3C20.4 13.1 19.7 13 19 13C17.9 13 16.8 13.3 15.9 13.9L14.5 12L11 16.5L8.5 13.5L5 18H13.1C13 18.3 13 18.7 13 19C13 19.7 13.1 20.4 13.3 21Z", - }, - }, - [_vm.title ? _c("title", [_vm._v(_vm._s(_vm.title))]) : _vm._e()] - ), - ] - ), - ] - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Upload.vue?vue&type=template&id=6adfd2a6&": -/*!*********************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Upload.vue?vue&type=template&id=6adfd2a6& ***! - \*********************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c( - "span", - _vm._b( - { - staticClass: "material-design-icon upload-icon", - attrs: { - "aria-hidden": !_vm.title, - "aria-label": _vm.title, - role: "img", - }, - on: { - click: function ($event) { - return _vm.$emit("click", $event) - }, - }, - }, - "span", - _vm.$attrs, - false - ), - [ - _c( - "svg", - { - staticClass: "material-design-icon__svg", - attrs: { - fill: _vm.fillColor, - width: _vm.size, - height: _vm.size, - viewBox: "0 0 24 24", - }, - }, - [ - _c( - "path", - { attrs: { d: "M9,16V10H5L12,3L19,10H15V16H9M5,20V18H19V20H5Z" } }, - [_vm.title ? _c("title", [_vm._v(_vm._s(_vm.title))]) : _vm._e()] - ), - ] - ), - ] - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/@mdi/svg/svg/plus.svg": -/*!********************************************!*\ - !*** ./node_modules/@mdi/svg/svg/plus.svg ***! - \********************************************/ -/***/ ((module) => { - -"use strict"; -module.exports = ""; - -/***/ }) - -}]); -//# sourceMappingURL=photos-vendors-node_modules_nextcloud_files_dist_index_esm_js-node_modules_nextcloud_upload_dist_ind-645437.js.map?v=7bdff095e4f655b0161f \ No newline at end of file diff --git a/js/photos-vendors-node_modules_nextcloud_files_dist_index_esm_js-node_modules_nextcloud_upload_dist_ind-645437.js.map b/js/photos-vendors-node_modules_nextcloud_files_dist_index_esm_js-node_modules_nextcloud_upload_dist_ind-645437.js.map deleted file mode 100644 index e48fa28ee..000000000 --- a/js/photos-vendors-node_modules_nextcloud_files_dist_index_esm_js-node_modules_nextcloud_upload_dist_ind-645437.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-vendors-node_modules_nextcloud_files_dist_index_esm_js-node_modules_nextcloud_upload_dist_ind-645437.js?v=7bdff095e4f655b0161f","mappings":";;;;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACtOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;ACtCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACpCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;ACtCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACpCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;ACtCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACpCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;ACtCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;ACpCA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;ACrDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;ACrDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;ACrDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sources":["webpack:///photos/node_modules/@nextcloud/files/dist/index.esm.js","webpack:///photos/node_modules/vue-material-design-icons/AlertCircle.vue","webpack:///photos/node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=script&lang=js&","webpack:///photos/node_modules/vue-material-design-icons/DownloadMultiple.vue","webpack:///photos/node_modules/vue-material-design-icons/DownloadMultiple.vue?vue&type=script&lang=js&","webpack:///photos/node_modules/vue-material-design-icons/ImagePlus.vue","webpack:///photos/node_modules/vue-material-design-icons/ImagePlus.vue?vue&type=script&lang=js&","webpack:///photos/node_modules/vue-material-design-icons/Upload.vue","webpack:///photos/node_modules/vue-material-design-icons/Upload.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/AlertCircle.vue?5363","webpack://photos/./node_modules/vue-material-design-icons/DownloadMultiple.vue?d6b3","webpack://photos/./node_modules/vue-material-design-icons/ImagePlus.vue?a767","webpack://photos/./node_modules/vue-material-design-icons/Upload.vue?a195","webpack:///photos/node_modules/vue-material-design-icons/AlertCircle.vue?vue&type=template&id=7b52a7d0&","webpack:///photos/node_modules/vue-material-design-icons/DownloadMultiple.vue?vue&type=template&id=a6391238&","webpack:///photos/node_modules/vue-material-design-icons/ImagePlus.vue?vue&type=template&id=29baae99&","webpack:///photos/node_modules/vue-material-design-icons/Upload.vue?vue&type=template&id=6adfd2a6&"],"sourcesContent":["import { getCanonicalLocale } from '@nextcloud/l10n';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport { getLoggerBuilder } from '@nextcloud/logger';\n\n/**\n * @copyright 2019 Christoph Wurst \n *\n * @author Christoph Wurst \n * @author John Molakvoæ \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 .\n *\n */\nconst humanList = ['B', 'KB', 'MB', 'GB', 'TB'];\n/**\n * Format a file size in a human-like format. e.g. 42GB\n *\n * @param size in bytes\n * @param skipSmallSizes avoid rendering tiny sizes and return '< 1 KB' instead\n */\nfunction formatFileSize(size, skipSmallSizes = false) {\n if (typeof size === 'string') {\n size = Number(size);\n }\n // Calculate Log with base 1024: size = 1024 ** order\n let order = size > 0 ? Math.floor(Math.log(size) / Math.log(1024)) : 0;\n // Stay in range of the byte sizes that are defined\n order = Math.min(humanList.length - 1, order);\n const readableFormat = humanList[order];\n let relativeSize = (size / Math.pow(1024, order)).toFixed(1);\n if (skipSmallSizes === true && order === 0) {\n if (relativeSize !== '0.0') {\n return '< 1 KB';\n }\n else {\n return '0 KB';\n }\n }\n if (order < 2) {\n relativeSize = parseFloat(relativeSize).toFixed(0);\n }\n else {\n relativeSize = parseFloat(relativeSize).toLocaleString(getCanonicalLocale());\n }\n return relativeSize + ' ' + readableFormat;\n}\n\n/**\n * @copyright 2019 Christoph Wurst \n *\n * @author Christoph Wurst \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 .\n *\n */\nconst getLogger = user => {\n if (user === null) {\n return getLoggerBuilder()\n .setApp('files')\n .build();\n }\n return getLoggerBuilder()\n .setApp('files')\n .setUid(user.uid)\n .build();\n};\nvar logger = getLogger(getCurrentUser());\n\n/**\n * @copyright Copyright (c) 2021 John Molakvoæ \n *\n * @author John Molakvoæ \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 .\n *\n */\nclass NewFileMenu {\n _entries = [];\n registerEntry(entry) {\n this.validateEntry(entry);\n this._entries.push(entry);\n }\n unregisterEntry(entry) {\n const entryIndex = typeof entry === 'string'\n ? this.getEntryIndex(entry)\n : this.getEntryIndex(entry.id);\n if (entryIndex === -1) {\n logger.warn('Entry not found, nothing removed', { entry, entries: this.getEntries() });\n return;\n }\n this._entries.splice(entryIndex, 1);\n }\n /**\n * Get the list of registered entries\n *\n * @param {FileInfo} context the creation context. Usually the current folder FileInfo\n */\n getEntries(context) {\n if (context) {\n return this._entries\n .filter(entry => typeof entry.if === 'function' ? entry.if(context) : true);\n }\n return this._entries;\n }\n getEntryIndex(id) {\n return this._entries.findIndex(entry => entry.id === id);\n }\n validateEntry(entry) {\n if (!entry.id || !entry.displayName || !(entry.iconSvgInline || entry.iconClass)) {\n throw new Error('Invalid entry');\n }\n if (typeof entry.id !== 'string'\n || typeof entry.displayName !== 'string') {\n throw new Error('Invalid id or displayName property');\n }\n if ((entry.iconClass && typeof entry.iconClass !== 'string')\n || (entry.iconSvgInline && typeof entry.iconSvgInline !== 'string')) {\n throw new Error('Invalid icon provided');\n }\n if (entry.if !== undefined && typeof entry.if !== 'function') {\n throw new Error('Invalid if property');\n }\n if (entry.templateName && typeof entry.templateName !== 'string') {\n throw new Error('Invalid templateName property');\n }\n if (entry.handler && typeof entry.handler !== 'function') {\n throw new Error('Invalid handler property');\n }\n if (!entry.templateName && !entry.handler) {\n throw new Error('At least a templateName or a handler must be provided');\n }\n if (this.getEntryIndex(entry.id) !== -1) {\n throw new Error('Duplicate entry');\n }\n }\n}\nconst getNewFileMenu = function () {\n if (typeof window._nc_newfilemenu === 'undefined') {\n window._nc_newfilemenu = new NewFileMenu();\n logger.debug('NewFileMenu initialized');\n }\n return window._nc_newfilemenu;\n};\n\n/**\n * @copyright 2019 Christoph Wurst \n *\n * @author Christoph Wurst \n * @author John Molakvoæ \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 .\n *\n */\n/**\n * Add a new menu entry to the upload manager menu\n */\nconst addNewFileMenuEntry = function (entry) {\n const newFileMenu = getNewFileMenu();\n return newFileMenu.registerEntry(entry);\n};\n/**\n * Remove a previously registered entry from the upload menu\n */\nconst removeNewFileMenuEntry = function (entry) {\n const newFileMenu = getNewFileMenu();\n return newFileMenu.unregisterEntry(entry);\n};\n/**\n * Get the list of registered entries from the upload menu\n *\n * @param {FileInfo} context the creation context. Usually the current folder FileInfo\n */\nconst getNewFileMenuEntries = function (context) {\n const newFileMenu = getNewFileMenu();\n return newFileMenu.getEntries(context);\n};\n\nexport { addNewFileMenuEntry, formatFileSize, getNewFileMenuEntries, removeNewFileMenuEntry };\n//# sourceMappingURL=index.esm.js.map\n","import { render, staticRenderFns } from \"./AlertCircle.vue?vue&type=template&id=7b52a7d0&\"\nimport script from \"./AlertCircle.vue?vue&type=script&lang=js&\"\nexport * from \"./AlertCircle.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/admin/Docker/apps2/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('7b52a7d0')) {\n api.createRecord('7b52a7d0', component.options)\n } else {\n api.reload('7b52a7d0', component.options)\n }\n module.hot.accept(\"./AlertCircle.vue?vue&type=template&id=7b52a7d0&\", function () {\n api.rerender('7b52a7d0', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"node_modules/vue-material-design-icons/AlertCircle.vue\"\nexport default component.exports","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nexport default {\n name: \"AlertCircleIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n","import { render, staticRenderFns } from \"./DownloadMultiple.vue?vue&type=template&id=a6391238&\"\nimport script from \"./DownloadMultiple.vue?vue&type=script&lang=js&\"\nexport * from \"./DownloadMultiple.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/admin/Docker/apps2/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('a6391238')) {\n api.createRecord('a6391238', component.options)\n } else {\n api.reload('a6391238', component.options)\n }\n module.hot.accept(\"./DownloadMultiple.vue?vue&type=template&id=a6391238&\", function () {\n api.rerender('a6391238', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"node_modules/vue-material-design-icons/DownloadMultiple.vue\"\nexport default component.exports","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nexport default {\n name: \"DownloadMultipleIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n","import { render, staticRenderFns } from \"./ImagePlus.vue?vue&type=template&id=29baae99&\"\nimport script from \"./ImagePlus.vue?vue&type=script&lang=js&\"\nexport * from \"./ImagePlus.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/admin/Docker/apps2/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('29baae99')) {\n api.createRecord('29baae99', component.options)\n } else {\n api.reload('29baae99', component.options)\n }\n module.hot.accept(\"./ImagePlus.vue?vue&type=template&id=29baae99&\", function () {\n api.rerender('29baae99', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"node_modules/vue-material-design-icons/ImagePlus.vue\"\nexport default component.exports","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nexport default {\n name: \"ImagePlusIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n","import { render, staticRenderFns } from \"./Upload.vue?vue&type=template&id=6adfd2a6&\"\nimport script from \"./Upload.vue?vue&type=script&lang=js&\"\nexport * from \"./Upload.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/admin/Docker/apps2/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('6adfd2a6')) {\n api.createRecord('6adfd2a6', component.options)\n } else {\n api.reload('6adfd2a6', component.options)\n }\n module.hot.accept(\"./Upload.vue?vue&type=template&id=6adfd2a6&\", function () {\n api.rerender('6adfd2a6', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"node_modules/vue-material-design-icons/Upload.vue\"\nexport default component.exports","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nexport default {\n name: \"UploadIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./AlertCircle.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./AlertCircle.vue?vue&type=script&lang=js&\"","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./DownloadMultiple.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./DownloadMultiple.vue?vue&type=script&lang=js&\"","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ImagePlus.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ImagePlus.vue?vue&type=script&lang=js&\"","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Upload.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Upload.vue?vue&type=script&lang=js&\"","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"span\",\n _vm._b(\n {\n staticClass: \"material-design-icon alert-circle-icon\",\n attrs: {\n \"aria-hidden\": !_vm.title,\n \"aria-label\": _vm.title,\n role: \"img\",\n },\n on: {\n click: function ($event) {\n return _vm.$emit(\"click\", $event)\n },\n },\n },\n \"span\",\n _vm.$attrs,\n false\n ),\n [\n _c(\n \"svg\",\n {\n staticClass: \"material-design-icon__svg\",\n attrs: {\n fill: _vm.fillColor,\n width: _vm.size,\n height: _vm.size,\n viewBox: \"0 0 24 24\",\n },\n },\n [\n _c(\n \"path\",\n {\n attrs: {\n d: \"M13,13H11V7H13M13,17H11V15H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z\",\n },\n },\n [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()]\n ),\n ]\n ),\n ]\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"span\",\n _vm._b(\n {\n staticClass: \"material-design-icon download-multiple-icon\",\n attrs: {\n \"aria-hidden\": !_vm.title,\n \"aria-label\": _vm.title,\n role: \"img\",\n },\n on: {\n click: function ($event) {\n return _vm.$emit(\"click\", $event)\n },\n },\n },\n \"span\",\n _vm.$attrs,\n false\n ),\n [\n _c(\n \"svg\",\n {\n staticClass: \"material-design-icon__svg\",\n attrs: {\n fill: _vm.fillColor,\n width: _vm.size,\n height: _vm.size,\n viewBox: \"0 0 24 24\",\n },\n },\n [\n _c(\n \"path\",\n {\n attrs: {\n d: \"M9,1V7H5L12,14L19,7H15V1H9M5,16V18H19V16H5M5,20V22H19V20H5Z\",\n },\n },\n [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()]\n ),\n ]\n ),\n ]\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"span\",\n _vm._b(\n {\n staticClass: \"material-design-icon image-plus-icon\",\n attrs: {\n \"aria-hidden\": !_vm.title,\n \"aria-label\": _vm.title,\n role: \"img\",\n },\n on: {\n click: function ($event) {\n return _vm.$emit(\"click\", $event)\n },\n },\n },\n \"span\",\n _vm.$attrs,\n false\n ),\n [\n _c(\n \"svg\",\n {\n staticClass: \"material-design-icon__svg\",\n attrs: {\n fill: _vm.fillColor,\n width: _vm.size,\n height: _vm.size,\n viewBox: \"0 0 24 24\",\n },\n },\n [\n _c(\n \"path\",\n {\n attrs: {\n d: \"M18 15V18H15V20H18V23H20V20H23V18H20V15H18M13.3 21H5C3.9 21 3 20.1 3 19V5C3 3.9 3.9 3 5 3H19C20.1 3 21 3.9 21 5V13.3C20.4 13.1 19.7 13 19 13C17.9 13 16.8 13.3 15.9 13.9L14.5 12L11 16.5L8.5 13.5L5 18H13.1C13 18.3 13 18.7 13 19C13 19.7 13.1 20.4 13.3 21Z\",\n },\n },\n [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()]\n ),\n ]\n ),\n ]\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"span\",\n _vm._b(\n {\n staticClass: \"material-design-icon upload-icon\",\n attrs: {\n \"aria-hidden\": !_vm.title,\n \"aria-label\": _vm.title,\n role: \"img\",\n },\n on: {\n click: function ($event) {\n return _vm.$emit(\"click\", $event)\n },\n },\n },\n \"span\",\n _vm.$attrs,\n false\n ),\n [\n _c(\n \"svg\",\n {\n staticClass: \"material-design-icon__svg\",\n attrs: {\n fill: _vm.fillColor,\n width: _vm.size,\n height: _vm.size,\n viewBox: \"0 0 24 24\",\n },\n },\n [\n _c(\n \"path\",\n { attrs: { d: \"M9,16V10H5L12,3L19,10H15V16H9M5,20V18H19V20H5Z\" } },\n [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()]\n ),\n ]\n ),\n ]\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-vendors-node_modules_nextcloud_l10n_dist_gettext_js-node_modules_nextcloud_event-bus_dist_ind-5dea69.js b/js/photos-vendors-node_modules_nextcloud_l10n_dist_gettext_js-node_modules_nextcloud_event-bus_dist_ind-5dea69.js deleted file mode 100644 index a9fd876e6..000000000 --- a/js/photos-vendors-node_modules_nextcloud_l10n_dist_gettext_js-node_modules_nextcloud_event-bus_dist_ind-5dea69.js +++ /dev/null @@ -1,11543 +0,0 @@ -(self["webpackChunkphotos"] = self["webpackChunkphotos"] || []).push([["vendors-node_modules_nextcloud_l10n_dist_gettext_js-node_modules_nextcloud_event-bus_dist_ind-5dea69"],{ - -/***/ "./node_modules/@nextcloud/l10n/dist/gettext.js": -/*!******************************************************!*\ - !*** ./node_modules/@nextcloud/l10n/dist/gettext.js ***! - \******************************************************/ -/***/ ((__unused_webpack_module, exports, __webpack_require__) => { - -"use strict"; - - -__webpack_require__(/*! core-js/modules/es.object.to-string */ "./node_modules/core-js/modules/es.object.to-string.js"); - -__webpack_require__(/*! core-js/modules/es.regexp.exec */ "./node_modules/core-js/modules/es.regexp.exec.js"); - -__webpack_require__(/*! core-js/modules/es.regexp.to-string */ "./node_modules/core-js/modules/es.regexp.to-string.js"); - -__webpack_require__(/*! core-js/modules/es.string.replace */ "./node_modules/core-js/modules/es.string.replace.js"); - -Object.defineProperty(exports, "__esModule", ({ - value: true -})); -exports.getGettextBuilder = getGettextBuilder; - -var _nodeGettext = _interopRequireDefault(__webpack_require__(/*! node-gettext */ "./node_modules/node-gettext/lib/gettext.js")); - -var _ = __webpack_require__(/*! . */ "./node_modules/@nextcloud/l10n/dist/index.js"); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -var GettextBuilder = /*#__PURE__*/function () { - function GettextBuilder() { - _classCallCheck(this, GettextBuilder); - - this.translations = {}; - this.debug = false; - } - - _createClass(GettextBuilder, [{ - key: "setLanguage", - value: function setLanguage(language) { - this.locale = language; - return this; - } - }, { - key: "detectLocale", - value: function detectLocale() { - return this.setLanguage((0, _.getLanguage)().replace('-', '_')); - } - }, { - key: "addTranslation", - value: function addTranslation(language, data) { - this.translations[language] = data; - return this; - } - }, { - key: "enableDebugMode", - value: function enableDebugMode() { - this.debug = true; - return this; - } - }, { - key: "build", - value: function build() { - return new GettextWrapper(this.locale || 'en', this.translations, this.debug); - } - }]); - - return GettextBuilder; -}(); - -var GettextWrapper = /*#__PURE__*/function () { - function GettextWrapper(locale, data, debug) { - _classCallCheck(this, GettextWrapper); - - this.gt = new _nodeGettext.default({ - debug: debug, - sourceLocale: 'en' - }); - - for (var key in data) { - this.gt.addTranslations(key, 'messages', data[key]); - } - - this.gt.setLocale(locale); - } - - _createClass(GettextWrapper, [{ - key: "subtitudePlaceholders", - value: function subtitudePlaceholders(translated, vars) { - return translated.replace(/{([^{}]*)}/g, function (a, b) { - var r = vars[b]; - - if (typeof r === 'string' || typeof r === 'number') { - return r.toString(); - } else { - return a; - } - }); - } - }, { - key: "gettext", - value: function gettext(original) { - var placeholders = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; - return this.subtitudePlaceholders(this.gt.gettext(original), placeholders); - } - }, { - key: "ngettext", - value: function ngettext(singular, plural, count) { - var placeholders = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {}; - return this.subtitudePlaceholders(this.gt.ngettext(singular, plural, count).replace(/%n/g, count.toString()), placeholders); - } - }]); - - return GettextWrapper; -}(); - -function getGettextBuilder() { - return new GettextBuilder(); -} -//# sourceMappingURL=gettext.js.map - -/***/ }), - -/***/ "./node_modules/@nextcloud/event-bus/dist/ProxyBus.js": -/*!************************************************************!*\ - !*** ./node_modules/@nextcloud/event-bus/dist/ProxyBus.js ***! - \************************************************************/ -/***/ ((__unused_webpack_module, exports, __webpack_require__) => { - -"use strict"; -/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js"); - - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; } - -Object.defineProperty(exports, "__esModule", ({ - value: true -})); -exports.ProxyBus = void 0; - -var _valid = _interopRequireDefault(__webpack_require__(/*! semver/functions/valid */ "./node_modules/@nextcloud/event-bus/node_modules/semver/functions/valid.js")); - -var _major = _interopRequireDefault(__webpack_require__(/*! semver/functions/major */ "./node_modules/@nextcloud/event-bus/node_modules/semver/functions/major.js")); - -function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { - default: obj - }; -} - -function _defineProperty(obj, key, value) { - if (key in obj) { - Object.defineProperty(obj, key, { - value: value, - enumerable: true, - configurable: true, - writable: true - }); - } else { - obj[key] = value; - } - - return obj; -} - -var packageJson = { - name: "@nextcloud/event-bus", - version: "2.1.1", - description: "", - main: "dist/index.js", - types: "dist/index.d.ts", - scripts: { - build: "babel ./lib --out-dir dist --extensions '.ts,.tsx' --source-maps && tsc --emitDeclarationOnly", - "build:doc": "typedoc --out dist/doc lib/index.ts && touch dist/doc/.nojekyll", - "check-types": "tsc", - dev: "babel ./lib --out-dir dist --extensions '.ts,.tsx' --watch", - test: "jest", - "test:watch": "jest --watchAll" - }, - keywords: ["nextcloud"], - homepage: "https://github.com/nextcloud/nextcloud-event-bus#readme", - author: "Christoph Wurst", - license: "GPL-3.0-or-later", - repository: { - type: "git", - url: "https://github.com/nextcloud/nextcloud-event-bus" - }, - dependencies: { - "@types/semver": "^7.1.0", - "core-js": "^3.6.2", - semver: "^7.3.2" - }, - devDependencies: { - "@babel/cli": "^7.6.0", - "@babel/core": "^7.6.0", - "@babel/plugin-proposal-class-properties": "^7.5.5", - "@babel/preset-env": "^7.6.0", - "@babel/preset-typescript": "^7.6.0", - "@nextcloud/browserslist-config": "^2.1.0", - "@rollup/plugin-babel": "^5.3.0", - "@rollup/plugin-commonjs": "^21.0.1", - "@rollup/plugin-node-resolve": "^13.0.0", - "babel-jest": "^27.2.1", - "babel-plugin-inline-json-import": "^0.3.2", - jest: "^26.0.1", - rollup: "^2.47.0", - "rollup-plugin-inject-process-env": "^1.3.1", - "rollup-plugin-typescript2": "^0.30.0", - typedoc: "^0.22.4", - typescript: "^4.0.2" - }, - browserslist: ["extends @nextcloud/browserslist-config"] -}; - -var ProxyBus = /*#__PURE__*/function () { - function ProxyBus(bus) { - _classCallCheck(this, ProxyBus); - - _defineProperty(this, "bus", void 0); - - if (typeof bus.getVersion !== 'function' || !(0, _valid.default)(bus.getVersion())) { - console.warn('Proxying an event bus with an unknown or invalid version'); - } else if ((0, _major.default)(bus.getVersion()) !== (0, _major.default)(this.getVersion())) { - console.warn('Proxying an event bus of version ' + bus.getVersion() + ' with ' + this.getVersion()); - } - - this.bus = bus; - } - - _createClass(ProxyBus, [{ - key: "getVersion", - value: function getVersion() { - return packageJson.version; - } - }, { - key: "subscribe", - value: function subscribe(name, handler) { - this.bus.subscribe(name, handler); - } - }, { - key: "unsubscribe", - value: function unsubscribe(name, handler) { - this.bus.unsubscribe(name, handler); - } - }, { - key: "emit", - value: function emit(name, event) { - this.bus.emit(name, event); - } - }]); - - return ProxyBus; -}(); - -exports.ProxyBus = ProxyBus; - -/***/ }), - -/***/ "./node_modules/@nextcloud/event-bus/dist/SimpleBus.js": -/*!*************************************************************!*\ - !*** ./node_modules/@nextcloud/event-bus/dist/SimpleBus.js ***! - \*************************************************************/ -/***/ ((__unused_webpack_module, exports, __webpack_require__) => { - -"use strict"; -/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js"); - - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; } - -Object.defineProperty(exports, "__esModule", ({ - value: true -})); -exports.SimpleBus = void 0; - -__webpack_require__(/*! core-js/modules/web.dom-collections.iterator.js */ "./node_modules/core-js/modules/web.dom-collections.iterator.js"); - -function _defineProperty(obj, key, value) { - if (key in obj) { - Object.defineProperty(obj, key, { - value: value, - enumerable: true, - configurable: true, - writable: true - }); - } else { - obj[key] = value; - } - - return obj; -} - -var packageJson = { - name: "@nextcloud/event-bus", - version: "2.1.1", - description: "", - main: "dist/index.js", - types: "dist/index.d.ts", - scripts: { - build: "babel ./lib --out-dir dist --extensions '.ts,.tsx' --source-maps && tsc --emitDeclarationOnly", - "build:doc": "typedoc --out dist/doc lib/index.ts && touch dist/doc/.nojekyll", - "check-types": "tsc", - dev: "babel ./lib --out-dir dist --extensions '.ts,.tsx' --watch", - test: "jest", - "test:watch": "jest --watchAll" - }, - keywords: ["nextcloud"], - homepage: "https://github.com/nextcloud/nextcloud-event-bus#readme", - author: "Christoph Wurst", - license: "GPL-3.0-or-later", - repository: { - type: "git", - url: "https://github.com/nextcloud/nextcloud-event-bus" - }, - dependencies: { - "@types/semver": "^7.1.0", - "core-js": "^3.6.2", - semver: "^7.3.2" - }, - devDependencies: { - "@babel/cli": "^7.6.0", - "@babel/core": "^7.6.0", - "@babel/plugin-proposal-class-properties": "^7.5.5", - "@babel/preset-env": "^7.6.0", - "@babel/preset-typescript": "^7.6.0", - "@nextcloud/browserslist-config": "^2.1.0", - "@rollup/plugin-babel": "^5.3.0", - "@rollup/plugin-commonjs": "^21.0.1", - "@rollup/plugin-node-resolve": "^13.0.0", - "babel-jest": "^27.2.1", - "babel-plugin-inline-json-import": "^0.3.2", - jest: "^26.0.1", - rollup: "^2.47.0", - "rollup-plugin-inject-process-env": "^1.3.1", - "rollup-plugin-typescript2": "^0.30.0", - typedoc: "^0.22.4", - typescript: "^4.0.2" - }, - browserslist: ["extends @nextcloud/browserslist-config"] -}; - -var SimpleBus = /*#__PURE__*/function () { - function SimpleBus() { - _classCallCheck(this, SimpleBus); - - _defineProperty(this, "handlers", new Map()); - } - - _createClass(SimpleBus, [{ - key: "getVersion", - value: function getVersion() { - return packageJson.version; - } - }, { - key: "subscribe", - value: function subscribe(name, handler) { - this.handlers.set(name, (this.handlers.get(name) || []).concat(handler)); - } - }, { - key: "unsubscribe", - value: function unsubscribe(name, handler) { - this.handlers.set(name, (this.handlers.get(name) || []).filter(function (h) { - return h != handler; - })); - } - }, { - key: "emit", - value: function emit(name, event) { - (this.handlers.get(name) || []).forEach(function (h) { - try { - h(event); - } catch (e) { - console.error('could not invoke event listener', e); - } - }); - } - }]); - - return SimpleBus; -}(); - -exports.SimpleBus = SimpleBus; - -/***/ }), - -/***/ "./node_modules/@nextcloud/event-bus/dist/index.js": -/*!*********************************************************!*\ - !*** ./node_modules/@nextcloud/event-bus/dist/index.js ***! - \*********************************************************/ -/***/ ((__unused_webpack_module, exports, __webpack_require__) => { - -"use strict"; -/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js"); - - -Object.defineProperty(exports, "__esModule", ({ - value: true -})); -exports.emit = emit; -exports.subscribe = subscribe; -exports.unsubscribe = unsubscribe; - -var _ProxyBus = __webpack_require__(/*! ./ProxyBus */ "./node_modules/@nextcloud/event-bus/dist/ProxyBus.js"); - -var _SimpleBus = __webpack_require__(/*! ./SimpleBus */ "./node_modules/@nextcloud/event-bus/dist/SimpleBus.js"); - -function getBus() { - if (typeof window.OC !== 'undefined' && window.OC._eventBus && typeof window._nc_event_bus === 'undefined') { - console.warn('found old event bus instance at OC._eventBus. Update your version!'); - window._nc_event_bus = window.OC._eventBus; - } // Either use an existing event bus instance or create one - - - if (typeof window._nc_event_bus !== 'undefined') { - return new _ProxyBus.ProxyBus(window._nc_event_bus); - } else { - return window._nc_event_bus = new _SimpleBus.SimpleBus(); - } -} - -var bus = getBus(); -/** - * Register an event listener - * - * @param name name of the event - * @param handler callback invoked for every matching event emitted on the bus - */ - -function subscribe(name, handler) { - bus.subscribe(name, handler); -} -/** - * Unregister a previously registered event listener - * - * Note: doesn't work with anonymous functions (closures). Use method of an object or store listener function in variable. - * - * @param name name of the event - * @param handler callback passed to `subscribed` - */ - - -function unsubscribe(name, handler) { - bus.unsubscribe(name, handler); -} -/** - * Emit an event - * - * @param name name of the event - * @param event event payload - */ - - -function emit(name, event) { - bus.emit(name, event); -} - -/***/ }), - -/***/ "./node_modules/@nextcloud/event-bus/node_modules/semver/classes/semver.js": -/*!*********************************************************************************!*\ - !*** ./node_modules/@nextcloud/event-bus/node_modules/semver/classes/semver.js ***! - \*********************************************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; } - -var debug = __webpack_require__(/*! ../internal/debug */ "./node_modules/@nextcloud/event-bus/node_modules/semver/internal/debug.js"); - -var _require = __webpack_require__(/*! ../internal/constants */ "./node_modules/@nextcloud/event-bus/node_modules/semver/internal/constants.js"), - MAX_LENGTH = _require.MAX_LENGTH, - MAX_SAFE_INTEGER = _require.MAX_SAFE_INTEGER; - -var _require2 = __webpack_require__(/*! ../internal/re */ "./node_modules/@nextcloud/event-bus/node_modules/semver/internal/re.js"), - re = _require2.re, - t = _require2.t; - -var _require3 = __webpack_require__(/*! ../internal/identifiers */ "./node_modules/@nextcloud/event-bus/node_modules/semver/internal/identifiers.js"), - compareIdentifiers = _require3.compareIdentifiers; - -var SemVer = /*#__PURE__*/function () { - function SemVer(version, options) { - _classCallCheck(this, SemVer); - - if (!options || _typeof(options) !== 'object') { - options = { - loose: !!options, - includePrerelease: false - }; - } - - if (version instanceof SemVer) { - if (version.loose === !!options.loose && version.includePrerelease === !!options.includePrerelease) { - return version; - } else { - version = version.version; - } - } else if (typeof version !== 'string') { - throw new TypeError("Invalid Version: ".concat(version)); - } - - if (version.length > MAX_LENGTH) { - throw new TypeError("version is longer than ".concat(MAX_LENGTH, " characters")); - } - - debug('SemVer', version, options); - this.options = options; - this.loose = !!options.loose; // this isn't actually relevant for versions, but keep it so that we - // don't run into trouble passing this.options around. - - this.includePrerelease = !!options.includePrerelease; - var m = version.trim().match(options.loose ? re[t.LOOSE] : re[t.FULL]); - - if (!m) { - throw new TypeError("Invalid Version: ".concat(version)); - } - - this.raw = version; // these are actually numbers - - this.major = +m[1]; - this.minor = +m[2]; - this.patch = +m[3]; - - if (this.major > MAX_SAFE_INTEGER || this.major < 0) { - throw new TypeError('Invalid major version'); - } - - if (this.minor > MAX_SAFE_INTEGER || this.minor < 0) { - throw new TypeError('Invalid minor version'); - } - - if (this.patch > MAX_SAFE_INTEGER || this.patch < 0) { - throw new TypeError('Invalid patch version'); - } // numberify any prerelease numeric ids - - - if (!m[4]) { - this.prerelease = []; - } else { - this.prerelease = m[4].split('.').map(function (id) { - if (/^[0-9]+$/.test(id)) { - var num = +id; - - if (num >= 0 && num < MAX_SAFE_INTEGER) { - return num; - } - } - - return id; - }); - } - - this.build = m[5] ? m[5].split('.') : []; - this.format(); - } - - _createClass(SemVer, [{ - key: "format", - value: function format() { - this.version = "".concat(this.major, ".").concat(this.minor, ".").concat(this.patch); - - if (this.prerelease.length) { - this.version += "-".concat(this.prerelease.join('.')); - } - - return this.version; - } - }, { - key: "toString", - value: function toString() { - return this.version; - } - }, { - key: "compare", - value: function compare(other) { - debug('SemVer.compare', this.version, this.options, other); - - if (!(other instanceof SemVer)) { - if (typeof other === 'string' && other === this.version) { - return 0; - } - - other = new SemVer(other, this.options); - } - - if (other.version === this.version) { - return 0; - } - - return this.compareMain(other) || this.comparePre(other); - } - }, { - key: "compareMain", - value: function compareMain(other) { - if (!(other instanceof SemVer)) { - other = new SemVer(other, this.options); - } - - return compareIdentifiers(this.major, other.major) || compareIdentifiers(this.minor, other.minor) || compareIdentifiers(this.patch, other.patch); - } - }, { - key: "comparePre", - value: function comparePre(other) { - if (!(other instanceof SemVer)) { - other = new SemVer(other, this.options); - } // NOT having a prerelease is > having one - - - if (this.prerelease.length && !other.prerelease.length) { - return -1; - } else if (!this.prerelease.length && other.prerelease.length) { - return 1; - } else if (!this.prerelease.length && !other.prerelease.length) { - return 0; - } - - var i = 0; - - do { - var a = this.prerelease[i]; - var b = other.prerelease[i]; - debug('prerelease compare', i, a, b); - - if (a === undefined && b === undefined) { - return 0; - } else if (b === undefined) { - return 1; - } else if (a === undefined) { - return -1; - } else if (a === b) { - continue; - } else { - return compareIdentifiers(a, b); - } - } while (++i); - } - }, { - key: "compareBuild", - value: function compareBuild(other) { - if (!(other instanceof SemVer)) { - other = new SemVer(other, this.options); - } - - var i = 0; - - do { - var a = this.build[i]; - var b = other.build[i]; - debug('prerelease compare', i, a, b); - - if (a === undefined && b === undefined) { - return 0; - } else if (b === undefined) { - return 1; - } else if (a === undefined) { - return -1; - } else if (a === b) { - continue; - } else { - return compareIdentifiers(a, b); - } - } while (++i); - } // preminor will bump the version up to the next minor release, and immediately - // down to pre-release. premajor and prepatch work the same way. - - }, { - key: "inc", - value: function inc(release, identifier) { - switch (release) { - case 'premajor': - this.prerelease.length = 0; - this.patch = 0; - this.minor = 0; - this.major++; - this.inc('pre', identifier); - break; - - case 'preminor': - this.prerelease.length = 0; - this.patch = 0; - this.minor++; - this.inc('pre', identifier); - break; - - case 'prepatch': - // If this is already a prerelease, it will bump to the next version - // drop any prereleases that might already exist, since they are not - // relevant at this point. - this.prerelease.length = 0; - this.inc('patch', identifier); - this.inc('pre', identifier); - break; - // If the input is a non-prerelease version, this acts the same as - // prepatch. - - case 'prerelease': - if (this.prerelease.length === 0) { - this.inc('patch', identifier); - } - - this.inc('pre', identifier); - break; - - case 'major': - // If this is a pre-major version, bump up to the same major version. - // Otherwise increment major. - // 1.0.0-5 bumps to 1.0.0 - // 1.1.0 bumps to 2.0.0 - if (this.minor !== 0 || this.patch !== 0 || this.prerelease.length === 0) { - this.major++; - } - - this.minor = 0; - this.patch = 0; - this.prerelease = []; - break; - - case 'minor': - // If this is a pre-minor version, bump up to the same minor version. - // Otherwise increment minor. - // 1.2.0-5 bumps to 1.2.0 - // 1.2.1 bumps to 1.3.0 - if (this.patch !== 0 || this.prerelease.length === 0) { - this.minor++; - } - - this.patch = 0; - this.prerelease = []; - break; - - case 'patch': - // If this is not a pre-release version, it will increment the patch. - // If it is a pre-release it will bump up to the same patch version. - // 1.2.0-5 patches to 1.2.0 - // 1.2.0 patches to 1.2.1 - if (this.prerelease.length === 0) { - this.patch++; - } - - this.prerelease = []; - break; - // This probably shouldn't be used publicly. - // 1.0.0 'pre' would become 1.0.0-0 which is the wrong direction. - - case 'pre': - if (this.prerelease.length === 0) { - this.prerelease = [0]; - } else { - var i = this.prerelease.length; - - while (--i >= 0) { - if (typeof this.prerelease[i] === 'number') { - this.prerelease[i]++; - i = -2; - } - } - - if (i === -1) { - // didn't increment anything - this.prerelease.push(0); - } - } - - if (identifier) { - // 1.2.0-beta.1 bumps to 1.2.0-beta.2, - // 1.2.0-beta.fooblz or 1.2.0-beta bumps to 1.2.0-beta.0 - if (this.prerelease[0] === identifier) { - if (isNaN(this.prerelease[1])) { - this.prerelease = [identifier, 0]; - } - } else { - this.prerelease = [identifier, 0]; - } - } - - break; - - default: - throw new Error("invalid increment argument: ".concat(release)); - } - - this.format(); - this.raw = this.version; - return this; - } - }]); - - return SemVer; -}(); - -module.exports = SemVer; - -/***/ }), - -/***/ "./node_modules/@nextcloud/event-bus/node_modules/semver/functions/major.js": -/*!**********************************************************************************!*\ - !*** ./node_modules/@nextcloud/event-bus/node_modules/semver/functions/major.js ***! - \**********************************************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var SemVer = __webpack_require__(/*! ../classes/semver */ "./node_modules/@nextcloud/event-bus/node_modules/semver/classes/semver.js"); - -var major = function major(a, loose) { - return new SemVer(a, loose).major; -}; - -module.exports = major; - -/***/ }), - -/***/ "./node_modules/@nextcloud/event-bus/node_modules/semver/functions/parse.js": -/*!**********************************************************************************!*\ - !*** ./node_modules/@nextcloud/event-bus/node_modules/semver/functions/parse.js ***! - \**********************************************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } - -var _require = __webpack_require__(/*! ../internal/constants */ "./node_modules/@nextcloud/event-bus/node_modules/semver/internal/constants.js"), - MAX_LENGTH = _require.MAX_LENGTH; - -var _require2 = __webpack_require__(/*! ../internal/re */ "./node_modules/@nextcloud/event-bus/node_modules/semver/internal/re.js"), - re = _require2.re, - t = _require2.t; - -var SemVer = __webpack_require__(/*! ../classes/semver */ "./node_modules/@nextcloud/event-bus/node_modules/semver/classes/semver.js"); - -var parse = function parse(version, options) { - if (!options || _typeof(options) !== 'object') { - options = { - loose: !!options, - includePrerelease: false - }; - } - - if (version instanceof SemVer) { - return version; - } - - if (typeof version !== 'string') { - return null; - } - - if (version.length > MAX_LENGTH) { - return null; - } - - var r = options.loose ? re[t.LOOSE] : re[t.FULL]; - - if (!r.test(version)) { - return null; - } - - try { - return new SemVer(version, options); - } catch (er) { - return null; - } -}; - -module.exports = parse; - -/***/ }), - -/***/ "./node_modules/@nextcloud/event-bus/node_modules/semver/functions/valid.js": -/*!**********************************************************************************!*\ - !*** ./node_modules/@nextcloud/event-bus/node_modules/semver/functions/valid.js ***! - \**********************************************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var parse = __webpack_require__(/*! ./parse */ "./node_modules/@nextcloud/event-bus/node_modules/semver/functions/parse.js"); - -var valid = function valid(version, options) { - var v = parse(version, options); - return v ? v.version : null; -}; - -module.exports = valid; - -/***/ }), - -/***/ "./node_modules/@nextcloud/event-bus/node_modules/semver/internal/constants.js": -/*!*************************************************************************************!*\ - !*** ./node_modules/@nextcloud/event-bus/node_modules/semver/internal/constants.js ***! - \*************************************************************************************/ -/***/ ((module) => { - -// Note: this is the semver.org version of the spec that it implements -// Not necessarily the package version of this code. -var SEMVER_SPEC_VERSION = '2.0.0'; -var MAX_LENGTH = 256; -var MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER || -/* istanbul ignore next */ -9007199254740991; // Max safe segment length for coercion. - -var MAX_SAFE_COMPONENT_LENGTH = 16; -module.exports = { - SEMVER_SPEC_VERSION: SEMVER_SPEC_VERSION, - MAX_LENGTH: MAX_LENGTH, - MAX_SAFE_INTEGER: MAX_SAFE_INTEGER, - MAX_SAFE_COMPONENT_LENGTH: MAX_SAFE_COMPONENT_LENGTH -}; - -/***/ }), - -/***/ "./node_modules/@nextcloud/event-bus/node_modules/semver/internal/debug.js": -/*!*********************************************************************************!*\ - !*** ./node_modules/@nextcloud/event-bus/node_modules/semver/internal/debug.js ***! - \*********************************************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -/* provided dependency */ var process = __webpack_require__(/*! ./node_modules/process/browser.js */ "./node_modules/process/browser.js"); -/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js"); -function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } - -var debug = (typeof process === "undefined" ? "undefined" : _typeof(process)) === 'object' && process.env && process.env.NODE_DEBUG && /\bsemver\b/i.test(process.env.NODE_DEBUG) ? function () { - var _console; - - for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { - args[_key] = arguments[_key]; - } - - return (_console = console).error.apply(_console, ['SEMVER'].concat(args)); -} : function () {}; -module.exports = debug; - -/***/ }), - -/***/ "./node_modules/@nextcloud/event-bus/node_modules/semver/internal/identifiers.js": -/*!***************************************************************************************!*\ - !*** ./node_modules/@nextcloud/event-bus/node_modules/semver/internal/identifiers.js ***! - \***************************************************************************************/ -/***/ ((module) => { - -var numeric = /^[0-9]+$/; - -var compareIdentifiers = function compareIdentifiers(a, b) { - var anum = numeric.test(a); - var bnum = numeric.test(b); - - if (anum && bnum) { - a = +a; - b = +b; - } - - return a === b ? 0 : anum && !bnum ? -1 : bnum && !anum ? 1 : a < b ? -1 : 1; -}; - -var rcompareIdentifiers = function rcompareIdentifiers(a, b) { - return compareIdentifiers(b, a); -}; - -module.exports = { - compareIdentifiers: compareIdentifiers, - rcompareIdentifiers: rcompareIdentifiers -}; - -/***/ }), - -/***/ "./node_modules/@nextcloud/event-bus/node_modules/semver/internal/re.js": -/*!******************************************************************************!*\ - !*** ./node_modules/@nextcloud/event-bus/node_modules/semver/internal/re.js ***! - \******************************************************************************/ -/***/ ((module, exports, __webpack_require__) => { - -var _require = __webpack_require__(/*! ./constants */ "./node_modules/@nextcloud/event-bus/node_modules/semver/internal/constants.js"), - MAX_SAFE_COMPONENT_LENGTH = _require.MAX_SAFE_COMPONENT_LENGTH; - -var debug = __webpack_require__(/*! ./debug */ "./node_modules/@nextcloud/event-bus/node_modules/semver/internal/debug.js"); - -exports = module.exports = {}; // The actual regexps go on exports.re - -var re = exports.re = []; -var src = exports.src = []; -var t = exports.t = {}; -var R = 0; - -var createToken = function createToken(name, value, isGlobal) { - var index = R++; - debug(index, value); - t[name] = index; - src[index] = value; - re[index] = new RegExp(value, isGlobal ? 'g' : undefined); -}; // The following Regular Expressions can be used for tokenizing, -// validating, and parsing SemVer version strings. -// ## Numeric Identifier -// A single `0`, or a non-zero digit followed by zero or more digits. - - -createToken('NUMERICIDENTIFIER', '0|[1-9]\\d*'); -createToken('NUMERICIDENTIFIERLOOSE', '[0-9]+'); // ## Non-numeric Identifier -// Zero or more digits, followed by a letter or hyphen, and then zero or -// more letters, digits, or hyphens. - -createToken('NONNUMERICIDENTIFIER', '\\d*[a-zA-Z-][a-zA-Z0-9-]*'); // ## Main Version -// Three dot-separated numeric identifiers. - -createToken('MAINVERSION', "(".concat(src[t.NUMERICIDENTIFIER], ")\\.") + "(".concat(src[t.NUMERICIDENTIFIER], ")\\.") + "(".concat(src[t.NUMERICIDENTIFIER], ")")); -createToken('MAINVERSIONLOOSE', "(".concat(src[t.NUMERICIDENTIFIERLOOSE], ")\\.") + "(".concat(src[t.NUMERICIDENTIFIERLOOSE], ")\\.") + "(".concat(src[t.NUMERICIDENTIFIERLOOSE], ")")); // ## Pre-release Version Identifier -// A numeric identifier, or a non-numeric identifier. - -createToken('PRERELEASEIDENTIFIER', "(?:".concat(src[t.NUMERICIDENTIFIER], "|").concat(src[t.NONNUMERICIDENTIFIER], ")")); -createToken('PRERELEASEIDENTIFIERLOOSE', "(?:".concat(src[t.NUMERICIDENTIFIERLOOSE], "|").concat(src[t.NONNUMERICIDENTIFIER], ")")); // ## Pre-release Version -// Hyphen, followed by one or more dot-separated pre-release version -// identifiers. - -createToken('PRERELEASE', "(?:-(".concat(src[t.PRERELEASEIDENTIFIER], "(?:\\.").concat(src[t.PRERELEASEIDENTIFIER], ")*))")); -createToken('PRERELEASELOOSE', "(?:-?(".concat(src[t.PRERELEASEIDENTIFIERLOOSE], "(?:\\.").concat(src[t.PRERELEASEIDENTIFIERLOOSE], ")*))")); // ## Build Metadata Identifier -// Any combination of digits, letters, or hyphens. - -createToken('BUILDIDENTIFIER', '[0-9A-Za-z-]+'); // ## Build Metadata -// Plus sign, followed by one or more period-separated build metadata -// identifiers. - -createToken('BUILD', "(?:\\+(".concat(src[t.BUILDIDENTIFIER], "(?:\\.").concat(src[t.BUILDIDENTIFIER], ")*))")); // ## Full Version String -// A main version, followed optionally by a pre-release version and -// build metadata. -// Note that the only major, minor, patch, and pre-release sections of -// the version string are capturing groups. The build metadata is not a -// capturing group, because it should not ever be used in version -// comparison. - -createToken('FULLPLAIN', "v?".concat(src[t.MAINVERSION]).concat(src[t.PRERELEASE], "?").concat(src[t.BUILD], "?")); -createToken('FULL', "^".concat(src[t.FULLPLAIN], "$")); // like full, but allows v1.2.3 and =1.2.3, which people do sometimes. -// also, 1.0.0alpha1 (prerelease without the hyphen) which is pretty -// common in the npm registry. - -createToken('LOOSEPLAIN', "[v=\\s]*".concat(src[t.MAINVERSIONLOOSE]).concat(src[t.PRERELEASELOOSE], "?").concat(src[t.BUILD], "?")); -createToken('LOOSE', "^".concat(src[t.LOOSEPLAIN], "$")); -createToken('GTLT', '((?:<|>)?=?)'); // Something like "2.*" or "1.2.x". -// Note that "x.x" is a valid xRange identifer, meaning "any version" -// Only the first item is strictly required. - -createToken('XRANGEIDENTIFIERLOOSE', "".concat(src[t.NUMERICIDENTIFIERLOOSE], "|x|X|\\*")); -createToken('XRANGEIDENTIFIER', "".concat(src[t.NUMERICIDENTIFIER], "|x|X|\\*")); -createToken('XRANGEPLAIN', "[v=\\s]*(".concat(src[t.XRANGEIDENTIFIER], ")") + "(?:\\.(".concat(src[t.XRANGEIDENTIFIER], ")") + "(?:\\.(".concat(src[t.XRANGEIDENTIFIER], ")") + "(?:".concat(src[t.PRERELEASE], ")?").concat(src[t.BUILD], "?") + ")?)?"); -createToken('XRANGEPLAINLOOSE', "[v=\\s]*(".concat(src[t.XRANGEIDENTIFIERLOOSE], ")") + "(?:\\.(".concat(src[t.XRANGEIDENTIFIERLOOSE], ")") + "(?:\\.(".concat(src[t.XRANGEIDENTIFIERLOOSE], ")") + "(?:".concat(src[t.PRERELEASELOOSE], ")?").concat(src[t.BUILD], "?") + ")?)?"); -createToken('XRANGE', "^".concat(src[t.GTLT], "\\s*").concat(src[t.XRANGEPLAIN], "$")); -createToken('XRANGELOOSE', "^".concat(src[t.GTLT], "\\s*").concat(src[t.XRANGEPLAINLOOSE], "$")); // Coercion. -// Extract anything that could conceivably be a part of a valid semver - -createToken('COERCE', "".concat('(^|[^\\d])' + '(\\d{1,').concat(MAX_SAFE_COMPONENT_LENGTH, "})") + "(?:\\.(\\d{1,".concat(MAX_SAFE_COMPONENT_LENGTH, "}))?") + "(?:\\.(\\d{1,".concat(MAX_SAFE_COMPONENT_LENGTH, "}))?") + "(?:$|[^\\d])"); -createToken('COERCERTL', src[t.COERCE], true); // Tilde ranges. -// Meaning is "reasonably at or greater than" - -createToken('LONETILDE', '(?:~>?)'); -createToken('TILDETRIM', "(\\s*)".concat(src[t.LONETILDE], "\\s+"), true); -exports.tildeTrimReplace = '$1~'; -createToken('TILDE', "^".concat(src[t.LONETILDE]).concat(src[t.XRANGEPLAIN], "$")); -createToken('TILDELOOSE', "^".concat(src[t.LONETILDE]).concat(src[t.XRANGEPLAINLOOSE], "$")); // Caret ranges. -// Meaning is "at least and backwards compatible with" - -createToken('LONECARET', '(?:\\^)'); -createToken('CARETTRIM', "(\\s*)".concat(src[t.LONECARET], "\\s+"), true); -exports.caretTrimReplace = '$1^'; -createToken('CARET', "^".concat(src[t.LONECARET]).concat(src[t.XRANGEPLAIN], "$")); -createToken('CARETLOOSE', "^".concat(src[t.LONECARET]).concat(src[t.XRANGEPLAINLOOSE], "$")); // A simple gt/lt/eq thing, or just "" to indicate "any version" - -createToken('COMPARATORLOOSE', "^".concat(src[t.GTLT], "\\s*(").concat(src[t.LOOSEPLAIN], ")$|^$")); -createToken('COMPARATOR', "^".concat(src[t.GTLT], "\\s*(").concat(src[t.FULLPLAIN], ")$|^$")); // An expression to strip any whitespace between the gtlt and the thing -// it modifies, so that `> 1.2.3` ==> `>1.2.3` - -createToken('COMPARATORTRIM', "(\\s*)".concat(src[t.GTLT], "\\s*(").concat(src[t.LOOSEPLAIN], "|").concat(src[t.XRANGEPLAIN], ")"), true); -exports.comparatorTrimReplace = '$1$2$3'; // Something like `1.2.3 - 1.2.4` -// Note that these all use the loose form, because they'll be -// checked against either the strict or loose comparator form -// later. - -createToken('HYPHENRANGE', "^\\s*(".concat(src[t.XRANGEPLAIN], ")") + "\\s+-\\s+" + "(".concat(src[t.XRANGEPLAIN], ")") + "\\s*$"); -createToken('HYPHENRANGELOOSE', "^\\s*(".concat(src[t.XRANGEPLAINLOOSE], ")") + "\\s+-\\s+" + "(".concat(src[t.XRANGEPLAINLOOSE], ")") + "\\s*$"); // Star ranges basically just allow anything at all. - -createToken('STAR', '(<|>)?=?\\s*\\*'); // >=0.0.0 is like a star - -createToken('GTE0', '^\\s*>=\\s*0\.0\.0\\s*$'); -createToken('GTE0PRE', '^\\s*>=\\s*0\.0\.0-0\\s*$'); - -/***/ }), - -/***/ "./node_modules/core-js/internals/a-possible-prototype.js": -/*!****************************************************************!*\ - !*** ./node_modules/core-js/internals/a-possible-prototype.js ***! - \****************************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var global = __webpack_require__(/*! ../internals/global */ "./node_modules/core-js/internals/global.js"); -var isCallable = __webpack_require__(/*! ../internals/is-callable */ "./node_modules/core-js/internals/is-callable.js"); - -var String = global.String; -var TypeError = global.TypeError; - -module.exports = function (argument) { - if (typeof argument == 'object' || isCallable(argument)) return argument; - throw TypeError("Can't set " + String(argument) + ' as a prototype'); -}; - - -/***/ }), - -/***/ "./node_modules/core-js/internals/add-to-unscopables.js": -/*!**************************************************************!*\ - !*** ./node_modules/core-js/internals/add-to-unscopables.js ***! - \**************************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ "./node_modules/core-js/internals/well-known-symbol.js"); -var create = __webpack_require__(/*! ../internals/object-create */ "./node_modules/core-js/internals/object-create.js"); -var definePropertyModule = __webpack_require__(/*! ../internals/object-define-property */ "./node_modules/core-js/internals/object-define-property.js"); - -var UNSCOPABLES = wellKnownSymbol('unscopables'); -var ArrayPrototype = Array.prototype; - -// Array.prototype[@@unscopables] -// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables -if (ArrayPrototype[UNSCOPABLES] == undefined) { - definePropertyModule.f(ArrayPrototype, UNSCOPABLES, { - configurable: true, - value: create(null) - }); -} - -// add a key to Array.prototype[@@unscopables] -module.exports = function (key) { - ArrayPrototype[UNSCOPABLES][key] = true; -}; - - -/***/ }), - -/***/ "./node_modules/core-js/internals/correct-prototype-getter.js": -/*!********************************************************************!*\ - !*** ./node_modules/core-js/internals/correct-prototype-getter.js ***! - \********************************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var fails = __webpack_require__(/*! ../internals/fails */ "./node_modules/core-js/internals/fails.js"); - -module.exports = !fails(function () { - function F() { /* empty */ } - F.prototype.constructor = null; - // eslint-disable-next-line es-x/no-object-getprototypeof -- required for testing - return Object.getPrototypeOf(new F()) !== F.prototype; -}); - - -/***/ }), - -/***/ "./node_modules/core-js/internals/create-iterator-constructor.js": -/*!***********************************************************************!*\ - !*** ./node_modules/core-js/internals/create-iterator-constructor.js ***! - \***********************************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -"use strict"; - -var IteratorPrototype = (__webpack_require__(/*! ../internals/iterators-core */ "./node_modules/core-js/internals/iterators-core.js").IteratorPrototype); -var create = __webpack_require__(/*! ../internals/object-create */ "./node_modules/core-js/internals/object-create.js"); -var createPropertyDescriptor = __webpack_require__(/*! ../internals/create-property-descriptor */ "./node_modules/core-js/internals/create-property-descriptor.js"); -var setToStringTag = __webpack_require__(/*! ../internals/set-to-string-tag */ "./node_modules/core-js/internals/set-to-string-tag.js"); -var Iterators = __webpack_require__(/*! ../internals/iterators */ "./node_modules/core-js/internals/iterators.js"); - -var returnThis = function () { return this; }; - -module.exports = function (IteratorConstructor, NAME, next, ENUMERABLE_NEXT) { - var TO_STRING_TAG = NAME + ' Iterator'; - IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(+!ENUMERABLE_NEXT, next) }); - setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true); - Iterators[TO_STRING_TAG] = returnThis; - return IteratorConstructor; -}; - - -/***/ }), - -/***/ "./node_modules/core-js/internals/define-iterator.js": -/*!***********************************************************!*\ - !*** ./node_modules/core-js/internals/define-iterator.js ***! - \***********************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -"use strict"; - -var $ = __webpack_require__(/*! ../internals/export */ "./node_modules/core-js/internals/export.js"); -var call = __webpack_require__(/*! ../internals/function-call */ "./node_modules/core-js/internals/function-call.js"); -var IS_PURE = __webpack_require__(/*! ../internals/is-pure */ "./node_modules/core-js/internals/is-pure.js"); -var FunctionName = __webpack_require__(/*! ../internals/function-name */ "./node_modules/core-js/internals/function-name.js"); -var isCallable = __webpack_require__(/*! ../internals/is-callable */ "./node_modules/core-js/internals/is-callable.js"); -var createIteratorConstructor = __webpack_require__(/*! ../internals/create-iterator-constructor */ "./node_modules/core-js/internals/create-iterator-constructor.js"); -var getPrototypeOf = __webpack_require__(/*! ../internals/object-get-prototype-of */ "./node_modules/core-js/internals/object-get-prototype-of.js"); -var setPrototypeOf = __webpack_require__(/*! ../internals/object-set-prototype-of */ "./node_modules/core-js/internals/object-set-prototype-of.js"); -var setToStringTag = __webpack_require__(/*! ../internals/set-to-string-tag */ "./node_modules/core-js/internals/set-to-string-tag.js"); -var createNonEnumerableProperty = __webpack_require__(/*! ../internals/create-non-enumerable-property */ "./node_modules/core-js/internals/create-non-enumerable-property.js"); -var redefine = __webpack_require__(/*! ../internals/redefine */ "./node_modules/core-js/internals/redefine.js"); -var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ "./node_modules/core-js/internals/well-known-symbol.js"); -var Iterators = __webpack_require__(/*! ../internals/iterators */ "./node_modules/core-js/internals/iterators.js"); -var IteratorsCore = __webpack_require__(/*! ../internals/iterators-core */ "./node_modules/core-js/internals/iterators-core.js"); - -var PROPER_FUNCTION_NAME = FunctionName.PROPER; -var CONFIGURABLE_FUNCTION_NAME = FunctionName.CONFIGURABLE; -var IteratorPrototype = IteratorsCore.IteratorPrototype; -var BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS; -var ITERATOR = wellKnownSymbol('iterator'); -var KEYS = 'keys'; -var VALUES = 'values'; -var ENTRIES = 'entries'; - -var returnThis = function () { return this; }; - -module.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) { - createIteratorConstructor(IteratorConstructor, NAME, next); - - var getIterationMethod = function (KIND) { - if (KIND === DEFAULT && defaultIterator) return defaultIterator; - if (!BUGGY_SAFARI_ITERATORS && KIND in IterablePrototype) return IterablePrototype[KIND]; - switch (KIND) { - case KEYS: return function keys() { return new IteratorConstructor(this, KIND); }; - case VALUES: return function values() { return new IteratorConstructor(this, KIND); }; - case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); }; - } return function () { return new IteratorConstructor(this); }; - }; - - var TO_STRING_TAG = NAME + ' Iterator'; - var INCORRECT_VALUES_NAME = false; - var IterablePrototype = Iterable.prototype; - var nativeIterator = IterablePrototype[ITERATOR] - || IterablePrototype['@@iterator'] - || DEFAULT && IterablePrototype[DEFAULT]; - var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT); - var anyNativeIterator = NAME == 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator; - var CurrentIteratorPrototype, methods, KEY; - - // fix native - if (anyNativeIterator) { - CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable())); - if (CurrentIteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) { - if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) { - if (setPrototypeOf) { - setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype); - } else if (!isCallable(CurrentIteratorPrototype[ITERATOR])) { - redefine(CurrentIteratorPrototype, ITERATOR, returnThis); - } - } - // Set @@toStringTag to native iterators - setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true); - if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis; - } - } - - // fix Array.prototype.{ values, @@iterator }.name in V8 / FF - if (PROPER_FUNCTION_NAME && DEFAULT == VALUES && nativeIterator && nativeIterator.name !== VALUES) { - if (!IS_PURE && CONFIGURABLE_FUNCTION_NAME) { - createNonEnumerableProperty(IterablePrototype, 'name', VALUES); - } else { - INCORRECT_VALUES_NAME = true; - defaultIterator = function values() { return call(nativeIterator, this); }; - } - } - - // export additional methods - if (DEFAULT) { - methods = { - values: getIterationMethod(VALUES), - keys: IS_SET ? defaultIterator : getIterationMethod(KEYS), - entries: getIterationMethod(ENTRIES) - }; - if (FORCED) for (KEY in methods) { - if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) { - redefine(IterablePrototype, KEY, methods[KEY]); - } - } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods); - } - - // define iterator - if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) { - redefine(IterablePrototype, ITERATOR, defaultIterator, { name: DEFAULT }); - } - Iterators[NAME] = defaultIterator; - - return methods; -}; - - -/***/ }), - -/***/ "./node_modules/core-js/internals/dom-iterables.js": -/*!*********************************************************!*\ - !*** ./node_modules/core-js/internals/dom-iterables.js ***! - \*********************************************************/ -/***/ ((module) => { - -// iterable DOM collections -// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods -module.exports = { - CSSRuleList: 0, - CSSStyleDeclaration: 0, - CSSValueList: 0, - ClientRectList: 0, - DOMRectList: 0, - DOMStringList: 0, - DOMTokenList: 1, - DataTransferItemList: 0, - FileList: 0, - HTMLAllCollection: 0, - HTMLCollection: 0, - HTMLFormElement: 0, - HTMLSelectElement: 0, - MediaList: 0, - MimeTypeArray: 0, - NamedNodeMap: 0, - NodeList: 1, - PaintRequestList: 0, - Plugin: 0, - PluginArray: 0, - SVGLengthList: 0, - SVGNumberList: 0, - SVGPathSegList: 0, - SVGPointList: 0, - SVGStringList: 0, - SVGTransformList: 0, - SourceBufferList: 0, - StyleSheetList: 0, - TextTrackCueList: 0, - TextTrackList: 0, - TouchList: 0 -}; - - -/***/ }), - -/***/ "./node_modules/core-js/internals/dom-token-list-prototype.js": -/*!********************************************************************!*\ - !*** ./node_modules/core-js/internals/dom-token-list-prototype.js ***! - \********************************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -// in old WebKit versions, `element.classList` is not an instance of global `DOMTokenList` -var documentCreateElement = __webpack_require__(/*! ../internals/document-create-element */ "./node_modules/core-js/internals/document-create-element.js"); - -var classList = documentCreateElement('span').classList; -var DOMTokenListPrototype = classList && classList.constructor && classList.constructor.prototype; - -module.exports = DOMTokenListPrototype === Object.prototype ? undefined : DOMTokenListPrototype; - - -/***/ }), - -/***/ "./node_modules/core-js/internals/iterators-core.js": -/*!**********************************************************!*\ - !*** ./node_modules/core-js/internals/iterators-core.js ***! - \**********************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -"use strict"; - -var fails = __webpack_require__(/*! ../internals/fails */ "./node_modules/core-js/internals/fails.js"); -var isCallable = __webpack_require__(/*! ../internals/is-callable */ "./node_modules/core-js/internals/is-callable.js"); -var create = __webpack_require__(/*! ../internals/object-create */ "./node_modules/core-js/internals/object-create.js"); -var getPrototypeOf = __webpack_require__(/*! ../internals/object-get-prototype-of */ "./node_modules/core-js/internals/object-get-prototype-of.js"); -var redefine = __webpack_require__(/*! ../internals/redefine */ "./node_modules/core-js/internals/redefine.js"); -var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ "./node_modules/core-js/internals/well-known-symbol.js"); -var IS_PURE = __webpack_require__(/*! ../internals/is-pure */ "./node_modules/core-js/internals/is-pure.js"); - -var ITERATOR = wellKnownSymbol('iterator'); -var BUGGY_SAFARI_ITERATORS = false; - -// `%IteratorPrototype%` object -// https://tc39.es/ecma262/#sec-%iteratorprototype%-object -var IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator; - -/* eslint-disable es-x/no-array-prototype-keys -- safe */ -if ([].keys) { - arrayIterator = [].keys(); - // Safari 8 has buggy iterators w/o `next` - if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true; - else { - PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator)); - if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype; - } -} - -var NEW_ITERATOR_PROTOTYPE = IteratorPrototype == undefined || fails(function () { - var test = {}; - // FF44- legacy iterators case - return IteratorPrototype[ITERATOR].call(test) !== test; -}); - -if (NEW_ITERATOR_PROTOTYPE) IteratorPrototype = {}; -else if (IS_PURE) IteratorPrototype = create(IteratorPrototype); - -// `%IteratorPrototype%[@@iterator]()` method -// https://tc39.es/ecma262/#sec-%iteratorprototype%-@@iterator -if (!isCallable(IteratorPrototype[ITERATOR])) { - redefine(IteratorPrototype, ITERATOR, function () { - return this; - }); -} - -module.exports = { - IteratorPrototype: IteratorPrototype, - BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS -}; - - -/***/ }), - -/***/ "./node_modules/core-js/internals/iterators.js": -/*!*****************************************************!*\ - !*** ./node_modules/core-js/internals/iterators.js ***! - \*****************************************************/ -/***/ ((module) => { - -module.exports = {}; - - -/***/ }), - -/***/ "./node_modules/core-js/internals/object-get-prototype-of.js": -/*!*******************************************************************!*\ - !*** ./node_modules/core-js/internals/object-get-prototype-of.js ***! - \*******************************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var global = __webpack_require__(/*! ../internals/global */ "./node_modules/core-js/internals/global.js"); -var hasOwn = __webpack_require__(/*! ../internals/has-own-property */ "./node_modules/core-js/internals/has-own-property.js"); -var isCallable = __webpack_require__(/*! ../internals/is-callable */ "./node_modules/core-js/internals/is-callable.js"); -var toObject = __webpack_require__(/*! ../internals/to-object */ "./node_modules/core-js/internals/to-object.js"); -var sharedKey = __webpack_require__(/*! ../internals/shared-key */ "./node_modules/core-js/internals/shared-key.js"); -var CORRECT_PROTOTYPE_GETTER = __webpack_require__(/*! ../internals/correct-prototype-getter */ "./node_modules/core-js/internals/correct-prototype-getter.js"); - -var IE_PROTO = sharedKey('IE_PROTO'); -var Object = global.Object; -var ObjectPrototype = Object.prototype; - -// `Object.getPrototypeOf` method -// https://tc39.es/ecma262/#sec-object.getprototypeof -module.exports = CORRECT_PROTOTYPE_GETTER ? Object.getPrototypeOf : function (O) { - var object = toObject(O); - if (hasOwn(object, IE_PROTO)) return object[IE_PROTO]; - var constructor = object.constructor; - if (isCallable(constructor) && object instanceof constructor) { - return constructor.prototype; - } return object instanceof Object ? ObjectPrototype : null; -}; - - -/***/ }), - -/***/ "./node_modules/core-js/internals/object-set-prototype-of.js": -/*!*******************************************************************!*\ - !*** ./node_modules/core-js/internals/object-set-prototype-of.js ***! - \*******************************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -/* eslint-disable no-proto -- safe */ -var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ "./node_modules/core-js/internals/function-uncurry-this.js"); -var anObject = __webpack_require__(/*! ../internals/an-object */ "./node_modules/core-js/internals/an-object.js"); -var aPossiblePrototype = __webpack_require__(/*! ../internals/a-possible-prototype */ "./node_modules/core-js/internals/a-possible-prototype.js"); - -// `Object.setPrototypeOf` method -// https://tc39.es/ecma262/#sec-object.setprototypeof -// Works with __proto__ only. Old v8 can't work with null proto objects. -// eslint-disable-next-line es-x/no-object-setprototypeof -- safe -module.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () { - var CORRECT_SETTER = false; - var test = {}; - var setter; - try { - // eslint-disable-next-line es-x/no-object-getownpropertydescriptor -- safe - setter = uncurryThis(Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set); - setter(test, []); - CORRECT_SETTER = test instanceof Array; - } catch (error) { /* empty */ } - return function setPrototypeOf(O, proto) { - anObject(O); - aPossiblePrototype(proto); - if (CORRECT_SETTER) setter(O, proto); - else O.__proto__ = proto; - return O; - }; -}() : undefined); - - -/***/ }), - -/***/ "./node_modules/core-js/internals/object-to-string.js": -/*!************************************************************!*\ - !*** ./node_modules/core-js/internals/object-to-string.js ***! - \************************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -"use strict"; - -var TO_STRING_TAG_SUPPORT = __webpack_require__(/*! ../internals/to-string-tag-support */ "./node_modules/core-js/internals/to-string-tag-support.js"); -var classof = __webpack_require__(/*! ../internals/classof */ "./node_modules/core-js/internals/classof.js"); - -// `Object.prototype.toString` method implementation -// https://tc39.es/ecma262/#sec-object.prototype.tostring -module.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() { - return '[object ' + classof(this) + ']'; -}; - - -/***/ }), - -/***/ "./node_modules/core-js/internals/regexp-get-flags.js": -/*!************************************************************!*\ - !*** ./node_modules/core-js/internals/regexp-get-flags.js ***! - \************************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var call = __webpack_require__(/*! ../internals/function-call */ "./node_modules/core-js/internals/function-call.js"); -var hasOwn = __webpack_require__(/*! ../internals/has-own-property */ "./node_modules/core-js/internals/has-own-property.js"); -var isPrototypeOf = __webpack_require__(/*! ../internals/object-is-prototype-of */ "./node_modules/core-js/internals/object-is-prototype-of.js"); -var regExpFlags = __webpack_require__(/*! ../internals/regexp-flags */ "./node_modules/core-js/internals/regexp-flags.js"); - -var RegExpPrototype = RegExp.prototype; - -module.exports = function (R) { - var flags = R.flags; - return flags === undefined && !('flags' in RegExpPrototype) && !hasOwn(R, 'flags') && isPrototypeOf(RegExpPrototype, R) - ? call(regExpFlags, R) : flags; -}; - - -/***/ }), - -/***/ "./node_modules/core-js/internals/set-to-string-tag.js": -/*!*************************************************************!*\ - !*** ./node_modules/core-js/internals/set-to-string-tag.js ***! - \*************************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var defineProperty = (__webpack_require__(/*! ../internals/object-define-property */ "./node_modules/core-js/internals/object-define-property.js").f); -var hasOwn = __webpack_require__(/*! ../internals/has-own-property */ "./node_modules/core-js/internals/has-own-property.js"); -var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ "./node_modules/core-js/internals/well-known-symbol.js"); - -var TO_STRING_TAG = wellKnownSymbol('toStringTag'); - -module.exports = function (target, TAG, STATIC) { - if (target && !STATIC) target = target.prototype; - if (target && !hasOwn(target, TO_STRING_TAG)) { - defineProperty(target, TO_STRING_TAG, { configurable: true, value: TAG }); - } -}; - - -/***/ }), - -/***/ "./node_modules/core-js/modules/es.array.iterator.js": -/*!***********************************************************!*\ - !*** ./node_modules/core-js/modules/es.array.iterator.js ***! - \***********************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -"use strict"; - -var toIndexedObject = __webpack_require__(/*! ../internals/to-indexed-object */ "./node_modules/core-js/internals/to-indexed-object.js"); -var addToUnscopables = __webpack_require__(/*! ../internals/add-to-unscopables */ "./node_modules/core-js/internals/add-to-unscopables.js"); -var Iterators = __webpack_require__(/*! ../internals/iterators */ "./node_modules/core-js/internals/iterators.js"); -var InternalStateModule = __webpack_require__(/*! ../internals/internal-state */ "./node_modules/core-js/internals/internal-state.js"); -var defineProperty = (__webpack_require__(/*! ../internals/object-define-property */ "./node_modules/core-js/internals/object-define-property.js").f); -var defineIterator = __webpack_require__(/*! ../internals/define-iterator */ "./node_modules/core-js/internals/define-iterator.js"); -var IS_PURE = __webpack_require__(/*! ../internals/is-pure */ "./node_modules/core-js/internals/is-pure.js"); -var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ "./node_modules/core-js/internals/descriptors.js"); - -var ARRAY_ITERATOR = 'Array Iterator'; -var setInternalState = InternalStateModule.set; -var getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR); - -// `Array.prototype.entries` method -// https://tc39.es/ecma262/#sec-array.prototype.entries -// `Array.prototype.keys` method -// https://tc39.es/ecma262/#sec-array.prototype.keys -// `Array.prototype.values` method -// https://tc39.es/ecma262/#sec-array.prototype.values -// `Array.prototype[@@iterator]` method -// https://tc39.es/ecma262/#sec-array.prototype-@@iterator -// `CreateArrayIterator` internal method -// https://tc39.es/ecma262/#sec-createarrayiterator -module.exports = defineIterator(Array, 'Array', function (iterated, kind) { - setInternalState(this, { - type: ARRAY_ITERATOR, - target: toIndexedObject(iterated), // target - index: 0, // next index - kind: kind // kind - }); -// `%ArrayIteratorPrototype%.next` method -// https://tc39.es/ecma262/#sec-%arrayiteratorprototype%.next -}, function () { - var state = getInternalState(this); - var target = state.target; - var kind = state.kind; - var index = state.index++; - if (!target || index >= target.length) { - state.target = undefined; - return { value: undefined, done: true }; - } - if (kind == 'keys') return { value: index, done: false }; - if (kind == 'values') return { value: target[index], done: false }; - return { value: [index, target[index]], done: false }; -}, 'values'); - -// argumentsList[@@iterator] is %ArrayProto_values% -// https://tc39.es/ecma262/#sec-createunmappedargumentsobject -// https://tc39.es/ecma262/#sec-createmappedargumentsobject -var values = Iterators.Arguments = Iterators.Array; - -// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables -addToUnscopables('keys'); -addToUnscopables('values'); -addToUnscopables('entries'); - -// V8 ~ Chrome 45- bug -if (!IS_PURE && DESCRIPTORS && values.name !== 'values') try { - defineProperty(values, 'name', { value: 'values' }); -} catch (error) { /* empty */ } - - -/***/ }), - -/***/ "./node_modules/core-js/modules/es.object.to-string.js": -/*!*************************************************************!*\ - !*** ./node_modules/core-js/modules/es.object.to-string.js ***! - \*************************************************************/ -/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => { - -var TO_STRING_TAG_SUPPORT = __webpack_require__(/*! ../internals/to-string-tag-support */ "./node_modules/core-js/internals/to-string-tag-support.js"); -var redefine = __webpack_require__(/*! ../internals/redefine */ "./node_modules/core-js/internals/redefine.js"); -var toString = __webpack_require__(/*! ../internals/object-to-string */ "./node_modules/core-js/internals/object-to-string.js"); - -// `Object.prototype.toString` method -// https://tc39.es/ecma262/#sec-object.prototype.tostring -if (!TO_STRING_TAG_SUPPORT) { - redefine(Object.prototype, 'toString', toString, { unsafe: true }); -} - - -/***/ }), - -/***/ "./node_modules/core-js/modules/es.regexp.to-string.js": -/*!*************************************************************!*\ - !*** ./node_modules/core-js/modules/es.regexp.to-string.js ***! - \*************************************************************/ -/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => { - -"use strict"; - -var PROPER_FUNCTION_NAME = (__webpack_require__(/*! ../internals/function-name */ "./node_modules/core-js/internals/function-name.js").PROPER); -var redefine = __webpack_require__(/*! ../internals/redefine */ "./node_modules/core-js/internals/redefine.js"); -var anObject = __webpack_require__(/*! ../internals/an-object */ "./node_modules/core-js/internals/an-object.js"); -var $toString = __webpack_require__(/*! ../internals/to-string */ "./node_modules/core-js/internals/to-string.js"); -var fails = __webpack_require__(/*! ../internals/fails */ "./node_modules/core-js/internals/fails.js"); -var getRegExpFlags = __webpack_require__(/*! ../internals/regexp-get-flags */ "./node_modules/core-js/internals/regexp-get-flags.js"); - -var TO_STRING = 'toString'; -var RegExpPrototype = RegExp.prototype; -var n$ToString = RegExpPrototype[TO_STRING]; - -var NOT_GENERIC = fails(function () { return n$ToString.call({ source: 'a', flags: 'b' }) != '/a/b'; }); -// FF44- RegExp#toString has a wrong name -var INCORRECT_NAME = PROPER_FUNCTION_NAME && n$ToString.name != TO_STRING; - -// `RegExp.prototype.toString` method -// https://tc39.es/ecma262/#sec-regexp.prototype.tostring -if (NOT_GENERIC || INCORRECT_NAME) { - redefine(RegExp.prototype, TO_STRING, function toString() { - var R = anObject(this); - var pattern = $toString(R.source); - var flags = $toString(getRegExpFlags(R)); - return '/' + pattern + '/' + flags; - }, { unsafe: true }); -} - - -/***/ }), - -/***/ "./node_modules/core-js/modules/web.dom-collections.iterator.js": -/*!**********************************************************************!*\ - !*** ./node_modules/core-js/modules/web.dom-collections.iterator.js ***! - \**********************************************************************/ -/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => { - -var global = __webpack_require__(/*! ../internals/global */ "./node_modules/core-js/internals/global.js"); -var DOMIterables = __webpack_require__(/*! ../internals/dom-iterables */ "./node_modules/core-js/internals/dom-iterables.js"); -var DOMTokenListPrototype = __webpack_require__(/*! ../internals/dom-token-list-prototype */ "./node_modules/core-js/internals/dom-token-list-prototype.js"); -var ArrayIteratorMethods = __webpack_require__(/*! ../modules/es.array.iterator */ "./node_modules/core-js/modules/es.array.iterator.js"); -var createNonEnumerableProperty = __webpack_require__(/*! ../internals/create-non-enumerable-property */ "./node_modules/core-js/internals/create-non-enumerable-property.js"); -var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ "./node_modules/core-js/internals/well-known-symbol.js"); - -var ITERATOR = wellKnownSymbol('iterator'); -var TO_STRING_TAG = wellKnownSymbol('toStringTag'); -var ArrayValues = ArrayIteratorMethods.values; - -var handlePrototype = function (CollectionPrototype, COLLECTION_NAME) { - if (CollectionPrototype) { - // some Chrome versions have non-configurable methods on DOMTokenList - if (CollectionPrototype[ITERATOR] !== ArrayValues) try { - createNonEnumerableProperty(CollectionPrototype, ITERATOR, ArrayValues); - } catch (error) { - CollectionPrototype[ITERATOR] = ArrayValues; - } - if (!CollectionPrototype[TO_STRING_TAG]) { - createNonEnumerableProperty(CollectionPrototype, TO_STRING_TAG, COLLECTION_NAME); - } - if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) { - // some Chrome versions have non-configurable methods on DOMTokenList - if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try { - createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]); - } catch (error) { - CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME]; - } - } - } -}; - -for (var COLLECTION_NAME in DOMIterables) { - handlePrototype(global[COLLECTION_NAME] && global[COLLECTION_NAME].prototype, COLLECTION_NAME); -} - -handlePrototype(DOMTokenListPrototype, 'DOMTokenList'); - - -/***/ }), - -/***/ "./node_modules/lodash/_DataView.js": -/*!******************************************!*\ - !*** ./node_modules/lodash/_DataView.js ***! - \******************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var getNative = __webpack_require__(/*! ./_getNative */ "./node_modules/lodash/_getNative.js"), - root = __webpack_require__(/*! ./_root */ "./node_modules/lodash/_root.js"); - -/* Built-in method references that are verified to be native. */ -var DataView = getNative(root, 'DataView'); - -module.exports = DataView; - - -/***/ }), - -/***/ "./node_modules/lodash/_Hash.js": -/*!**************************************!*\ - !*** ./node_modules/lodash/_Hash.js ***! - \**************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var hashClear = __webpack_require__(/*! ./_hashClear */ "./node_modules/lodash/_hashClear.js"), - hashDelete = __webpack_require__(/*! ./_hashDelete */ "./node_modules/lodash/_hashDelete.js"), - hashGet = __webpack_require__(/*! ./_hashGet */ "./node_modules/lodash/_hashGet.js"), - hashHas = __webpack_require__(/*! ./_hashHas */ "./node_modules/lodash/_hashHas.js"), - hashSet = __webpack_require__(/*! ./_hashSet */ "./node_modules/lodash/_hashSet.js"); - -/** - * Creates a hash object. - * - * @private - * @constructor - * @param {Array} [entries] The key-value pairs to cache. - */ -function Hash(entries) { - var index = -1, - length = entries == null ? 0 : entries.length; - - this.clear(); - while (++index < length) { - var entry = entries[index]; - this.set(entry[0], entry[1]); - } -} - -// Add methods to `Hash`. -Hash.prototype.clear = hashClear; -Hash.prototype['delete'] = hashDelete; -Hash.prototype.get = hashGet; -Hash.prototype.has = hashHas; -Hash.prototype.set = hashSet; - -module.exports = Hash; - - -/***/ }), - -/***/ "./node_modules/lodash/_ListCache.js": -/*!*******************************************!*\ - !*** ./node_modules/lodash/_ListCache.js ***! - \*******************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var listCacheClear = __webpack_require__(/*! ./_listCacheClear */ "./node_modules/lodash/_listCacheClear.js"), - listCacheDelete = __webpack_require__(/*! ./_listCacheDelete */ "./node_modules/lodash/_listCacheDelete.js"), - listCacheGet = __webpack_require__(/*! ./_listCacheGet */ "./node_modules/lodash/_listCacheGet.js"), - listCacheHas = __webpack_require__(/*! ./_listCacheHas */ "./node_modules/lodash/_listCacheHas.js"), - listCacheSet = __webpack_require__(/*! ./_listCacheSet */ "./node_modules/lodash/_listCacheSet.js"); - -/** - * Creates an list cache object. - * - * @private - * @constructor - * @param {Array} [entries] The key-value pairs to cache. - */ -function ListCache(entries) { - var index = -1, - length = entries == null ? 0 : entries.length; - - this.clear(); - while (++index < length) { - var entry = entries[index]; - this.set(entry[0], entry[1]); - } -} - -// Add methods to `ListCache`. -ListCache.prototype.clear = listCacheClear; -ListCache.prototype['delete'] = listCacheDelete; -ListCache.prototype.get = listCacheGet; -ListCache.prototype.has = listCacheHas; -ListCache.prototype.set = listCacheSet; - -module.exports = ListCache; - - -/***/ }), - -/***/ "./node_modules/lodash/_Map.js": -/*!*************************************!*\ - !*** ./node_modules/lodash/_Map.js ***! - \*************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var getNative = __webpack_require__(/*! ./_getNative */ "./node_modules/lodash/_getNative.js"), - root = __webpack_require__(/*! ./_root */ "./node_modules/lodash/_root.js"); - -/* Built-in method references that are verified to be native. */ -var Map = getNative(root, 'Map'); - -module.exports = Map; - - -/***/ }), - -/***/ "./node_modules/lodash/_MapCache.js": -/*!******************************************!*\ - !*** ./node_modules/lodash/_MapCache.js ***! - \******************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var mapCacheClear = __webpack_require__(/*! ./_mapCacheClear */ "./node_modules/lodash/_mapCacheClear.js"), - mapCacheDelete = __webpack_require__(/*! ./_mapCacheDelete */ "./node_modules/lodash/_mapCacheDelete.js"), - mapCacheGet = __webpack_require__(/*! ./_mapCacheGet */ "./node_modules/lodash/_mapCacheGet.js"), - mapCacheHas = __webpack_require__(/*! ./_mapCacheHas */ "./node_modules/lodash/_mapCacheHas.js"), - mapCacheSet = __webpack_require__(/*! ./_mapCacheSet */ "./node_modules/lodash/_mapCacheSet.js"); - -/** - * Creates a map cache object to store key-value pairs. - * - * @private - * @constructor - * @param {Array} [entries] The key-value pairs to cache. - */ -function MapCache(entries) { - var index = -1, - length = entries == null ? 0 : entries.length; - - this.clear(); - while (++index < length) { - var entry = entries[index]; - this.set(entry[0], entry[1]); - } -} - -// Add methods to `MapCache`. -MapCache.prototype.clear = mapCacheClear; -MapCache.prototype['delete'] = mapCacheDelete; -MapCache.prototype.get = mapCacheGet; -MapCache.prototype.has = mapCacheHas; -MapCache.prototype.set = mapCacheSet; - -module.exports = MapCache; - - -/***/ }), - -/***/ "./node_modules/lodash/_Promise.js": -/*!*****************************************!*\ - !*** ./node_modules/lodash/_Promise.js ***! - \*****************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var getNative = __webpack_require__(/*! ./_getNative */ "./node_modules/lodash/_getNative.js"), - root = __webpack_require__(/*! ./_root */ "./node_modules/lodash/_root.js"); - -/* Built-in method references that are verified to be native. */ -var Promise = getNative(root, 'Promise'); - -module.exports = Promise; - - -/***/ }), - -/***/ "./node_modules/lodash/_Set.js": -/*!*************************************!*\ - !*** ./node_modules/lodash/_Set.js ***! - \*************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var getNative = __webpack_require__(/*! ./_getNative */ "./node_modules/lodash/_getNative.js"), - root = __webpack_require__(/*! ./_root */ "./node_modules/lodash/_root.js"); - -/* Built-in method references that are verified to be native. */ -var Set = getNative(root, 'Set'); - -module.exports = Set; - - -/***/ }), - -/***/ "./node_modules/lodash/_SetCache.js": -/*!******************************************!*\ - !*** ./node_modules/lodash/_SetCache.js ***! - \******************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var MapCache = __webpack_require__(/*! ./_MapCache */ "./node_modules/lodash/_MapCache.js"), - setCacheAdd = __webpack_require__(/*! ./_setCacheAdd */ "./node_modules/lodash/_setCacheAdd.js"), - setCacheHas = __webpack_require__(/*! ./_setCacheHas */ "./node_modules/lodash/_setCacheHas.js"); - -/** - * - * Creates an array cache object to store unique values. - * - * @private - * @constructor - * @param {Array} [values] The values to cache. - */ -function SetCache(values) { - var index = -1, - length = values == null ? 0 : values.length; - - this.__data__ = new MapCache; - while (++index < length) { - this.add(values[index]); - } -} - -// Add methods to `SetCache`. -SetCache.prototype.add = SetCache.prototype.push = setCacheAdd; -SetCache.prototype.has = setCacheHas; - -module.exports = SetCache; - - -/***/ }), - -/***/ "./node_modules/lodash/_Stack.js": -/*!***************************************!*\ - !*** ./node_modules/lodash/_Stack.js ***! - \***************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var ListCache = __webpack_require__(/*! ./_ListCache */ "./node_modules/lodash/_ListCache.js"), - stackClear = __webpack_require__(/*! ./_stackClear */ "./node_modules/lodash/_stackClear.js"), - stackDelete = __webpack_require__(/*! ./_stackDelete */ "./node_modules/lodash/_stackDelete.js"), - stackGet = __webpack_require__(/*! ./_stackGet */ "./node_modules/lodash/_stackGet.js"), - stackHas = __webpack_require__(/*! ./_stackHas */ "./node_modules/lodash/_stackHas.js"), - stackSet = __webpack_require__(/*! ./_stackSet */ "./node_modules/lodash/_stackSet.js"); - -/** - * Creates a stack cache object to store key-value pairs. - * - * @private - * @constructor - * @param {Array} [entries] The key-value pairs to cache. - */ -function Stack(entries) { - var data = this.__data__ = new ListCache(entries); - this.size = data.size; -} - -// Add methods to `Stack`. -Stack.prototype.clear = stackClear; -Stack.prototype['delete'] = stackDelete; -Stack.prototype.get = stackGet; -Stack.prototype.has = stackHas; -Stack.prototype.set = stackSet; - -module.exports = Stack; - - -/***/ }), - -/***/ "./node_modules/lodash/_Symbol.js": -/*!****************************************!*\ - !*** ./node_modules/lodash/_Symbol.js ***! - \****************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var root = __webpack_require__(/*! ./_root */ "./node_modules/lodash/_root.js"); - -/** Built-in value references. */ -var Symbol = root.Symbol; - -module.exports = Symbol; - - -/***/ }), - -/***/ "./node_modules/lodash/_Uint8Array.js": -/*!********************************************!*\ - !*** ./node_modules/lodash/_Uint8Array.js ***! - \********************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var root = __webpack_require__(/*! ./_root */ "./node_modules/lodash/_root.js"); - -/** Built-in value references. */ -var Uint8Array = root.Uint8Array; - -module.exports = Uint8Array; - - -/***/ }), - -/***/ "./node_modules/lodash/_WeakMap.js": -/*!*****************************************!*\ - !*** ./node_modules/lodash/_WeakMap.js ***! - \*****************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var getNative = __webpack_require__(/*! ./_getNative */ "./node_modules/lodash/_getNative.js"), - root = __webpack_require__(/*! ./_root */ "./node_modules/lodash/_root.js"); - -/* Built-in method references that are verified to be native. */ -var WeakMap = getNative(root, 'WeakMap'); - -module.exports = WeakMap; - - -/***/ }), - -/***/ "./node_modules/lodash/_apply.js": -/*!***************************************!*\ - !*** ./node_modules/lodash/_apply.js ***! - \***************************************/ -/***/ ((module) => { - -/** - * A faster alternative to `Function#apply`, this function invokes `func` - * with the `this` binding of `thisArg` and the arguments of `args`. - * - * @private - * @param {Function} func The function to invoke. - * @param {*} thisArg The `this` binding of `func`. - * @param {Array} args The arguments to invoke `func` with. - * @returns {*} Returns the result of `func`. - */ -function apply(func, thisArg, args) { - switch (args.length) { - case 0: return func.call(thisArg); - case 1: return func.call(thisArg, args[0]); - case 2: return func.call(thisArg, args[0], args[1]); - case 3: return func.call(thisArg, args[0], args[1], args[2]); - } - return func.apply(thisArg, args); -} - -module.exports = apply; - - -/***/ }), - -/***/ "./node_modules/lodash/_arrayFilter.js": -/*!*********************************************!*\ - !*** ./node_modules/lodash/_arrayFilter.js ***! - \*********************************************/ -/***/ ((module) => { - -/** - * A specialized version of `_.filter` for arrays without support for - * iteratee shorthands. - * - * @private - * @param {Array} [array] The array to iterate over. - * @param {Function} predicate The function invoked per iteration. - * @returns {Array} Returns the new filtered array. - */ -function arrayFilter(array, predicate) { - var index = -1, - length = array == null ? 0 : array.length, - resIndex = 0, - result = []; - - while (++index < length) { - var value = array[index]; - if (predicate(value, index, array)) { - result[resIndex++] = value; - } - } - return result; -} - -module.exports = arrayFilter; - - -/***/ }), - -/***/ "./node_modules/lodash/_arrayLikeKeys.js": -/*!***********************************************!*\ - !*** ./node_modules/lodash/_arrayLikeKeys.js ***! - \***********************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var baseTimes = __webpack_require__(/*! ./_baseTimes */ "./node_modules/lodash/_baseTimes.js"), - isArguments = __webpack_require__(/*! ./isArguments */ "./node_modules/lodash/isArguments.js"), - isArray = __webpack_require__(/*! ./isArray */ "./node_modules/lodash/isArray.js"), - isBuffer = __webpack_require__(/*! ./isBuffer */ "./node_modules/lodash/isBuffer.js"), - isIndex = __webpack_require__(/*! ./_isIndex */ "./node_modules/lodash/_isIndex.js"), - isTypedArray = __webpack_require__(/*! ./isTypedArray */ "./node_modules/lodash/isTypedArray.js"); - -/** Used for built-in method references. */ -var objectProto = Object.prototype; - -/** Used to check objects for own properties. */ -var hasOwnProperty = objectProto.hasOwnProperty; - -/** - * Creates an array of the enumerable property names of the array-like `value`. - * - * @private - * @param {*} value The value to query. - * @param {boolean} inherited Specify returning inherited property names. - * @returns {Array} Returns the array of property names. - */ -function arrayLikeKeys(value, inherited) { - var isArr = isArray(value), - isArg = !isArr && isArguments(value), - isBuff = !isArr && !isArg && isBuffer(value), - isType = !isArr && !isArg && !isBuff && isTypedArray(value), - skipIndexes = isArr || isArg || isBuff || isType, - result = skipIndexes ? baseTimes(value.length, String) : [], - length = result.length; - - for (var key in value) { - if ((inherited || hasOwnProperty.call(value, key)) && - !(skipIndexes && ( - // Safari 9 has enumerable `arguments.length` in strict mode. - key == 'length' || - // Node.js 0.10 has enumerable non-index properties on buffers. - (isBuff && (key == 'offset' || key == 'parent')) || - // PhantomJS 2 has enumerable non-index properties on typed arrays. - (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) || - // Skip index properties. - isIndex(key, length) - ))) { - result.push(key); - } - } - return result; -} - -module.exports = arrayLikeKeys; - - -/***/ }), - -/***/ "./node_modules/lodash/_arrayPush.js": -/*!*******************************************!*\ - !*** ./node_modules/lodash/_arrayPush.js ***! - \*******************************************/ -/***/ ((module) => { - -/** - * Appends the elements of `values` to `array`. - * - * @private - * @param {Array} array The array to modify. - * @param {Array} values The values to append. - * @returns {Array} Returns `array`. - */ -function arrayPush(array, values) { - var index = -1, - length = values.length, - offset = array.length; - - while (++index < length) { - array[offset + index] = values[index]; - } - return array; -} - -module.exports = arrayPush; - - -/***/ }), - -/***/ "./node_modules/lodash/_arraySome.js": -/*!*******************************************!*\ - !*** ./node_modules/lodash/_arraySome.js ***! - \*******************************************/ -/***/ ((module) => { - -/** - * A specialized version of `_.some` for arrays without support for iteratee - * shorthands. - * - * @private - * @param {Array} [array] The array to iterate over. - * @param {Function} predicate The function invoked per iteration. - * @returns {boolean} Returns `true` if any element passes the predicate check, - * else `false`. - */ -function arraySome(array, predicate) { - var index = -1, - length = array == null ? 0 : array.length; - - while (++index < length) { - if (predicate(array[index], index, array)) { - return true; - } - } - return false; -} - -module.exports = arraySome; - - -/***/ }), - -/***/ "./node_modules/lodash/_assignMergeValue.js": -/*!**************************************************!*\ - !*** ./node_modules/lodash/_assignMergeValue.js ***! - \**************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var baseAssignValue = __webpack_require__(/*! ./_baseAssignValue */ "./node_modules/lodash/_baseAssignValue.js"), - eq = __webpack_require__(/*! ./eq */ "./node_modules/lodash/eq.js"); - -/** - * This function is like `assignValue` except that it doesn't assign - * `undefined` values. - * - * @private - * @param {Object} object The object to modify. - * @param {string} key The key of the property to assign. - * @param {*} value The value to assign. - */ -function assignMergeValue(object, key, value) { - if ((value !== undefined && !eq(object[key], value)) || - (value === undefined && !(key in object))) { - baseAssignValue(object, key, value); - } -} - -module.exports = assignMergeValue; - - -/***/ }), - -/***/ "./node_modules/lodash/_assignValue.js": -/*!*********************************************!*\ - !*** ./node_modules/lodash/_assignValue.js ***! - \*********************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var baseAssignValue = __webpack_require__(/*! ./_baseAssignValue */ "./node_modules/lodash/_baseAssignValue.js"), - eq = __webpack_require__(/*! ./eq */ "./node_modules/lodash/eq.js"); - -/** Used for built-in method references. */ -var objectProto = Object.prototype; - -/** Used to check objects for own properties. */ -var hasOwnProperty = objectProto.hasOwnProperty; - -/** - * Assigns `value` to `key` of `object` if the existing value is not equivalent - * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) - * for equality comparisons. - * - * @private - * @param {Object} object The object to modify. - * @param {string} key The key of the property to assign. - * @param {*} value The value to assign. - */ -function assignValue(object, key, value) { - var objValue = object[key]; - if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) || - (value === undefined && !(key in object))) { - baseAssignValue(object, key, value); - } -} - -module.exports = assignValue; - - -/***/ }), - -/***/ "./node_modules/lodash/_assocIndexOf.js": -/*!**********************************************!*\ - !*** ./node_modules/lodash/_assocIndexOf.js ***! - \**********************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var eq = __webpack_require__(/*! ./eq */ "./node_modules/lodash/eq.js"); - -/** - * Gets the index at which the `key` is found in `array` of key-value pairs. - * - * @private - * @param {Array} array The array to inspect. - * @param {*} key The key to search for. - * @returns {number} Returns the index of the matched value, else `-1`. - */ -function assocIndexOf(array, key) { - var length = array.length; - while (length--) { - if (eq(array[length][0], key)) { - return length; - } - } - return -1; -} - -module.exports = assocIndexOf; - - -/***/ }), - -/***/ "./node_modules/lodash/_baseAssignValue.js": -/*!*************************************************!*\ - !*** ./node_modules/lodash/_baseAssignValue.js ***! - \*************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var defineProperty = __webpack_require__(/*! ./_defineProperty */ "./node_modules/lodash/_defineProperty.js"); - -/** - * The base implementation of `assignValue` and `assignMergeValue` without - * value checks. - * - * @private - * @param {Object} object The object to modify. - * @param {string} key The key of the property to assign. - * @param {*} value The value to assign. - */ -function baseAssignValue(object, key, value) { - if (key == '__proto__' && defineProperty) { - defineProperty(object, key, { - 'configurable': true, - 'enumerable': true, - 'value': value, - 'writable': true - }); - } else { - object[key] = value; - } -} - -module.exports = baseAssignValue; - - -/***/ }), - -/***/ "./node_modules/lodash/_baseCreate.js": -/*!********************************************!*\ - !*** ./node_modules/lodash/_baseCreate.js ***! - \********************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var isObject = __webpack_require__(/*! ./isObject */ "./node_modules/lodash/isObject.js"); - -/** Built-in value references. */ -var objectCreate = Object.create; - -/** - * The base implementation of `_.create` without support for assigning - * properties to the created object. - * - * @private - * @param {Object} proto The object to inherit from. - * @returns {Object} Returns the new object. - */ -var baseCreate = (function() { - function object() {} - return function(proto) { - if (!isObject(proto)) { - return {}; - } - if (objectCreate) { - return objectCreate(proto); - } - object.prototype = proto; - var result = new object; - object.prototype = undefined; - return result; - }; -}()); - -module.exports = baseCreate; - - -/***/ }), - -/***/ "./node_modules/lodash/_baseFor.js": -/*!*****************************************!*\ - !*** ./node_modules/lodash/_baseFor.js ***! - \*****************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var createBaseFor = __webpack_require__(/*! ./_createBaseFor */ "./node_modules/lodash/_createBaseFor.js"); - -/** - * The base implementation of `baseForOwn` which iterates over `object` - * properties returned by `keysFunc` and invokes `iteratee` for each property. - * Iteratee functions may exit iteration early by explicitly returning `false`. - * - * @private - * @param {Object} object The object to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @param {Function} keysFunc The function to get the keys of `object`. - * @returns {Object} Returns `object`. - */ -var baseFor = createBaseFor(); - -module.exports = baseFor; - - -/***/ }), - -/***/ "./node_modules/lodash/_baseGetAllKeys.js": -/*!************************************************!*\ - !*** ./node_modules/lodash/_baseGetAllKeys.js ***! - \************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var arrayPush = __webpack_require__(/*! ./_arrayPush */ "./node_modules/lodash/_arrayPush.js"), - isArray = __webpack_require__(/*! ./isArray */ "./node_modules/lodash/isArray.js"); - -/** - * The base implementation of `getAllKeys` and `getAllKeysIn` which uses - * `keysFunc` and `symbolsFunc` to get the enumerable property names and - * symbols of `object`. - * - * @private - * @param {Object} object The object to query. - * @param {Function} keysFunc The function to get the keys of `object`. - * @param {Function} symbolsFunc The function to get the symbols of `object`. - * @returns {Array} Returns the array of property names and symbols. - */ -function baseGetAllKeys(object, keysFunc, symbolsFunc) { - var result = keysFunc(object); - return isArray(object) ? result : arrayPush(result, symbolsFunc(object)); -} - -module.exports = baseGetAllKeys; - - -/***/ }), - -/***/ "./node_modules/lodash/_baseGetTag.js": -/*!********************************************!*\ - !*** ./node_modules/lodash/_baseGetTag.js ***! - \********************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var Symbol = __webpack_require__(/*! ./_Symbol */ "./node_modules/lodash/_Symbol.js"), - getRawTag = __webpack_require__(/*! ./_getRawTag */ "./node_modules/lodash/_getRawTag.js"), - objectToString = __webpack_require__(/*! ./_objectToString */ "./node_modules/lodash/_objectToString.js"); - -/** `Object#toString` result references. */ -var nullTag = '[object Null]', - undefinedTag = '[object Undefined]'; - -/** Built-in value references. */ -var symToStringTag = Symbol ? Symbol.toStringTag : undefined; - -/** - * The base implementation of `getTag` without fallbacks for buggy environments. - * - * @private - * @param {*} value The value to query. - * @returns {string} Returns the `toStringTag`. - */ -function baseGetTag(value) { - if (value == null) { - return value === undefined ? undefinedTag : nullTag; - } - return (symToStringTag && symToStringTag in Object(value)) - ? getRawTag(value) - : objectToString(value); -} - -module.exports = baseGetTag; - - -/***/ }), - -/***/ "./node_modules/lodash/_baseIsArguments.js": -/*!*************************************************!*\ - !*** ./node_modules/lodash/_baseIsArguments.js ***! - \*************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var baseGetTag = __webpack_require__(/*! ./_baseGetTag */ "./node_modules/lodash/_baseGetTag.js"), - isObjectLike = __webpack_require__(/*! ./isObjectLike */ "./node_modules/lodash/isObjectLike.js"); - -/** `Object#toString` result references. */ -var argsTag = '[object Arguments]'; - -/** - * The base implementation of `_.isArguments`. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is an `arguments` object, - */ -function baseIsArguments(value) { - return isObjectLike(value) && baseGetTag(value) == argsTag; -} - -module.exports = baseIsArguments; - - -/***/ }), - -/***/ "./node_modules/lodash/_baseIsEqual.js": -/*!*********************************************!*\ - !*** ./node_modules/lodash/_baseIsEqual.js ***! - \*********************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var baseIsEqualDeep = __webpack_require__(/*! ./_baseIsEqualDeep */ "./node_modules/lodash/_baseIsEqualDeep.js"), - isObjectLike = __webpack_require__(/*! ./isObjectLike */ "./node_modules/lodash/isObjectLike.js"); - -/** - * The base implementation of `_.isEqual` which supports partial comparisons - * and tracks traversed objects. - * - * @private - * @param {*} value The value to compare. - * @param {*} other The other value to compare. - * @param {boolean} bitmask The bitmask flags. - * 1 - Unordered comparison - * 2 - Partial comparison - * @param {Function} [customizer] The function to customize comparisons. - * @param {Object} [stack] Tracks traversed `value` and `other` objects. - * @returns {boolean} Returns `true` if the values are equivalent, else `false`. - */ -function baseIsEqual(value, other, bitmask, customizer, stack) { - if (value === other) { - return true; - } - if (value == null || other == null || (!isObjectLike(value) && !isObjectLike(other))) { - return value !== value && other !== other; - } - return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack); -} - -module.exports = baseIsEqual; - - -/***/ }), - -/***/ "./node_modules/lodash/_baseIsEqualDeep.js": -/*!*************************************************!*\ - !*** ./node_modules/lodash/_baseIsEqualDeep.js ***! - \*************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var Stack = __webpack_require__(/*! ./_Stack */ "./node_modules/lodash/_Stack.js"), - equalArrays = __webpack_require__(/*! ./_equalArrays */ "./node_modules/lodash/_equalArrays.js"), - equalByTag = __webpack_require__(/*! ./_equalByTag */ "./node_modules/lodash/_equalByTag.js"), - equalObjects = __webpack_require__(/*! ./_equalObjects */ "./node_modules/lodash/_equalObjects.js"), - getTag = __webpack_require__(/*! ./_getTag */ "./node_modules/lodash/_getTag.js"), - isArray = __webpack_require__(/*! ./isArray */ "./node_modules/lodash/isArray.js"), - isBuffer = __webpack_require__(/*! ./isBuffer */ "./node_modules/lodash/isBuffer.js"), - isTypedArray = __webpack_require__(/*! ./isTypedArray */ "./node_modules/lodash/isTypedArray.js"); - -/** Used to compose bitmasks for value comparisons. */ -var COMPARE_PARTIAL_FLAG = 1; - -/** `Object#toString` result references. */ -var argsTag = '[object Arguments]', - arrayTag = '[object Array]', - objectTag = '[object Object]'; - -/** Used for built-in method references. */ -var objectProto = Object.prototype; - -/** Used to check objects for own properties. */ -var hasOwnProperty = objectProto.hasOwnProperty; - -/** - * A specialized version of `baseIsEqual` for arrays and objects which performs - * deep comparisons and tracks traversed objects enabling objects with circular - * references to be compared. - * - * @private - * @param {Object} object The object to compare. - * @param {Object} other The other object to compare. - * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. - * @param {Function} customizer The function to customize comparisons. - * @param {Function} equalFunc The function to determine equivalents of values. - * @param {Object} [stack] Tracks traversed `object` and `other` objects. - * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. - */ -function baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) { - var objIsArr = isArray(object), - othIsArr = isArray(other), - objTag = objIsArr ? arrayTag : getTag(object), - othTag = othIsArr ? arrayTag : getTag(other); - - objTag = objTag == argsTag ? objectTag : objTag; - othTag = othTag == argsTag ? objectTag : othTag; - - var objIsObj = objTag == objectTag, - othIsObj = othTag == objectTag, - isSameTag = objTag == othTag; - - if (isSameTag && isBuffer(object)) { - if (!isBuffer(other)) { - return false; - } - objIsArr = true; - objIsObj = false; - } - if (isSameTag && !objIsObj) { - stack || (stack = new Stack); - return (objIsArr || isTypedArray(object)) - ? equalArrays(object, other, bitmask, customizer, equalFunc, stack) - : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack); - } - if (!(bitmask & COMPARE_PARTIAL_FLAG)) { - var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'), - othIsWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__'); - - if (objIsWrapped || othIsWrapped) { - var objUnwrapped = objIsWrapped ? object.value() : object, - othUnwrapped = othIsWrapped ? other.value() : other; - - stack || (stack = new Stack); - return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack); - } - } - if (!isSameTag) { - return false; - } - stack || (stack = new Stack); - return equalObjects(object, other, bitmask, customizer, equalFunc, stack); -} - -module.exports = baseIsEqualDeep; - - -/***/ }), - -/***/ "./node_modules/lodash/_baseIsNative.js": -/*!**********************************************!*\ - !*** ./node_modules/lodash/_baseIsNative.js ***! - \**********************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var isFunction = __webpack_require__(/*! ./isFunction */ "./node_modules/lodash/isFunction.js"), - isMasked = __webpack_require__(/*! ./_isMasked */ "./node_modules/lodash/_isMasked.js"), - isObject = __webpack_require__(/*! ./isObject */ "./node_modules/lodash/isObject.js"), - toSource = __webpack_require__(/*! ./_toSource */ "./node_modules/lodash/_toSource.js"); - -/** - * Used to match `RegExp` - * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns). - */ -var reRegExpChar = /[\\^$.*+?()[\]{}|]/g; - -/** Used to detect host constructors (Safari). */ -var reIsHostCtor = /^\[object .+?Constructor\]$/; - -/** Used for built-in method references. */ -var funcProto = Function.prototype, - objectProto = Object.prototype; - -/** Used to resolve the decompiled source of functions. */ -var funcToString = funcProto.toString; - -/** Used to check objects for own properties. */ -var hasOwnProperty = objectProto.hasOwnProperty; - -/** Used to detect if a method is native. */ -var reIsNative = RegExp('^' + - funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\$&') - .replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, '$1.*?') + '$' -); - -/** - * The base implementation of `_.isNative` without bad shim checks. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a native function, - * else `false`. - */ -function baseIsNative(value) { - if (!isObject(value) || isMasked(value)) { - return false; - } - var pattern = isFunction(value) ? reIsNative : reIsHostCtor; - return pattern.test(toSource(value)); -} - -module.exports = baseIsNative; - - -/***/ }), - -/***/ "./node_modules/lodash/_baseIsTypedArray.js": -/*!**************************************************!*\ - !*** ./node_modules/lodash/_baseIsTypedArray.js ***! - \**************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var baseGetTag = __webpack_require__(/*! ./_baseGetTag */ "./node_modules/lodash/_baseGetTag.js"), - isLength = __webpack_require__(/*! ./isLength */ "./node_modules/lodash/isLength.js"), - isObjectLike = __webpack_require__(/*! ./isObjectLike */ "./node_modules/lodash/isObjectLike.js"); - -/** `Object#toString` result references. */ -var argsTag = '[object Arguments]', - arrayTag = '[object Array]', - boolTag = '[object Boolean]', - dateTag = '[object Date]', - errorTag = '[object Error]', - funcTag = '[object Function]', - mapTag = '[object Map]', - numberTag = '[object Number]', - objectTag = '[object Object]', - regexpTag = '[object RegExp]', - setTag = '[object Set]', - stringTag = '[object String]', - weakMapTag = '[object WeakMap]'; - -var arrayBufferTag = '[object ArrayBuffer]', - dataViewTag = '[object DataView]', - float32Tag = '[object Float32Array]', - float64Tag = '[object Float64Array]', - int8Tag = '[object Int8Array]', - int16Tag = '[object Int16Array]', - int32Tag = '[object Int32Array]', - uint8Tag = '[object Uint8Array]', - uint8ClampedTag = '[object Uint8ClampedArray]', - uint16Tag = '[object Uint16Array]', - uint32Tag = '[object Uint32Array]'; - -/** Used to identify `toStringTag` values of typed arrays. */ -var typedArrayTags = {}; -typedArrayTags[float32Tag] = typedArrayTags[float64Tag] = -typedArrayTags[int8Tag] = typedArrayTags[int16Tag] = -typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] = -typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] = -typedArrayTags[uint32Tag] = true; -typedArrayTags[argsTag] = typedArrayTags[arrayTag] = -typedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] = -typedArrayTags[dataViewTag] = typedArrayTags[dateTag] = -typedArrayTags[errorTag] = typedArrayTags[funcTag] = -typedArrayTags[mapTag] = typedArrayTags[numberTag] = -typedArrayTags[objectTag] = typedArrayTags[regexpTag] = -typedArrayTags[setTag] = typedArrayTags[stringTag] = -typedArrayTags[weakMapTag] = false; - -/** - * The base implementation of `_.isTypedArray` without Node.js optimizations. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a typed array, else `false`. - */ -function baseIsTypedArray(value) { - return isObjectLike(value) && - isLength(value.length) && !!typedArrayTags[baseGetTag(value)]; -} - -module.exports = baseIsTypedArray; - - -/***/ }), - -/***/ "./node_modules/lodash/_baseKeys.js": -/*!******************************************!*\ - !*** ./node_modules/lodash/_baseKeys.js ***! - \******************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var isPrototype = __webpack_require__(/*! ./_isPrototype */ "./node_modules/lodash/_isPrototype.js"), - nativeKeys = __webpack_require__(/*! ./_nativeKeys */ "./node_modules/lodash/_nativeKeys.js"); - -/** Used for built-in method references. */ -var objectProto = Object.prototype; - -/** Used to check objects for own properties. */ -var hasOwnProperty = objectProto.hasOwnProperty; - -/** - * The base implementation of `_.keys` which doesn't treat sparse arrays as dense. - * - * @private - * @param {Object} object The object to query. - * @returns {Array} Returns the array of property names. - */ -function baseKeys(object) { - if (!isPrototype(object)) { - return nativeKeys(object); - } - var result = []; - for (var key in Object(object)) { - if (hasOwnProperty.call(object, key) && key != 'constructor') { - result.push(key); - } - } - return result; -} - -module.exports = baseKeys; - - -/***/ }), - -/***/ "./node_modules/lodash/_baseKeysIn.js": -/*!********************************************!*\ - !*** ./node_modules/lodash/_baseKeysIn.js ***! - \********************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var isObject = __webpack_require__(/*! ./isObject */ "./node_modules/lodash/isObject.js"), - isPrototype = __webpack_require__(/*! ./_isPrototype */ "./node_modules/lodash/_isPrototype.js"), - nativeKeysIn = __webpack_require__(/*! ./_nativeKeysIn */ "./node_modules/lodash/_nativeKeysIn.js"); - -/** Used for built-in method references. */ -var objectProto = Object.prototype; - -/** Used to check objects for own properties. */ -var hasOwnProperty = objectProto.hasOwnProperty; - -/** - * The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense. - * - * @private - * @param {Object} object The object to query. - * @returns {Array} Returns the array of property names. - */ -function baseKeysIn(object) { - if (!isObject(object)) { - return nativeKeysIn(object); - } - var isProto = isPrototype(object), - result = []; - - for (var key in object) { - if (!(key == 'constructor' && (isProto || !hasOwnProperty.call(object, key)))) { - result.push(key); - } - } - return result; -} - -module.exports = baseKeysIn; - - -/***/ }), - -/***/ "./node_modules/lodash/_baseMerge.js": -/*!*******************************************!*\ - !*** ./node_modules/lodash/_baseMerge.js ***! - \*******************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var Stack = __webpack_require__(/*! ./_Stack */ "./node_modules/lodash/_Stack.js"), - assignMergeValue = __webpack_require__(/*! ./_assignMergeValue */ "./node_modules/lodash/_assignMergeValue.js"), - baseFor = __webpack_require__(/*! ./_baseFor */ "./node_modules/lodash/_baseFor.js"), - baseMergeDeep = __webpack_require__(/*! ./_baseMergeDeep */ "./node_modules/lodash/_baseMergeDeep.js"), - isObject = __webpack_require__(/*! ./isObject */ "./node_modules/lodash/isObject.js"), - keysIn = __webpack_require__(/*! ./keysIn */ "./node_modules/lodash/keysIn.js"), - safeGet = __webpack_require__(/*! ./_safeGet */ "./node_modules/lodash/_safeGet.js"); - -/** - * The base implementation of `_.merge` without support for multiple sources. - * - * @private - * @param {Object} object The destination object. - * @param {Object} source The source object. - * @param {number} srcIndex The index of `source`. - * @param {Function} [customizer] The function to customize merged values. - * @param {Object} [stack] Tracks traversed source values and their merged - * counterparts. - */ -function baseMerge(object, source, srcIndex, customizer, stack) { - if (object === source) { - return; - } - baseFor(source, function(srcValue, key) { - stack || (stack = new Stack); - if (isObject(srcValue)) { - baseMergeDeep(object, source, key, srcIndex, baseMerge, customizer, stack); - } - else { - var newValue = customizer - ? customizer(safeGet(object, key), srcValue, (key + ''), object, source, stack) - : undefined; - - if (newValue === undefined) { - newValue = srcValue; - } - assignMergeValue(object, key, newValue); - } - }, keysIn); -} - -module.exports = baseMerge; - - -/***/ }), - -/***/ "./node_modules/lodash/_baseMergeDeep.js": -/*!***********************************************!*\ - !*** ./node_modules/lodash/_baseMergeDeep.js ***! - \***********************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var assignMergeValue = __webpack_require__(/*! ./_assignMergeValue */ "./node_modules/lodash/_assignMergeValue.js"), - cloneBuffer = __webpack_require__(/*! ./_cloneBuffer */ "./node_modules/lodash/_cloneBuffer.js"), - cloneTypedArray = __webpack_require__(/*! ./_cloneTypedArray */ "./node_modules/lodash/_cloneTypedArray.js"), - copyArray = __webpack_require__(/*! ./_copyArray */ "./node_modules/lodash/_copyArray.js"), - initCloneObject = __webpack_require__(/*! ./_initCloneObject */ "./node_modules/lodash/_initCloneObject.js"), - isArguments = __webpack_require__(/*! ./isArguments */ "./node_modules/lodash/isArguments.js"), - isArray = __webpack_require__(/*! ./isArray */ "./node_modules/lodash/isArray.js"), - isArrayLikeObject = __webpack_require__(/*! ./isArrayLikeObject */ "./node_modules/lodash/isArrayLikeObject.js"), - isBuffer = __webpack_require__(/*! ./isBuffer */ "./node_modules/lodash/isBuffer.js"), - isFunction = __webpack_require__(/*! ./isFunction */ "./node_modules/lodash/isFunction.js"), - isObject = __webpack_require__(/*! ./isObject */ "./node_modules/lodash/isObject.js"), - isPlainObject = __webpack_require__(/*! ./isPlainObject */ "./node_modules/lodash/isPlainObject.js"), - isTypedArray = __webpack_require__(/*! ./isTypedArray */ "./node_modules/lodash/isTypedArray.js"), - safeGet = __webpack_require__(/*! ./_safeGet */ "./node_modules/lodash/_safeGet.js"), - toPlainObject = __webpack_require__(/*! ./toPlainObject */ "./node_modules/lodash/toPlainObject.js"); - -/** - * A specialized version of `baseMerge` for arrays and objects which performs - * deep merges and tracks traversed objects enabling objects with circular - * references to be merged. - * - * @private - * @param {Object} object The destination object. - * @param {Object} source The source object. - * @param {string} key The key of the value to merge. - * @param {number} srcIndex The index of `source`. - * @param {Function} mergeFunc The function to merge values. - * @param {Function} [customizer] The function to customize assigned values. - * @param {Object} [stack] Tracks traversed source values and their merged - * counterparts. - */ -function baseMergeDeep(object, source, key, srcIndex, mergeFunc, customizer, stack) { - var objValue = safeGet(object, key), - srcValue = safeGet(source, key), - stacked = stack.get(srcValue); - - if (stacked) { - assignMergeValue(object, key, stacked); - return; - } - var newValue = customizer - ? customizer(objValue, srcValue, (key + ''), object, source, stack) - : undefined; - - var isCommon = newValue === undefined; - - if (isCommon) { - var isArr = isArray(srcValue), - isBuff = !isArr && isBuffer(srcValue), - isTyped = !isArr && !isBuff && isTypedArray(srcValue); - - newValue = srcValue; - if (isArr || isBuff || isTyped) { - if (isArray(objValue)) { - newValue = objValue; - } - else if (isArrayLikeObject(objValue)) { - newValue = copyArray(objValue); - } - else if (isBuff) { - isCommon = false; - newValue = cloneBuffer(srcValue, true); - } - else if (isTyped) { - isCommon = false; - newValue = cloneTypedArray(srcValue, true); - } - else { - newValue = []; - } - } - else if (isPlainObject(srcValue) || isArguments(srcValue)) { - newValue = objValue; - if (isArguments(objValue)) { - newValue = toPlainObject(objValue); - } - else if (!isObject(objValue) || isFunction(objValue)) { - newValue = initCloneObject(srcValue); - } - } - else { - isCommon = false; - } - } - if (isCommon) { - // Recursively merge objects and arrays (susceptible to call stack limits). - stack.set(srcValue, newValue); - mergeFunc(newValue, srcValue, srcIndex, customizer, stack); - stack['delete'](srcValue); - } - assignMergeValue(object, key, newValue); -} - -module.exports = baseMergeDeep; - - -/***/ }), - -/***/ "./node_modules/lodash/_baseRest.js": -/*!******************************************!*\ - !*** ./node_modules/lodash/_baseRest.js ***! - \******************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var identity = __webpack_require__(/*! ./identity */ "./node_modules/lodash/identity.js"), - overRest = __webpack_require__(/*! ./_overRest */ "./node_modules/lodash/_overRest.js"), - setToString = __webpack_require__(/*! ./_setToString */ "./node_modules/lodash/_setToString.js"); - -/** - * The base implementation of `_.rest` which doesn't validate or coerce arguments. - * - * @private - * @param {Function} func The function to apply a rest parameter to. - * @param {number} [start=func.length-1] The start position of the rest parameter. - * @returns {Function} Returns the new function. - */ -function baseRest(func, start) { - return setToString(overRest(func, start, identity), func + ''); -} - -module.exports = baseRest; - - -/***/ }), - -/***/ "./node_modules/lodash/_baseSetToString.js": -/*!*************************************************!*\ - !*** ./node_modules/lodash/_baseSetToString.js ***! - \*************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var constant = __webpack_require__(/*! ./constant */ "./node_modules/lodash/constant.js"), - defineProperty = __webpack_require__(/*! ./_defineProperty */ "./node_modules/lodash/_defineProperty.js"), - identity = __webpack_require__(/*! ./identity */ "./node_modules/lodash/identity.js"); - -/** - * The base implementation of `setToString` without support for hot loop shorting. - * - * @private - * @param {Function} func The function to modify. - * @param {Function} string The `toString` result. - * @returns {Function} Returns `func`. - */ -var baseSetToString = !defineProperty ? identity : function(func, string) { - return defineProperty(func, 'toString', { - 'configurable': true, - 'enumerable': false, - 'value': constant(string), - 'writable': true - }); -}; - -module.exports = baseSetToString; - - -/***/ }), - -/***/ "./node_modules/lodash/_baseTimes.js": -/*!*******************************************!*\ - !*** ./node_modules/lodash/_baseTimes.js ***! - \*******************************************/ -/***/ ((module) => { - -/** - * The base implementation of `_.times` without support for iteratee shorthands - * or max array length checks. - * - * @private - * @param {number} n The number of times to invoke `iteratee`. - * @param {Function} iteratee The function invoked per iteration. - * @returns {Array} Returns the array of results. - */ -function baseTimes(n, iteratee) { - var index = -1, - result = Array(n); - - while (++index < n) { - result[index] = iteratee(index); - } - return result; -} - -module.exports = baseTimes; - - -/***/ }), - -/***/ "./node_modules/lodash/_baseUnary.js": -/*!*******************************************!*\ - !*** ./node_modules/lodash/_baseUnary.js ***! - \*******************************************/ -/***/ ((module) => { - -/** - * The base implementation of `_.unary` without support for storing metadata. - * - * @private - * @param {Function} func The function to cap arguments for. - * @returns {Function} Returns the new capped function. - */ -function baseUnary(func) { - return function(value) { - return func(value); - }; -} - -module.exports = baseUnary; - - -/***/ }), - -/***/ "./node_modules/lodash/_cacheHas.js": -/*!******************************************!*\ - !*** ./node_modules/lodash/_cacheHas.js ***! - \******************************************/ -/***/ ((module) => { - -/** - * Checks if a `cache` value for `key` exists. - * - * @private - * @param {Object} cache The cache to query. - * @param {string} key The key of the entry to check. - * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. - */ -function cacheHas(cache, key) { - return cache.has(key); -} - -module.exports = cacheHas; - - -/***/ }), - -/***/ "./node_modules/lodash/_cloneArrayBuffer.js": -/*!**************************************************!*\ - !*** ./node_modules/lodash/_cloneArrayBuffer.js ***! - \**************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var Uint8Array = __webpack_require__(/*! ./_Uint8Array */ "./node_modules/lodash/_Uint8Array.js"); - -/** - * Creates a clone of `arrayBuffer`. - * - * @private - * @param {ArrayBuffer} arrayBuffer The array buffer to clone. - * @returns {ArrayBuffer} Returns the cloned array buffer. - */ -function cloneArrayBuffer(arrayBuffer) { - var result = new arrayBuffer.constructor(arrayBuffer.byteLength); - new Uint8Array(result).set(new Uint8Array(arrayBuffer)); - return result; -} - -module.exports = cloneArrayBuffer; - - -/***/ }), - -/***/ "./node_modules/lodash/_cloneBuffer.js": -/*!*********************************************!*\ - !*** ./node_modules/lodash/_cloneBuffer.js ***! - \*********************************************/ -/***/ ((module, exports, __webpack_require__) => { - -/* module decorator */ module = __webpack_require__.nmd(module); -var root = __webpack_require__(/*! ./_root */ "./node_modules/lodash/_root.js"); - -/** Detect free variable `exports`. */ -var freeExports = true && exports && !exports.nodeType && exports; - -/** Detect free variable `module`. */ -var freeModule = freeExports && "object" == 'object' && module && !module.nodeType && module; - -/** Detect the popular CommonJS extension `module.exports`. */ -var moduleExports = freeModule && freeModule.exports === freeExports; - -/** Built-in value references. */ -var Buffer = moduleExports ? root.Buffer : undefined, - allocUnsafe = Buffer ? Buffer.allocUnsafe : undefined; - -/** - * Creates a clone of `buffer`. - * - * @private - * @param {Buffer} buffer The buffer to clone. - * @param {boolean} [isDeep] Specify a deep clone. - * @returns {Buffer} Returns the cloned buffer. - */ -function cloneBuffer(buffer, isDeep) { - if (isDeep) { - return buffer.slice(); - } - var length = buffer.length, - result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length); - - buffer.copy(result); - return result; -} - -module.exports = cloneBuffer; - - -/***/ }), - -/***/ "./node_modules/lodash/_cloneTypedArray.js": -/*!*************************************************!*\ - !*** ./node_modules/lodash/_cloneTypedArray.js ***! - \*************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var cloneArrayBuffer = __webpack_require__(/*! ./_cloneArrayBuffer */ "./node_modules/lodash/_cloneArrayBuffer.js"); - -/** - * Creates a clone of `typedArray`. - * - * @private - * @param {Object} typedArray The typed array to clone. - * @param {boolean} [isDeep] Specify a deep clone. - * @returns {Object} Returns the cloned typed array. - */ -function cloneTypedArray(typedArray, isDeep) { - var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer; - return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length); -} - -module.exports = cloneTypedArray; - - -/***/ }), - -/***/ "./node_modules/lodash/_copyArray.js": -/*!*******************************************!*\ - !*** ./node_modules/lodash/_copyArray.js ***! - \*******************************************/ -/***/ ((module) => { - -/** - * Copies the values of `source` to `array`. - * - * @private - * @param {Array} source The array to copy values from. - * @param {Array} [array=[]] The array to copy values to. - * @returns {Array} Returns `array`. - */ -function copyArray(source, array) { - var index = -1, - length = source.length; - - array || (array = Array(length)); - while (++index < length) { - array[index] = source[index]; - } - return array; -} - -module.exports = copyArray; - - -/***/ }), - -/***/ "./node_modules/lodash/_copyObject.js": -/*!********************************************!*\ - !*** ./node_modules/lodash/_copyObject.js ***! - \********************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var assignValue = __webpack_require__(/*! ./_assignValue */ "./node_modules/lodash/_assignValue.js"), - baseAssignValue = __webpack_require__(/*! ./_baseAssignValue */ "./node_modules/lodash/_baseAssignValue.js"); - -/** - * Copies properties of `source` to `object`. - * - * @private - * @param {Object} source The object to copy properties from. - * @param {Array} props The property identifiers to copy. - * @param {Object} [object={}] The object to copy properties to. - * @param {Function} [customizer] The function to customize copied values. - * @returns {Object} Returns `object`. - */ -function copyObject(source, props, object, customizer) { - var isNew = !object; - object || (object = {}); - - var index = -1, - length = props.length; - - while (++index < length) { - var key = props[index]; - - var newValue = customizer - ? customizer(object[key], source[key], key, object, source) - : undefined; - - if (newValue === undefined) { - newValue = source[key]; - } - if (isNew) { - baseAssignValue(object, key, newValue); - } else { - assignValue(object, key, newValue); - } - } - return object; -} - -module.exports = copyObject; - - -/***/ }), - -/***/ "./node_modules/lodash/_coreJsData.js": -/*!********************************************!*\ - !*** ./node_modules/lodash/_coreJsData.js ***! - \********************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var root = __webpack_require__(/*! ./_root */ "./node_modules/lodash/_root.js"); - -/** Used to detect overreaching core-js shims. */ -var coreJsData = root['__core-js_shared__']; - -module.exports = coreJsData; - - -/***/ }), - -/***/ "./node_modules/lodash/_createAssigner.js": -/*!************************************************!*\ - !*** ./node_modules/lodash/_createAssigner.js ***! - \************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var baseRest = __webpack_require__(/*! ./_baseRest */ "./node_modules/lodash/_baseRest.js"), - isIterateeCall = __webpack_require__(/*! ./_isIterateeCall */ "./node_modules/lodash/_isIterateeCall.js"); - -/** - * Creates a function like `_.assign`. - * - * @private - * @param {Function} assigner The function to assign values. - * @returns {Function} Returns the new assigner function. - */ -function createAssigner(assigner) { - return baseRest(function(object, sources) { - var index = -1, - length = sources.length, - customizer = length > 1 ? sources[length - 1] : undefined, - guard = length > 2 ? sources[2] : undefined; - - customizer = (assigner.length > 3 && typeof customizer == 'function') - ? (length--, customizer) - : undefined; - - if (guard && isIterateeCall(sources[0], sources[1], guard)) { - customizer = length < 3 ? undefined : customizer; - length = 1; - } - object = Object(object); - while (++index < length) { - var source = sources[index]; - if (source) { - assigner(object, source, index, customizer); - } - } - return object; - }); -} - -module.exports = createAssigner; - - -/***/ }), - -/***/ "./node_modules/lodash/_createBaseFor.js": -/*!***********************************************!*\ - !*** ./node_modules/lodash/_createBaseFor.js ***! - \***********************************************/ -/***/ ((module) => { - -/** - * Creates a base function for methods like `_.forIn` and `_.forOwn`. - * - * @private - * @param {boolean} [fromRight] Specify iterating from right to left. - * @returns {Function} Returns the new base function. - */ -function createBaseFor(fromRight) { - return function(object, iteratee, keysFunc) { - var index = -1, - iterable = Object(object), - props = keysFunc(object), - length = props.length; - - while (length--) { - var key = props[fromRight ? length : ++index]; - if (iteratee(iterable[key], key, iterable) === false) { - break; - } - } - return object; - }; -} - -module.exports = createBaseFor; - - -/***/ }), - -/***/ "./node_modules/lodash/_defineProperty.js": -/*!************************************************!*\ - !*** ./node_modules/lodash/_defineProperty.js ***! - \************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var getNative = __webpack_require__(/*! ./_getNative */ "./node_modules/lodash/_getNative.js"); - -var defineProperty = (function() { - try { - var func = getNative(Object, 'defineProperty'); - func({}, '', {}); - return func; - } catch (e) {} -}()); - -module.exports = defineProperty; - - -/***/ }), - -/***/ "./node_modules/lodash/_equalArrays.js": -/*!*********************************************!*\ - !*** ./node_modules/lodash/_equalArrays.js ***! - \*********************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var SetCache = __webpack_require__(/*! ./_SetCache */ "./node_modules/lodash/_SetCache.js"), - arraySome = __webpack_require__(/*! ./_arraySome */ "./node_modules/lodash/_arraySome.js"), - cacheHas = __webpack_require__(/*! ./_cacheHas */ "./node_modules/lodash/_cacheHas.js"); - -/** Used to compose bitmasks for value comparisons. */ -var COMPARE_PARTIAL_FLAG = 1, - COMPARE_UNORDERED_FLAG = 2; - -/** - * A specialized version of `baseIsEqualDeep` for arrays with support for - * partial deep comparisons. - * - * @private - * @param {Array} array The array to compare. - * @param {Array} other The other array to compare. - * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. - * @param {Function} customizer The function to customize comparisons. - * @param {Function} equalFunc The function to determine equivalents of values. - * @param {Object} stack Tracks traversed `array` and `other` objects. - * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`. - */ -function equalArrays(array, other, bitmask, customizer, equalFunc, stack) { - var isPartial = bitmask & COMPARE_PARTIAL_FLAG, - arrLength = array.length, - othLength = other.length; - - if (arrLength != othLength && !(isPartial && othLength > arrLength)) { - return false; - } - // Check that cyclic values are equal. - var arrStacked = stack.get(array); - var othStacked = stack.get(other); - if (arrStacked && othStacked) { - return arrStacked == other && othStacked == array; - } - var index = -1, - result = true, - seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new SetCache : undefined; - - stack.set(array, other); - stack.set(other, array); - - // Ignore non-index properties. - while (++index < arrLength) { - var arrValue = array[index], - othValue = other[index]; - - if (customizer) { - var compared = isPartial - ? customizer(othValue, arrValue, index, other, array, stack) - : customizer(arrValue, othValue, index, array, other, stack); - } - if (compared !== undefined) { - if (compared) { - continue; - } - result = false; - break; - } - // Recursively compare arrays (susceptible to call stack limits). - if (seen) { - if (!arraySome(other, function(othValue, othIndex) { - if (!cacheHas(seen, othIndex) && - (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) { - return seen.push(othIndex); - } - })) { - result = false; - break; - } - } else if (!( - arrValue === othValue || - equalFunc(arrValue, othValue, bitmask, customizer, stack) - )) { - result = false; - break; - } - } - stack['delete'](array); - stack['delete'](other); - return result; -} - -module.exports = equalArrays; - - -/***/ }), - -/***/ "./node_modules/lodash/_equalByTag.js": -/*!********************************************!*\ - !*** ./node_modules/lodash/_equalByTag.js ***! - \********************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var Symbol = __webpack_require__(/*! ./_Symbol */ "./node_modules/lodash/_Symbol.js"), - Uint8Array = __webpack_require__(/*! ./_Uint8Array */ "./node_modules/lodash/_Uint8Array.js"), - eq = __webpack_require__(/*! ./eq */ "./node_modules/lodash/eq.js"), - equalArrays = __webpack_require__(/*! ./_equalArrays */ "./node_modules/lodash/_equalArrays.js"), - mapToArray = __webpack_require__(/*! ./_mapToArray */ "./node_modules/lodash/_mapToArray.js"), - setToArray = __webpack_require__(/*! ./_setToArray */ "./node_modules/lodash/_setToArray.js"); - -/** Used to compose bitmasks for value comparisons. */ -var COMPARE_PARTIAL_FLAG = 1, - COMPARE_UNORDERED_FLAG = 2; - -/** `Object#toString` result references. */ -var boolTag = '[object Boolean]', - dateTag = '[object Date]', - errorTag = '[object Error]', - mapTag = '[object Map]', - numberTag = '[object Number]', - regexpTag = '[object RegExp]', - setTag = '[object Set]', - stringTag = '[object String]', - symbolTag = '[object Symbol]'; - -var arrayBufferTag = '[object ArrayBuffer]', - dataViewTag = '[object DataView]'; - -/** Used to convert symbols to primitives and strings. */ -var symbolProto = Symbol ? Symbol.prototype : undefined, - symbolValueOf = symbolProto ? symbolProto.valueOf : undefined; - -/** - * A specialized version of `baseIsEqualDeep` for comparing objects of - * the same `toStringTag`. - * - * **Note:** This function only supports comparing values with tags of - * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`. - * - * @private - * @param {Object} object The object to compare. - * @param {Object} other The other object to compare. - * @param {string} tag The `toStringTag` of the objects to compare. - * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. - * @param {Function} customizer The function to customize comparisons. - * @param {Function} equalFunc The function to determine equivalents of values. - * @param {Object} stack Tracks traversed `object` and `other` objects. - * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. - */ -function equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) { - switch (tag) { - case dataViewTag: - if ((object.byteLength != other.byteLength) || - (object.byteOffset != other.byteOffset)) { - return false; - } - object = object.buffer; - other = other.buffer; - - case arrayBufferTag: - if ((object.byteLength != other.byteLength) || - !equalFunc(new Uint8Array(object), new Uint8Array(other))) { - return false; - } - return true; - - case boolTag: - case dateTag: - case numberTag: - // Coerce booleans to `1` or `0` and dates to milliseconds. - // Invalid dates are coerced to `NaN`. - return eq(+object, +other); - - case errorTag: - return object.name == other.name && object.message == other.message; - - case regexpTag: - case stringTag: - // Coerce regexes to strings and treat strings, primitives and objects, - // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring - // for more details. - return object == (other + ''); - - case mapTag: - var convert = mapToArray; - - case setTag: - var isPartial = bitmask & COMPARE_PARTIAL_FLAG; - convert || (convert = setToArray); - - if (object.size != other.size && !isPartial) { - return false; - } - // Assume cyclic values are equal. - var stacked = stack.get(object); - if (stacked) { - return stacked == other; - } - bitmask |= COMPARE_UNORDERED_FLAG; - - // Recursively compare objects (susceptible to call stack limits). - stack.set(object, other); - var result = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack); - stack['delete'](object); - return result; - - case symbolTag: - if (symbolValueOf) { - return symbolValueOf.call(object) == symbolValueOf.call(other); - } - } - return false; -} - -module.exports = equalByTag; - - -/***/ }), - -/***/ "./node_modules/lodash/_equalObjects.js": -/*!**********************************************!*\ - !*** ./node_modules/lodash/_equalObjects.js ***! - \**********************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var getAllKeys = __webpack_require__(/*! ./_getAllKeys */ "./node_modules/lodash/_getAllKeys.js"); - -/** Used to compose bitmasks for value comparisons. */ -var COMPARE_PARTIAL_FLAG = 1; - -/** Used for built-in method references. */ -var objectProto = Object.prototype; - -/** Used to check objects for own properties. */ -var hasOwnProperty = objectProto.hasOwnProperty; - -/** - * A specialized version of `baseIsEqualDeep` for objects with support for - * partial deep comparisons. - * - * @private - * @param {Object} object The object to compare. - * @param {Object} other The other object to compare. - * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. - * @param {Function} customizer The function to customize comparisons. - * @param {Function} equalFunc The function to determine equivalents of values. - * @param {Object} stack Tracks traversed `object` and `other` objects. - * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. - */ -function equalObjects(object, other, bitmask, customizer, equalFunc, stack) { - var isPartial = bitmask & COMPARE_PARTIAL_FLAG, - objProps = getAllKeys(object), - objLength = objProps.length, - othProps = getAllKeys(other), - othLength = othProps.length; - - if (objLength != othLength && !isPartial) { - return false; - } - var index = objLength; - while (index--) { - var key = objProps[index]; - if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) { - return false; - } - } - // Check that cyclic values are equal. - var objStacked = stack.get(object); - var othStacked = stack.get(other); - if (objStacked && othStacked) { - return objStacked == other && othStacked == object; - } - var result = true; - stack.set(object, other); - stack.set(other, object); - - var skipCtor = isPartial; - while (++index < objLength) { - key = objProps[index]; - var objValue = object[key], - othValue = other[key]; - - if (customizer) { - var compared = isPartial - ? customizer(othValue, objValue, key, other, object, stack) - : customizer(objValue, othValue, key, object, other, stack); - } - // Recursively compare objects (susceptible to call stack limits). - if (!(compared === undefined - ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack)) - : compared - )) { - result = false; - break; - } - skipCtor || (skipCtor = key == 'constructor'); - } - if (result && !skipCtor) { - var objCtor = object.constructor, - othCtor = other.constructor; - - // Non `Object` object instances with different constructors are not equal. - if (objCtor != othCtor && - ('constructor' in object && 'constructor' in other) && - !(typeof objCtor == 'function' && objCtor instanceof objCtor && - typeof othCtor == 'function' && othCtor instanceof othCtor)) { - result = false; - } - } - stack['delete'](object); - stack['delete'](other); - return result; -} - -module.exports = equalObjects; - - -/***/ }), - -/***/ "./node_modules/lodash/_freeGlobal.js": -/*!********************************************!*\ - !*** ./node_modules/lodash/_freeGlobal.js ***! - \********************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -/** Detect free variable `global` from Node.js. */ -var freeGlobal = typeof __webpack_require__.g == 'object' && __webpack_require__.g && __webpack_require__.g.Object === Object && __webpack_require__.g; - -module.exports = freeGlobal; - - -/***/ }), - -/***/ "./node_modules/lodash/_getAllKeys.js": -/*!********************************************!*\ - !*** ./node_modules/lodash/_getAllKeys.js ***! - \********************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var baseGetAllKeys = __webpack_require__(/*! ./_baseGetAllKeys */ "./node_modules/lodash/_baseGetAllKeys.js"), - getSymbols = __webpack_require__(/*! ./_getSymbols */ "./node_modules/lodash/_getSymbols.js"), - keys = __webpack_require__(/*! ./keys */ "./node_modules/lodash/keys.js"); - -/** - * Creates an array of own enumerable property names and symbols of `object`. - * - * @private - * @param {Object} object The object to query. - * @returns {Array} Returns the array of property names and symbols. - */ -function getAllKeys(object) { - return baseGetAllKeys(object, keys, getSymbols); -} - -module.exports = getAllKeys; - - -/***/ }), - -/***/ "./node_modules/lodash/_getMapData.js": -/*!********************************************!*\ - !*** ./node_modules/lodash/_getMapData.js ***! - \********************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var isKeyable = __webpack_require__(/*! ./_isKeyable */ "./node_modules/lodash/_isKeyable.js"); - -/** - * Gets the data for `map`. - * - * @private - * @param {Object} map The map to query. - * @param {string} key The reference key. - * @returns {*} Returns the map data. - */ -function getMapData(map, key) { - var data = map.__data__; - return isKeyable(key) - ? data[typeof key == 'string' ? 'string' : 'hash'] - : data.map; -} - -module.exports = getMapData; - - -/***/ }), - -/***/ "./node_modules/lodash/_getNative.js": -/*!*******************************************!*\ - !*** ./node_modules/lodash/_getNative.js ***! - \*******************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var baseIsNative = __webpack_require__(/*! ./_baseIsNative */ "./node_modules/lodash/_baseIsNative.js"), - getValue = __webpack_require__(/*! ./_getValue */ "./node_modules/lodash/_getValue.js"); - -/** - * Gets the native function at `key` of `object`. - * - * @private - * @param {Object} object The object to query. - * @param {string} key The key of the method to get. - * @returns {*} Returns the function if it's native, else `undefined`. - */ -function getNative(object, key) { - var value = getValue(object, key); - return baseIsNative(value) ? value : undefined; -} - -module.exports = getNative; - - -/***/ }), - -/***/ "./node_modules/lodash/_getPrototype.js": -/*!**********************************************!*\ - !*** ./node_modules/lodash/_getPrototype.js ***! - \**********************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var overArg = __webpack_require__(/*! ./_overArg */ "./node_modules/lodash/_overArg.js"); - -/** Built-in value references. */ -var getPrototype = overArg(Object.getPrototypeOf, Object); - -module.exports = getPrototype; - - -/***/ }), - -/***/ "./node_modules/lodash/_getRawTag.js": -/*!*******************************************!*\ - !*** ./node_modules/lodash/_getRawTag.js ***! - \*******************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var Symbol = __webpack_require__(/*! ./_Symbol */ "./node_modules/lodash/_Symbol.js"); - -/** Used for built-in method references. */ -var objectProto = Object.prototype; - -/** Used to check objects for own properties. */ -var hasOwnProperty = objectProto.hasOwnProperty; - -/** - * Used to resolve the - * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring) - * of values. - */ -var nativeObjectToString = objectProto.toString; - -/** Built-in value references. */ -var symToStringTag = Symbol ? Symbol.toStringTag : undefined; - -/** - * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values. - * - * @private - * @param {*} value The value to query. - * @returns {string} Returns the raw `toStringTag`. - */ -function getRawTag(value) { - var isOwn = hasOwnProperty.call(value, symToStringTag), - tag = value[symToStringTag]; - - try { - value[symToStringTag] = undefined; - var unmasked = true; - } catch (e) {} - - var result = nativeObjectToString.call(value); - if (unmasked) { - if (isOwn) { - value[symToStringTag] = tag; - } else { - delete value[symToStringTag]; - } - } - return result; -} - -module.exports = getRawTag; - - -/***/ }), - -/***/ "./node_modules/lodash/_getSymbols.js": -/*!********************************************!*\ - !*** ./node_modules/lodash/_getSymbols.js ***! - \********************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var arrayFilter = __webpack_require__(/*! ./_arrayFilter */ "./node_modules/lodash/_arrayFilter.js"), - stubArray = __webpack_require__(/*! ./stubArray */ "./node_modules/lodash/stubArray.js"); - -/** Used for built-in method references. */ -var objectProto = Object.prototype; - -/** Built-in value references. */ -var propertyIsEnumerable = objectProto.propertyIsEnumerable; - -/* Built-in method references for those with the same name as other `lodash` methods. */ -var nativeGetSymbols = Object.getOwnPropertySymbols; - -/** - * Creates an array of the own enumerable symbols of `object`. - * - * @private - * @param {Object} object The object to query. - * @returns {Array} Returns the array of symbols. - */ -var getSymbols = !nativeGetSymbols ? stubArray : function(object) { - if (object == null) { - return []; - } - object = Object(object); - return arrayFilter(nativeGetSymbols(object), function(symbol) { - return propertyIsEnumerable.call(object, symbol); - }); -}; - -module.exports = getSymbols; - - -/***/ }), - -/***/ "./node_modules/lodash/_getTag.js": -/*!****************************************!*\ - !*** ./node_modules/lodash/_getTag.js ***! - \****************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var DataView = __webpack_require__(/*! ./_DataView */ "./node_modules/lodash/_DataView.js"), - Map = __webpack_require__(/*! ./_Map */ "./node_modules/lodash/_Map.js"), - Promise = __webpack_require__(/*! ./_Promise */ "./node_modules/lodash/_Promise.js"), - Set = __webpack_require__(/*! ./_Set */ "./node_modules/lodash/_Set.js"), - WeakMap = __webpack_require__(/*! ./_WeakMap */ "./node_modules/lodash/_WeakMap.js"), - baseGetTag = __webpack_require__(/*! ./_baseGetTag */ "./node_modules/lodash/_baseGetTag.js"), - toSource = __webpack_require__(/*! ./_toSource */ "./node_modules/lodash/_toSource.js"); - -/** `Object#toString` result references. */ -var mapTag = '[object Map]', - objectTag = '[object Object]', - promiseTag = '[object Promise]', - setTag = '[object Set]', - weakMapTag = '[object WeakMap]'; - -var dataViewTag = '[object DataView]'; - -/** Used to detect maps, sets, and weakmaps. */ -var dataViewCtorString = toSource(DataView), - mapCtorString = toSource(Map), - promiseCtorString = toSource(Promise), - setCtorString = toSource(Set), - weakMapCtorString = toSource(WeakMap); - -/** - * Gets the `toStringTag` of `value`. - * - * @private - * @param {*} value The value to query. - * @returns {string} Returns the `toStringTag`. - */ -var getTag = baseGetTag; - -// Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6. -if ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) || - (Map && getTag(new Map) != mapTag) || - (Promise && getTag(Promise.resolve()) != promiseTag) || - (Set && getTag(new Set) != setTag) || - (WeakMap && getTag(new WeakMap) != weakMapTag)) { - getTag = function(value) { - var result = baseGetTag(value), - Ctor = result == objectTag ? value.constructor : undefined, - ctorString = Ctor ? toSource(Ctor) : ''; - - if (ctorString) { - switch (ctorString) { - case dataViewCtorString: return dataViewTag; - case mapCtorString: return mapTag; - case promiseCtorString: return promiseTag; - case setCtorString: return setTag; - case weakMapCtorString: return weakMapTag; - } - } - return result; - }; -} - -module.exports = getTag; - - -/***/ }), - -/***/ "./node_modules/lodash/_getValue.js": -/*!******************************************!*\ - !*** ./node_modules/lodash/_getValue.js ***! - \******************************************/ -/***/ ((module) => { - -/** - * Gets the value at `key` of `object`. - * - * @private - * @param {Object} [object] The object to query. - * @param {string} key The key of the property to get. - * @returns {*} Returns the property value. - */ -function getValue(object, key) { - return object == null ? undefined : object[key]; -} - -module.exports = getValue; - - -/***/ }), - -/***/ "./node_modules/lodash/_hashClear.js": -/*!*******************************************!*\ - !*** ./node_modules/lodash/_hashClear.js ***! - \*******************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var nativeCreate = __webpack_require__(/*! ./_nativeCreate */ "./node_modules/lodash/_nativeCreate.js"); - -/** - * Removes all key-value entries from the hash. - * - * @private - * @name clear - * @memberOf Hash - */ -function hashClear() { - this.__data__ = nativeCreate ? nativeCreate(null) : {}; - this.size = 0; -} - -module.exports = hashClear; - - -/***/ }), - -/***/ "./node_modules/lodash/_hashDelete.js": -/*!********************************************!*\ - !*** ./node_modules/lodash/_hashDelete.js ***! - \********************************************/ -/***/ ((module) => { - -/** - * Removes `key` and its value from the hash. - * - * @private - * @name delete - * @memberOf Hash - * @param {Object} hash The hash to modify. - * @param {string} key The key of the value to remove. - * @returns {boolean} Returns `true` if the entry was removed, else `false`. - */ -function hashDelete(key) { - var result = this.has(key) && delete this.__data__[key]; - this.size -= result ? 1 : 0; - return result; -} - -module.exports = hashDelete; - - -/***/ }), - -/***/ "./node_modules/lodash/_hashGet.js": -/*!*****************************************!*\ - !*** ./node_modules/lodash/_hashGet.js ***! - \*****************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var nativeCreate = __webpack_require__(/*! ./_nativeCreate */ "./node_modules/lodash/_nativeCreate.js"); - -/** Used to stand-in for `undefined` hash values. */ -var HASH_UNDEFINED = '__lodash_hash_undefined__'; - -/** Used for built-in method references. */ -var objectProto = Object.prototype; - -/** Used to check objects for own properties. */ -var hasOwnProperty = objectProto.hasOwnProperty; - -/** - * Gets the hash value for `key`. - * - * @private - * @name get - * @memberOf Hash - * @param {string} key The key of the value to get. - * @returns {*} Returns the entry value. - */ -function hashGet(key) { - var data = this.__data__; - if (nativeCreate) { - var result = data[key]; - return result === HASH_UNDEFINED ? undefined : result; - } - return hasOwnProperty.call(data, key) ? data[key] : undefined; -} - -module.exports = hashGet; - - -/***/ }), - -/***/ "./node_modules/lodash/_hashHas.js": -/*!*****************************************!*\ - !*** ./node_modules/lodash/_hashHas.js ***! - \*****************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var nativeCreate = __webpack_require__(/*! ./_nativeCreate */ "./node_modules/lodash/_nativeCreate.js"); - -/** Used for built-in method references. */ -var objectProto = Object.prototype; - -/** Used to check objects for own properties. */ -var hasOwnProperty = objectProto.hasOwnProperty; - -/** - * Checks if a hash value for `key` exists. - * - * @private - * @name has - * @memberOf Hash - * @param {string} key The key of the entry to check. - * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. - */ -function hashHas(key) { - var data = this.__data__; - return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key); -} - -module.exports = hashHas; - - -/***/ }), - -/***/ "./node_modules/lodash/_hashSet.js": -/*!*****************************************!*\ - !*** ./node_modules/lodash/_hashSet.js ***! - \*****************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var nativeCreate = __webpack_require__(/*! ./_nativeCreate */ "./node_modules/lodash/_nativeCreate.js"); - -/** Used to stand-in for `undefined` hash values. */ -var HASH_UNDEFINED = '__lodash_hash_undefined__'; - -/** - * Sets the hash `key` to `value`. - * - * @private - * @name set - * @memberOf Hash - * @param {string} key The key of the value to set. - * @param {*} value The value to set. - * @returns {Object} Returns the hash instance. - */ -function hashSet(key, value) { - var data = this.__data__; - this.size += this.has(key) ? 0 : 1; - data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value; - return this; -} - -module.exports = hashSet; - - -/***/ }), - -/***/ "./node_modules/lodash/_initCloneObject.js": -/*!*************************************************!*\ - !*** ./node_modules/lodash/_initCloneObject.js ***! - \*************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var baseCreate = __webpack_require__(/*! ./_baseCreate */ "./node_modules/lodash/_baseCreate.js"), - getPrototype = __webpack_require__(/*! ./_getPrototype */ "./node_modules/lodash/_getPrototype.js"), - isPrototype = __webpack_require__(/*! ./_isPrototype */ "./node_modules/lodash/_isPrototype.js"); - -/** - * Initializes an object clone. - * - * @private - * @param {Object} object The object to clone. - * @returns {Object} Returns the initialized clone. - */ -function initCloneObject(object) { - return (typeof object.constructor == 'function' && !isPrototype(object)) - ? baseCreate(getPrototype(object)) - : {}; -} - -module.exports = initCloneObject; - - -/***/ }), - -/***/ "./node_modules/lodash/_isIndex.js": -/*!*****************************************!*\ - !*** ./node_modules/lodash/_isIndex.js ***! - \*****************************************/ -/***/ ((module) => { - -/** Used as references for various `Number` constants. */ -var MAX_SAFE_INTEGER = 9007199254740991; - -/** Used to detect unsigned integer values. */ -var reIsUint = /^(?:0|[1-9]\d*)$/; - -/** - * Checks if `value` is a valid array-like index. - * - * @private - * @param {*} value The value to check. - * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index. - * @returns {boolean} Returns `true` if `value` is a valid index, else `false`. - */ -function isIndex(value, length) { - var type = typeof value; - length = length == null ? MAX_SAFE_INTEGER : length; - - return !!length && - (type == 'number' || - (type != 'symbol' && reIsUint.test(value))) && - (value > -1 && value % 1 == 0 && value < length); -} - -module.exports = isIndex; - - -/***/ }), - -/***/ "./node_modules/lodash/_isIterateeCall.js": -/*!************************************************!*\ - !*** ./node_modules/lodash/_isIterateeCall.js ***! - \************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var eq = __webpack_require__(/*! ./eq */ "./node_modules/lodash/eq.js"), - isArrayLike = __webpack_require__(/*! ./isArrayLike */ "./node_modules/lodash/isArrayLike.js"), - isIndex = __webpack_require__(/*! ./_isIndex */ "./node_modules/lodash/_isIndex.js"), - isObject = __webpack_require__(/*! ./isObject */ "./node_modules/lodash/isObject.js"); - -/** - * Checks if the given arguments are from an iteratee call. - * - * @private - * @param {*} value The potential iteratee value argument. - * @param {*} index The potential iteratee index or key argument. - * @param {*} object The potential iteratee object argument. - * @returns {boolean} Returns `true` if the arguments are from an iteratee call, - * else `false`. - */ -function isIterateeCall(value, index, object) { - if (!isObject(object)) { - return false; - } - var type = typeof index; - if (type == 'number' - ? (isArrayLike(object) && isIndex(index, object.length)) - : (type == 'string' && index in object) - ) { - return eq(object[index], value); - } - return false; -} - -module.exports = isIterateeCall; - - -/***/ }), - -/***/ "./node_modules/lodash/_isKeyable.js": -/*!*******************************************!*\ - !*** ./node_modules/lodash/_isKeyable.js ***! - \*******************************************/ -/***/ ((module) => { - -/** - * Checks if `value` is suitable for use as unique object key. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is suitable, else `false`. - */ -function isKeyable(value) { - var type = typeof value; - return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean') - ? (value !== '__proto__') - : (value === null); -} - -module.exports = isKeyable; - - -/***/ }), - -/***/ "./node_modules/lodash/_isMasked.js": -/*!******************************************!*\ - !*** ./node_modules/lodash/_isMasked.js ***! - \******************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var coreJsData = __webpack_require__(/*! ./_coreJsData */ "./node_modules/lodash/_coreJsData.js"); - -/** Used to detect methods masquerading as native. */ -var maskSrcKey = (function() { - var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || ''); - return uid ? ('Symbol(src)_1.' + uid) : ''; -}()); - -/** - * Checks if `func` has its source masked. - * - * @private - * @param {Function} func The function to check. - * @returns {boolean} Returns `true` if `func` is masked, else `false`. - */ -function isMasked(func) { - return !!maskSrcKey && (maskSrcKey in func); -} - -module.exports = isMasked; - - -/***/ }), - -/***/ "./node_modules/lodash/_isPrototype.js": -/*!*********************************************!*\ - !*** ./node_modules/lodash/_isPrototype.js ***! - \*********************************************/ -/***/ ((module) => { - -/** Used for built-in method references. */ -var objectProto = Object.prototype; - -/** - * Checks if `value` is likely a prototype object. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a prototype, else `false`. - */ -function isPrototype(value) { - var Ctor = value && value.constructor, - proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto; - - return value === proto; -} - -module.exports = isPrototype; - - -/***/ }), - -/***/ "./node_modules/lodash/_listCacheClear.js": -/*!************************************************!*\ - !*** ./node_modules/lodash/_listCacheClear.js ***! - \************************************************/ -/***/ ((module) => { - -/** - * Removes all key-value entries from the list cache. - * - * @private - * @name clear - * @memberOf ListCache - */ -function listCacheClear() { - this.__data__ = []; - this.size = 0; -} - -module.exports = listCacheClear; - - -/***/ }), - -/***/ "./node_modules/lodash/_listCacheDelete.js": -/*!*************************************************!*\ - !*** ./node_modules/lodash/_listCacheDelete.js ***! - \*************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var assocIndexOf = __webpack_require__(/*! ./_assocIndexOf */ "./node_modules/lodash/_assocIndexOf.js"); - -/** Used for built-in method references. */ -var arrayProto = Array.prototype; - -/** Built-in value references. */ -var splice = arrayProto.splice; - -/** - * Removes `key` and its value from the list cache. - * - * @private - * @name delete - * @memberOf ListCache - * @param {string} key The key of the value to remove. - * @returns {boolean} Returns `true` if the entry was removed, else `false`. - */ -function listCacheDelete(key) { - var data = this.__data__, - index = assocIndexOf(data, key); - - if (index < 0) { - return false; - } - var lastIndex = data.length - 1; - if (index == lastIndex) { - data.pop(); - } else { - splice.call(data, index, 1); - } - --this.size; - return true; -} - -module.exports = listCacheDelete; - - -/***/ }), - -/***/ "./node_modules/lodash/_listCacheGet.js": -/*!**********************************************!*\ - !*** ./node_modules/lodash/_listCacheGet.js ***! - \**********************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var assocIndexOf = __webpack_require__(/*! ./_assocIndexOf */ "./node_modules/lodash/_assocIndexOf.js"); - -/** - * Gets the list cache value for `key`. - * - * @private - * @name get - * @memberOf ListCache - * @param {string} key The key of the value to get. - * @returns {*} Returns the entry value. - */ -function listCacheGet(key) { - var data = this.__data__, - index = assocIndexOf(data, key); - - return index < 0 ? undefined : data[index][1]; -} - -module.exports = listCacheGet; - - -/***/ }), - -/***/ "./node_modules/lodash/_listCacheHas.js": -/*!**********************************************!*\ - !*** ./node_modules/lodash/_listCacheHas.js ***! - \**********************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var assocIndexOf = __webpack_require__(/*! ./_assocIndexOf */ "./node_modules/lodash/_assocIndexOf.js"); - -/** - * Checks if a list cache value for `key` exists. - * - * @private - * @name has - * @memberOf ListCache - * @param {string} key The key of the entry to check. - * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. - */ -function listCacheHas(key) { - return assocIndexOf(this.__data__, key) > -1; -} - -module.exports = listCacheHas; - - -/***/ }), - -/***/ "./node_modules/lodash/_listCacheSet.js": -/*!**********************************************!*\ - !*** ./node_modules/lodash/_listCacheSet.js ***! - \**********************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var assocIndexOf = __webpack_require__(/*! ./_assocIndexOf */ "./node_modules/lodash/_assocIndexOf.js"); - -/** - * Sets the list cache `key` to `value`. - * - * @private - * @name set - * @memberOf ListCache - * @param {string} key The key of the value to set. - * @param {*} value The value to set. - * @returns {Object} Returns the list cache instance. - */ -function listCacheSet(key, value) { - var data = this.__data__, - index = assocIndexOf(data, key); - - if (index < 0) { - ++this.size; - data.push([key, value]); - } else { - data[index][1] = value; - } - return this; -} - -module.exports = listCacheSet; - - -/***/ }), - -/***/ "./node_modules/lodash/_mapCacheClear.js": -/*!***********************************************!*\ - !*** ./node_modules/lodash/_mapCacheClear.js ***! - \***********************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var Hash = __webpack_require__(/*! ./_Hash */ "./node_modules/lodash/_Hash.js"), - ListCache = __webpack_require__(/*! ./_ListCache */ "./node_modules/lodash/_ListCache.js"), - Map = __webpack_require__(/*! ./_Map */ "./node_modules/lodash/_Map.js"); - -/** - * Removes all key-value entries from the map. - * - * @private - * @name clear - * @memberOf MapCache - */ -function mapCacheClear() { - this.size = 0; - this.__data__ = { - 'hash': new Hash, - 'map': new (Map || ListCache), - 'string': new Hash - }; -} - -module.exports = mapCacheClear; - - -/***/ }), - -/***/ "./node_modules/lodash/_mapCacheDelete.js": -/*!************************************************!*\ - !*** ./node_modules/lodash/_mapCacheDelete.js ***! - \************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var getMapData = __webpack_require__(/*! ./_getMapData */ "./node_modules/lodash/_getMapData.js"); - -/** - * Removes `key` and its value from the map. - * - * @private - * @name delete - * @memberOf MapCache - * @param {string} key The key of the value to remove. - * @returns {boolean} Returns `true` if the entry was removed, else `false`. - */ -function mapCacheDelete(key) { - var result = getMapData(this, key)['delete'](key); - this.size -= result ? 1 : 0; - return result; -} - -module.exports = mapCacheDelete; - - -/***/ }), - -/***/ "./node_modules/lodash/_mapCacheGet.js": -/*!*********************************************!*\ - !*** ./node_modules/lodash/_mapCacheGet.js ***! - \*********************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var getMapData = __webpack_require__(/*! ./_getMapData */ "./node_modules/lodash/_getMapData.js"); - -/** - * Gets the map value for `key`. - * - * @private - * @name get - * @memberOf MapCache - * @param {string} key The key of the value to get. - * @returns {*} Returns the entry value. - */ -function mapCacheGet(key) { - return getMapData(this, key).get(key); -} - -module.exports = mapCacheGet; - - -/***/ }), - -/***/ "./node_modules/lodash/_mapCacheHas.js": -/*!*********************************************!*\ - !*** ./node_modules/lodash/_mapCacheHas.js ***! - \*********************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var getMapData = __webpack_require__(/*! ./_getMapData */ "./node_modules/lodash/_getMapData.js"); - -/** - * Checks if a map value for `key` exists. - * - * @private - * @name has - * @memberOf MapCache - * @param {string} key The key of the entry to check. - * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. - */ -function mapCacheHas(key) { - return getMapData(this, key).has(key); -} - -module.exports = mapCacheHas; - - -/***/ }), - -/***/ "./node_modules/lodash/_mapCacheSet.js": -/*!*********************************************!*\ - !*** ./node_modules/lodash/_mapCacheSet.js ***! - \*********************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var getMapData = __webpack_require__(/*! ./_getMapData */ "./node_modules/lodash/_getMapData.js"); - -/** - * Sets the map `key` to `value`. - * - * @private - * @name set - * @memberOf MapCache - * @param {string} key The key of the value to set. - * @param {*} value The value to set. - * @returns {Object} Returns the map cache instance. - */ -function mapCacheSet(key, value) { - var data = getMapData(this, key), - size = data.size; - - data.set(key, value); - this.size += data.size == size ? 0 : 1; - return this; -} - -module.exports = mapCacheSet; - - -/***/ }), - -/***/ "./node_modules/lodash/_mapToArray.js": -/*!********************************************!*\ - !*** ./node_modules/lodash/_mapToArray.js ***! - \********************************************/ -/***/ ((module) => { - -/** - * Converts `map` to its key-value pairs. - * - * @private - * @param {Object} map The map to convert. - * @returns {Array} Returns the key-value pairs. - */ -function mapToArray(map) { - var index = -1, - result = Array(map.size); - - map.forEach(function(value, key) { - result[++index] = [key, value]; - }); - return result; -} - -module.exports = mapToArray; - - -/***/ }), - -/***/ "./node_modules/lodash/_nativeCreate.js": -/*!**********************************************!*\ - !*** ./node_modules/lodash/_nativeCreate.js ***! - \**********************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var getNative = __webpack_require__(/*! ./_getNative */ "./node_modules/lodash/_getNative.js"); - -/* Built-in method references that are verified to be native. */ -var nativeCreate = getNative(Object, 'create'); - -module.exports = nativeCreate; - - -/***/ }), - -/***/ "./node_modules/lodash/_nativeKeys.js": -/*!********************************************!*\ - !*** ./node_modules/lodash/_nativeKeys.js ***! - \********************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var overArg = __webpack_require__(/*! ./_overArg */ "./node_modules/lodash/_overArg.js"); - -/* Built-in method references for those with the same name as other `lodash` methods. */ -var nativeKeys = overArg(Object.keys, Object); - -module.exports = nativeKeys; - - -/***/ }), - -/***/ "./node_modules/lodash/_nativeKeysIn.js": -/*!**********************************************!*\ - !*** ./node_modules/lodash/_nativeKeysIn.js ***! - \**********************************************/ -/***/ ((module) => { - -/** - * This function is like - * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys) - * except that it includes inherited enumerable properties. - * - * @private - * @param {Object} object The object to query. - * @returns {Array} Returns the array of property names. - */ -function nativeKeysIn(object) { - var result = []; - if (object != null) { - for (var key in Object(object)) { - result.push(key); - } - } - return result; -} - -module.exports = nativeKeysIn; - - -/***/ }), - -/***/ "./node_modules/lodash/_nodeUtil.js": -/*!******************************************!*\ - !*** ./node_modules/lodash/_nodeUtil.js ***! - \******************************************/ -/***/ ((module, exports, __webpack_require__) => { - -/* module decorator */ module = __webpack_require__.nmd(module); -var freeGlobal = __webpack_require__(/*! ./_freeGlobal */ "./node_modules/lodash/_freeGlobal.js"); - -/** Detect free variable `exports`. */ -var freeExports = true && exports && !exports.nodeType && exports; - -/** Detect free variable `module`. */ -var freeModule = freeExports && "object" == 'object' && module && !module.nodeType && module; - -/** Detect the popular CommonJS extension `module.exports`. */ -var moduleExports = freeModule && freeModule.exports === freeExports; - -/** Detect free variable `process` from Node.js. */ -var freeProcess = moduleExports && freeGlobal.process; - -/** Used to access faster Node.js helpers. */ -var nodeUtil = (function() { - try { - // Use `util.types` for Node.js 10+. - var types = freeModule && freeModule.require && freeModule.require('util').types; - - if (types) { - return types; - } - - // Legacy `process.binding('util')` for Node.js < 10. - return freeProcess && freeProcess.binding && freeProcess.binding('util'); - } catch (e) {} -}()); - -module.exports = nodeUtil; - - -/***/ }), - -/***/ "./node_modules/lodash/_objectToString.js": -/*!************************************************!*\ - !*** ./node_modules/lodash/_objectToString.js ***! - \************************************************/ -/***/ ((module) => { - -/** Used for built-in method references. */ -var objectProto = Object.prototype; - -/** - * Used to resolve the - * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring) - * of values. - */ -var nativeObjectToString = objectProto.toString; - -/** - * Converts `value` to a string using `Object.prototype.toString`. - * - * @private - * @param {*} value The value to convert. - * @returns {string} Returns the converted string. - */ -function objectToString(value) { - return nativeObjectToString.call(value); -} - -module.exports = objectToString; - - -/***/ }), - -/***/ "./node_modules/lodash/_overArg.js": -/*!*****************************************!*\ - !*** ./node_modules/lodash/_overArg.js ***! - \*****************************************/ -/***/ ((module) => { - -/** - * Creates a unary function that invokes `func` with its argument transformed. - * - * @private - * @param {Function} func The function to wrap. - * @param {Function} transform The argument transform. - * @returns {Function} Returns the new function. - */ -function overArg(func, transform) { - return function(arg) { - return func(transform(arg)); - }; -} - -module.exports = overArg; - - -/***/ }), - -/***/ "./node_modules/lodash/_overRest.js": -/*!******************************************!*\ - !*** ./node_modules/lodash/_overRest.js ***! - \******************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var apply = __webpack_require__(/*! ./_apply */ "./node_modules/lodash/_apply.js"); - -/* Built-in method references for those with the same name as other `lodash` methods. */ -var nativeMax = Math.max; - -/** - * A specialized version of `baseRest` which transforms the rest array. - * - * @private - * @param {Function} func The function to apply a rest parameter to. - * @param {number} [start=func.length-1] The start position of the rest parameter. - * @param {Function} transform The rest array transform. - * @returns {Function} Returns the new function. - */ -function overRest(func, start, transform) { - start = nativeMax(start === undefined ? (func.length - 1) : start, 0); - return function() { - var args = arguments, - index = -1, - length = nativeMax(args.length - start, 0), - array = Array(length); - - while (++index < length) { - array[index] = args[start + index]; - } - index = -1; - var otherArgs = Array(start + 1); - while (++index < start) { - otherArgs[index] = args[index]; - } - otherArgs[start] = transform(array); - return apply(func, this, otherArgs); - }; -} - -module.exports = overRest; - - -/***/ }), - -/***/ "./node_modules/lodash/_root.js": -/*!**************************************!*\ - !*** ./node_modules/lodash/_root.js ***! - \**************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var freeGlobal = __webpack_require__(/*! ./_freeGlobal */ "./node_modules/lodash/_freeGlobal.js"); - -/** Detect free variable `self`. */ -var freeSelf = typeof self == 'object' && self && self.Object === Object && self; - -/** Used as a reference to the global object. */ -var root = freeGlobal || freeSelf || Function('return this')(); - -module.exports = root; - - -/***/ }), - -/***/ "./node_modules/lodash/_safeGet.js": -/*!*****************************************!*\ - !*** ./node_modules/lodash/_safeGet.js ***! - \*****************************************/ -/***/ ((module) => { - -/** - * Gets the value at `key`, unless `key` is "__proto__" or "constructor". - * - * @private - * @param {Object} object The object to query. - * @param {string} key The key of the property to get. - * @returns {*} Returns the property value. - */ -function safeGet(object, key) { - if (key === 'constructor' && typeof object[key] === 'function') { - return; - } - - if (key == '__proto__') { - return; - } - - return object[key]; -} - -module.exports = safeGet; - - -/***/ }), - -/***/ "./node_modules/lodash/_setCacheAdd.js": -/*!*********************************************!*\ - !*** ./node_modules/lodash/_setCacheAdd.js ***! - \*********************************************/ -/***/ ((module) => { - -/** Used to stand-in for `undefined` hash values. */ -var HASH_UNDEFINED = '__lodash_hash_undefined__'; - -/** - * Adds `value` to the array cache. - * - * @private - * @name add - * @memberOf SetCache - * @alias push - * @param {*} value The value to cache. - * @returns {Object} Returns the cache instance. - */ -function setCacheAdd(value) { - this.__data__.set(value, HASH_UNDEFINED); - return this; -} - -module.exports = setCacheAdd; - - -/***/ }), - -/***/ "./node_modules/lodash/_setCacheHas.js": -/*!*********************************************!*\ - !*** ./node_modules/lodash/_setCacheHas.js ***! - \*********************************************/ -/***/ ((module) => { - -/** - * Checks if `value` is in the array cache. - * - * @private - * @name has - * @memberOf SetCache - * @param {*} value The value to search for. - * @returns {number} Returns `true` if `value` is found, else `false`. - */ -function setCacheHas(value) { - return this.__data__.has(value); -} - -module.exports = setCacheHas; - - -/***/ }), - -/***/ "./node_modules/lodash/_setToArray.js": -/*!********************************************!*\ - !*** ./node_modules/lodash/_setToArray.js ***! - \********************************************/ -/***/ ((module) => { - -/** - * Converts `set` to an array of its values. - * - * @private - * @param {Object} set The set to convert. - * @returns {Array} Returns the values. - */ -function setToArray(set) { - var index = -1, - result = Array(set.size); - - set.forEach(function(value) { - result[++index] = value; - }); - return result; -} - -module.exports = setToArray; - - -/***/ }), - -/***/ "./node_modules/lodash/_setToString.js": -/*!*********************************************!*\ - !*** ./node_modules/lodash/_setToString.js ***! - \*********************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var baseSetToString = __webpack_require__(/*! ./_baseSetToString */ "./node_modules/lodash/_baseSetToString.js"), - shortOut = __webpack_require__(/*! ./_shortOut */ "./node_modules/lodash/_shortOut.js"); - -/** - * Sets the `toString` method of `func` to return `string`. - * - * @private - * @param {Function} func The function to modify. - * @param {Function} string The `toString` result. - * @returns {Function} Returns `func`. - */ -var setToString = shortOut(baseSetToString); - -module.exports = setToString; - - -/***/ }), - -/***/ "./node_modules/lodash/_shortOut.js": -/*!******************************************!*\ - !*** ./node_modules/lodash/_shortOut.js ***! - \******************************************/ -/***/ ((module) => { - -/** Used to detect hot functions by number of calls within a span of milliseconds. */ -var HOT_COUNT = 800, - HOT_SPAN = 16; - -/* Built-in method references for those with the same name as other `lodash` methods. */ -var nativeNow = Date.now; - -/** - * Creates a function that'll short out and invoke `identity` instead - * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN` - * milliseconds. - * - * @private - * @param {Function} func The function to restrict. - * @returns {Function} Returns the new shortable function. - */ -function shortOut(func) { - var count = 0, - lastCalled = 0; - - return function() { - var stamp = nativeNow(), - remaining = HOT_SPAN - (stamp - lastCalled); - - lastCalled = stamp; - if (remaining > 0) { - if (++count >= HOT_COUNT) { - return arguments[0]; - } - } else { - count = 0; - } - return func.apply(undefined, arguments); - }; -} - -module.exports = shortOut; - - -/***/ }), - -/***/ "./node_modules/lodash/_stackClear.js": -/*!********************************************!*\ - !*** ./node_modules/lodash/_stackClear.js ***! - \********************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var ListCache = __webpack_require__(/*! ./_ListCache */ "./node_modules/lodash/_ListCache.js"); - -/** - * Removes all key-value entries from the stack. - * - * @private - * @name clear - * @memberOf Stack - */ -function stackClear() { - this.__data__ = new ListCache; - this.size = 0; -} - -module.exports = stackClear; - - -/***/ }), - -/***/ "./node_modules/lodash/_stackDelete.js": -/*!*********************************************!*\ - !*** ./node_modules/lodash/_stackDelete.js ***! - \*********************************************/ -/***/ ((module) => { - -/** - * Removes `key` and its value from the stack. - * - * @private - * @name delete - * @memberOf Stack - * @param {string} key The key of the value to remove. - * @returns {boolean} Returns `true` if the entry was removed, else `false`. - */ -function stackDelete(key) { - var data = this.__data__, - result = data['delete'](key); - - this.size = data.size; - return result; -} - -module.exports = stackDelete; - - -/***/ }), - -/***/ "./node_modules/lodash/_stackGet.js": -/*!******************************************!*\ - !*** ./node_modules/lodash/_stackGet.js ***! - \******************************************/ -/***/ ((module) => { - -/** - * Gets the stack value for `key`. - * - * @private - * @name get - * @memberOf Stack - * @param {string} key The key of the value to get. - * @returns {*} Returns the entry value. - */ -function stackGet(key) { - return this.__data__.get(key); -} - -module.exports = stackGet; - - -/***/ }), - -/***/ "./node_modules/lodash/_stackHas.js": -/*!******************************************!*\ - !*** ./node_modules/lodash/_stackHas.js ***! - \******************************************/ -/***/ ((module) => { - -/** - * Checks if a stack value for `key` exists. - * - * @private - * @name has - * @memberOf Stack - * @param {string} key The key of the entry to check. - * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. - */ -function stackHas(key) { - return this.__data__.has(key); -} - -module.exports = stackHas; - - -/***/ }), - -/***/ "./node_modules/lodash/_stackSet.js": -/*!******************************************!*\ - !*** ./node_modules/lodash/_stackSet.js ***! - \******************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var ListCache = __webpack_require__(/*! ./_ListCache */ "./node_modules/lodash/_ListCache.js"), - Map = __webpack_require__(/*! ./_Map */ "./node_modules/lodash/_Map.js"), - MapCache = __webpack_require__(/*! ./_MapCache */ "./node_modules/lodash/_MapCache.js"); - -/** Used as the size to enable large array optimizations. */ -var LARGE_ARRAY_SIZE = 200; - -/** - * Sets the stack `key` to `value`. - * - * @private - * @name set - * @memberOf Stack - * @param {string} key The key of the value to set. - * @param {*} value The value to set. - * @returns {Object} Returns the stack cache instance. - */ -function stackSet(key, value) { - var data = this.__data__; - if (data instanceof ListCache) { - var pairs = data.__data__; - if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) { - pairs.push([key, value]); - this.size = ++data.size; - return this; - } - data = this.__data__ = new MapCache(pairs); - } - data.set(key, value); - this.size = data.size; - return this; -} - -module.exports = stackSet; - - -/***/ }), - -/***/ "./node_modules/lodash/_toSource.js": -/*!******************************************!*\ - !*** ./node_modules/lodash/_toSource.js ***! - \******************************************/ -/***/ ((module) => { - -/** Used for built-in method references. */ -var funcProto = Function.prototype; - -/** Used to resolve the decompiled source of functions. */ -var funcToString = funcProto.toString; - -/** - * Converts `func` to its source code. - * - * @private - * @param {Function} func The function to convert. - * @returns {string} Returns the source code. - */ -function toSource(func) { - if (func != null) { - try { - return funcToString.call(func); - } catch (e) {} - try { - return (func + ''); - } catch (e) {} - } - return ''; -} - -module.exports = toSource; - - -/***/ }), - -/***/ "./node_modules/lodash/constant.js": -/*!*****************************************!*\ - !*** ./node_modules/lodash/constant.js ***! - \*****************************************/ -/***/ ((module) => { - -/** - * Creates a function that returns `value`. - * - * @static - * @memberOf _ - * @since 2.4.0 - * @category Util - * @param {*} value The value to return from the new function. - * @returns {Function} Returns the new constant function. - * @example - * - * var objects = _.times(2, _.constant({ 'a': 1 })); - * - * console.log(objects); - * // => [{ 'a': 1 }, { 'a': 1 }] - * - * console.log(objects[0] === objects[1]); - * // => true - */ -function constant(value) { - return function() { - return value; - }; -} - -module.exports = constant; - - -/***/ }), - -/***/ "./node_modules/lodash/eq.js": -/*!***********************************!*\ - !*** ./node_modules/lodash/eq.js ***! - \***********************************/ -/***/ ((module) => { - -/** - * Performs a - * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) - * comparison between two values to determine if they are equivalent. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to compare. - * @param {*} other The other value to compare. - * @returns {boolean} Returns `true` if the values are equivalent, else `false`. - * @example - * - * var object = { 'a': 1 }; - * var other = { 'a': 1 }; - * - * _.eq(object, object); - * // => true - * - * _.eq(object, other); - * // => false - * - * _.eq('a', 'a'); - * // => true - * - * _.eq('a', Object('a')); - * // => false - * - * _.eq(NaN, NaN); - * // => true - */ -function eq(value, other) { - return value === other || (value !== value && other !== other); -} - -module.exports = eq; - - -/***/ }), - -/***/ "./node_modules/lodash/identity.js": -/*!*****************************************!*\ - !*** ./node_modules/lodash/identity.js ***! - \*****************************************/ -/***/ ((module) => { - -/** - * This method returns the first argument it receives. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Util - * @param {*} value Any value. - * @returns {*} Returns `value`. - * @example - * - * var object = { 'a': 1 }; - * - * console.log(_.identity(object) === object); - * // => true - */ -function identity(value) { - return value; -} - -module.exports = identity; - - -/***/ }), - -/***/ "./node_modules/lodash/isArguments.js": -/*!********************************************!*\ - !*** ./node_modules/lodash/isArguments.js ***! - \********************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var baseIsArguments = __webpack_require__(/*! ./_baseIsArguments */ "./node_modules/lodash/_baseIsArguments.js"), - isObjectLike = __webpack_require__(/*! ./isObjectLike */ "./node_modules/lodash/isObjectLike.js"); - -/** Used for built-in method references. */ -var objectProto = Object.prototype; - -/** Used to check objects for own properties. */ -var hasOwnProperty = objectProto.hasOwnProperty; - -/** Built-in value references. */ -var propertyIsEnumerable = objectProto.propertyIsEnumerable; - -/** - * Checks if `value` is likely an `arguments` object. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is an `arguments` object, - * else `false`. - * @example - * - * _.isArguments(function() { return arguments; }()); - * // => true - * - * _.isArguments([1, 2, 3]); - * // => false - */ -var isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) { - return isObjectLike(value) && hasOwnProperty.call(value, 'callee') && - !propertyIsEnumerable.call(value, 'callee'); -}; - -module.exports = isArguments; - - -/***/ }), - -/***/ "./node_modules/lodash/isArray.js": -/*!****************************************!*\ - !*** ./node_modules/lodash/isArray.js ***! - \****************************************/ -/***/ ((module) => { - -/** - * Checks if `value` is classified as an `Array` object. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is an array, else `false`. - * @example - * - * _.isArray([1, 2, 3]); - * // => true - * - * _.isArray(document.body.children); - * // => false - * - * _.isArray('abc'); - * // => false - * - * _.isArray(_.noop); - * // => false - */ -var isArray = Array.isArray; - -module.exports = isArray; - - -/***/ }), - -/***/ "./node_modules/lodash/isArrayLike.js": -/*!********************************************!*\ - !*** ./node_modules/lodash/isArrayLike.js ***! - \********************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var isFunction = __webpack_require__(/*! ./isFunction */ "./node_modules/lodash/isFunction.js"), - isLength = __webpack_require__(/*! ./isLength */ "./node_modules/lodash/isLength.js"); - -/** - * Checks if `value` is array-like. A value is considered array-like if it's - * not a function and has a `value.length` that's an integer greater than or - * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is array-like, else `false`. - * @example - * - * _.isArrayLike([1, 2, 3]); - * // => true - * - * _.isArrayLike(document.body.children); - * // => true - * - * _.isArrayLike('abc'); - * // => true - * - * _.isArrayLike(_.noop); - * // => false - */ -function isArrayLike(value) { - return value != null && isLength(value.length) && !isFunction(value); -} - -module.exports = isArrayLike; - - -/***/ }), - -/***/ "./node_modules/lodash/isArrayLikeObject.js": -/*!**************************************************!*\ - !*** ./node_modules/lodash/isArrayLikeObject.js ***! - \**************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var isArrayLike = __webpack_require__(/*! ./isArrayLike */ "./node_modules/lodash/isArrayLike.js"), - isObjectLike = __webpack_require__(/*! ./isObjectLike */ "./node_modules/lodash/isObjectLike.js"); - -/** - * This method is like `_.isArrayLike` except that it also checks if `value` - * is an object. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is an array-like object, - * else `false`. - * @example - * - * _.isArrayLikeObject([1, 2, 3]); - * // => true - * - * _.isArrayLikeObject(document.body.children); - * // => true - * - * _.isArrayLikeObject('abc'); - * // => false - * - * _.isArrayLikeObject(_.noop); - * // => false - */ -function isArrayLikeObject(value) { - return isObjectLike(value) && isArrayLike(value); -} - -module.exports = isArrayLikeObject; - - -/***/ }), - -/***/ "./node_modules/lodash/isBuffer.js": -/*!*****************************************!*\ - !*** ./node_modules/lodash/isBuffer.js ***! - \*****************************************/ -/***/ ((module, exports, __webpack_require__) => { - -/* module decorator */ module = __webpack_require__.nmd(module); -var root = __webpack_require__(/*! ./_root */ "./node_modules/lodash/_root.js"), - stubFalse = __webpack_require__(/*! ./stubFalse */ "./node_modules/lodash/stubFalse.js"); - -/** Detect free variable `exports`. */ -var freeExports = true && exports && !exports.nodeType && exports; - -/** Detect free variable `module`. */ -var freeModule = freeExports && "object" == 'object' && module && !module.nodeType && module; - -/** Detect the popular CommonJS extension `module.exports`. */ -var moduleExports = freeModule && freeModule.exports === freeExports; - -/** Built-in value references. */ -var Buffer = moduleExports ? root.Buffer : undefined; - -/* Built-in method references for those with the same name as other `lodash` methods. */ -var nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined; - -/** - * Checks if `value` is a buffer. - * - * @static - * @memberOf _ - * @since 4.3.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a buffer, else `false`. - * @example - * - * _.isBuffer(new Buffer(2)); - * // => true - * - * _.isBuffer(new Uint8Array(2)); - * // => false - */ -var isBuffer = nativeIsBuffer || stubFalse; - -module.exports = isBuffer; - - -/***/ }), - -/***/ "./node_modules/lodash/isEqual.js": -/*!****************************************!*\ - !*** ./node_modules/lodash/isEqual.js ***! - \****************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var baseIsEqual = __webpack_require__(/*! ./_baseIsEqual */ "./node_modules/lodash/_baseIsEqual.js"); - -/** - * Performs a deep comparison between two values to determine if they are - * equivalent. - * - * **Note:** This method supports comparing arrays, array buffers, booleans, - * date objects, error objects, maps, numbers, `Object` objects, regexes, - * sets, strings, symbols, and typed arrays. `Object` objects are compared - * by their own, not inherited, enumerable properties. Functions and DOM - * nodes are compared by strict equality, i.e. `===`. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to compare. - * @param {*} other The other value to compare. - * @returns {boolean} Returns `true` if the values are equivalent, else `false`. - * @example - * - * var object = { 'a': 1 }; - * var other = { 'a': 1 }; - * - * _.isEqual(object, other); - * // => true - * - * object === other; - * // => false - */ -function isEqual(value, other) { - return baseIsEqual(value, other); -} - -module.exports = isEqual; - - -/***/ }), - -/***/ "./node_modules/lodash/isFunction.js": -/*!*******************************************!*\ - !*** ./node_modules/lodash/isFunction.js ***! - \*******************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var baseGetTag = __webpack_require__(/*! ./_baseGetTag */ "./node_modules/lodash/_baseGetTag.js"), - isObject = __webpack_require__(/*! ./isObject */ "./node_modules/lodash/isObject.js"); - -/** `Object#toString` result references. */ -var asyncTag = '[object AsyncFunction]', - funcTag = '[object Function]', - genTag = '[object GeneratorFunction]', - proxyTag = '[object Proxy]'; - -/** - * Checks if `value` is classified as a `Function` object. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a function, else `false`. - * @example - * - * _.isFunction(_); - * // => true - * - * _.isFunction(/abc/); - * // => false - */ -function isFunction(value) { - if (!isObject(value)) { - return false; - } - // The use of `Object#toString` avoids issues with the `typeof` operator - // in Safari 9 which returns 'object' for typed arrays and other constructors. - var tag = baseGetTag(value); - return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag; -} - -module.exports = isFunction; - - -/***/ }), - -/***/ "./node_modules/lodash/isLength.js": -/*!*****************************************!*\ - !*** ./node_modules/lodash/isLength.js ***! - \*****************************************/ -/***/ ((module) => { - -/** Used as references for various `Number` constants. */ -var MAX_SAFE_INTEGER = 9007199254740991; - -/** - * Checks if `value` is a valid array-like length. - * - * **Note:** This method is loosely based on - * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a valid length, else `false`. - * @example - * - * _.isLength(3); - * // => true - * - * _.isLength(Number.MIN_VALUE); - * // => false - * - * _.isLength(Infinity); - * // => false - * - * _.isLength('3'); - * // => false - */ -function isLength(value) { - return typeof value == 'number' && - value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER; -} - -module.exports = isLength; - - -/***/ }), - -/***/ "./node_modules/lodash/isObject.js": -/*!*****************************************!*\ - !*** ./node_modules/lodash/isObject.js ***! - \*****************************************/ -/***/ ((module) => { - -/** - * Checks if `value` is the - * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types) - * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`) - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is an object, else `false`. - * @example - * - * _.isObject({}); - * // => true - * - * _.isObject([1, 2, 3]); - * // => true - * - * _.isObject(_.noop); - * // => true - * - * _.isObject(null); - * // => false - */ -function isObject(value) { - var type = typeof value; - return value != null && (type == 'object' || type == 'function'); -} - -module.exports = isObject; - - -/***/ }), - -/***/ "./node_modules/lodash/isObjectLike.js": -/*!*********************************************!*\ - !*** ./node_modules/lodash/isObjectLike.js ***! - \*********************************************/ -/***/ ((module) => { - -/** - * Checks if `value` is object-like. A value is object-like if it's not `null` - * and has a `typeof` result of "object". - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is object-like, else `false`. - * @example - * - * _.isObjectLike({}); - * // => true - * - * _.isObjectLike([1, 2, 3]); - * // => true - * - * _.isObjectLike(_.noop); - * // => false - * - * _.isObjectLike(null); - * // => false - */ -function isObjectLike(value) { - return value != null && typeof value == 'object'; -} - -module.exports = isObjectLike; - - -/***/ }), - -/***/ "./node_modules/lodash/isPlainObject.js": -/*!**********************************************!*\ - !*** ./node_modules/lodash/isPlainObject.js ***! - \**********************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var baseGetTag = __webpack_require__(/*! ./_baseGetTag */ "./node_modules/lodash/_baseGetTag.js"), - getPrototype = __webpack_require__(/*! ./_getPrototype */ "./node_modules/lodash/_getPrototype.js"), - isObjectLike = __webpack_require__(/*! ./isObjectLike */ "./node_modules/lodash/isObjectLike.js"); - -/** `Object#toString` result references. */ -var objectTag = '[object Object]'; - -/** Used for built-in method references. */ -var funcProto = Function.prototype, - objectProto = Object.prototype; - -/** Used to resolve the decompiled source of functions. */ -var funcToString = funcProto.toString; - -/** Used to check objects for own properties. */ -var hasOwnProperty = objectProto.hasOwnProperty; - -/** Used to infer the `Object` constructor. */ -var objectCtorString = funcToString.call(Object); - -/** - * Checks if `value` is a plain object, that is, an object created by the - * `Object` constructor or one with a `[[Prototype]]` of `null`. - * - * @static - * @memberOf _ - * @since 0.8.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a plain object, else `false`. - * @example - * - * function Foo() { - * this.a = 1; - * } - * - * _.isPlainObject(new Foo); - * // => false - * - * _.isPlainObject([1, 2, 3]); - * // => false - * - * _.isPlainObject({ 'x': 0, 'y': 0 }); - * // => true - * - * _.isPlainObject(Object.create(null)); - * // => true - */ -function isPlainObject(value) { - if (!isObjectLike(value) || baseGetTag(value) != objectTag) { - return false; - } - var proto = getPrototype(value); - if (proto === null) { - return true; - } - var Ctor = hasOwnProperty.call(proto, 'constructor') && proto.constructor; - return typeof Ctor == 'function' && Ctor instanceof Ctor && - funcToString.call(Ctor) == objectCtorString; -} - -module.exports = isPlainObject; - - -/***/ }), - -/***/ "./node_modules/lodash/isTypedArray.js": -/*!*********************************************!*\ - !*** ./node_modules/lodash/isTypedArray.js ***! - \*********************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var baseIsTypedArray = __webpack_require__(/*! ./_baseIsTypedArray */ "./node_modules/lodash/_baseIsTypedArray.js"), - baseUnary = __webpack_require__(/*! ./_baseUnary */ "./node_modules/lodash/_baseUnary.js"), - nodeUtil = __webpack_require__(/*! ./_nodeUtil */ "./node_modules/lodash/_nodeUtil.js"); - -/* Node.js helper references. */ -var nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray; - -/** - * Checks if `value` is classified as a typed array. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a typed array, else `false`. - * @example - * - * _.isTypedArray(new Uint8Array); - * // => true - * - * _.isTypedArray([]); - * // => false - */ -var isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray; - -module.exports = isTypedArray; - - -/***/ }), - -/***/ "./node_modules/lodash/keys.js": -/*!*************************************!*\ - !*** ./node_modules/lodash/keys.js ***! - \*************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var arrayLikeKeys = __webpack_require__(/*! ./_arrayLikeKeys */ "./node_modules/lodash/_arrayLikeKeys.js"), - baseKeys = __webpack_require__(/*! ./_baseKeys */ "./node_modules/lodash/_baseKeys.js"), - isArrayLike = __webpack_require__(/*! ./isArrayLike */ "./node_modules/lodash/isArrayLike.js"); - -/** - * Creates an array of the own enumerable property names of `object`. - * - * **Note:** Non-object values are coerced to objects. See the - * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys) - * for more details. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Object - * @param {Object} object The object to query. - * @returns {Array} Returns the array of property names. - * @example - * - * function Foo() { - * this.a = 1; - * this.b = 2; - * } - * - * Foo.prototype.c = 3; - * - * _.keys(new Foo); - * // => ['a', 'b'] (iteration order is not guaranteed) - * - * _.keys('hi'); - * // => ['0', '1'] - */ -function keys(object) { - return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object); -} - -module.exports = keys; - - -/***/ }), - -/***/ "./node_modules/lodash/keysIn.js": -/*!***************************************!*\ - !*** ./node_modules/lodash/keysIn.js ***! - \***************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var arrayLikeKeys = __webpack_require__(/*! ./_arrayLikeKeys */ "./node_modules/lodash/_arrayLikeKeys.js"), - baseKeysIn = __webpack_require__(/*! ./_baseKeysIn */ "./node_modules/lodash/_baseKeysIn.js"), - isArrayLike = __webpack_require__(/*! ./isArrayLike */ "./node_modules/lodash/isArrayLike.js"); - -/** - * Creates an array of the own and inherited enumerable property names of `object`. - * - * **Note:** Non-object values are coerced to objects. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Object - * @param {Object} object The object to query. - * @returns {Array} Returns the array of property names. - * @example - * - * function Foo() { - * this.a = 1; - * this.b = 2; - * } - * - * Foo.prototype.c = 3; - * - * _.keysIn(new Foo); - * // => ['a', 'b', 'c'] (iteration order is not guaranteed) - */ -function keysIn(object) { - return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object); -} - -module.exports = keysIn; - - -/***/ }), - -/***/ "./node_modules/lodash/merge.js": -/*!**************************************!*\ - !*** ./node_modules/lodash/merge.js ***! - \**************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var baseMerge = __webpack_require__(/*! ./_baseMerge */ "./node_modules/lodash/_baseMerge.js"), - createAssigner = __webpack_require__(/*! ./_createAssigner */ "./node_modules/lodash/_createAssigner.js"); - -/** - * This method is like `_.assign` except that it recursively merges own and - * inherited enumerable string keyed properties of source objects into the - * destination object. Source properties that resolve to `undefined` are - * skipped if a destination value exists. Array and plain object properties - * are merged recursively. Other objects and value types are overridden by - * assignment. Source objects are applied from left to right. Subsequent - * sources overwrite property assignments of previous sources. - * - * **Note:** This method mutates `object`. - * - * @static - * @memberOf _ - * @since 0.5.0 - * @category Object - * @param {Object} object The destination object. - * @param {...Object} [sources] The source objects. - * @returns {Object} Returns `object`. - * @example - * - * var object = { - * 'a': [{ 'b': 2 }, { 'd': 4 }] - * }; - * - * var other = { - * 'a': [{ 'c': 3 }, { 'e': 5 }] - * }; - * - * _.merge(object, other); - * // => { 'a': [{ 'b': 2, 'c': 3 }, { 'd': 4, 'e': 5 }] } - */ -var merge = createAssigner(function(object, source, srcIndex) { - baseMerge(object, source, srcIndex); -}); - -module.exports = merge; - - -/***/ }), - -/***/ "./node_modules/lodash/stubArray.js": -/*!******************************************!*\ - !*** ./node_modules/lodash/stubArray.js ***! - \******************************************/ -/***/ ((module) => { - -/** - * This method returns a new empty array. - * - * @static - * @memberOf _ - * @since 4.13.0 - * @category Util - * @returns {Array} Returns the new empty array. - * @example - * - * var arrays = _.times(2, _.stubArray); - * - * console.log(arrays); - * // => [[], []] - * - * console.log(arrays[0] === arrays[1]); - * // => false - */ -function stubArray() { - return []; -} - -module.exports = stubArray; - - -/***/ }), - -/***/ "./node_modules/lodash/stubFalse.js": -/*!******************************************!*\ - !*** ./node_modules/lodash/stubFalse.js ***! - \******************************************/ -/***/ ((module) => { - -/** - * This method returns `false`. - * - * @static - * @memberOf _ - * @since 4.13.0 - * @category Util - * @returns {boolean} Returns `false`. - * @example - * - * _.times(2, _.stubFalse); - * // => [false, false] - */ -function stubFalse() { - return false; -} - -module.exports = stubFalse; - - -/***/ }), - -/***/ "./node_modules/lodash/toPlainObject.js": -/*!**********************************************!*\ - !*** ./node_modules/lodash/toPlainObject.js ***! - \**********************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var copyObject = __webpack_require__(/*! ./_copyObject */ "./node_modules/lodash/_copyObject.js"), - keysIn = __webpack_require__(/*! ./keysIn */ "./node_modules/lodash/keysIn.js"); - -/** - * Converts `value` to a plain object flattening inherited enumerable string - * keyed properties of `value` to own properties of the plain object. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Lang - * @param {*} value The value to convert. - * @returns {Object} Returns the converted plain object. - * @example - * - * function Foo() { - * this.b = 2; - * } - * - * Foo.prototype.c = 3; - * - * _.assign({ 'a': 1 }, new Foo); - * // => { 'a': 1, 'b': 2 } - * - * _.assign({ 'a': 1 }, _.toPlainObject(new Foo)); - * // => { 'a': 1, 'b': 2, 'c': 3 } - */ -function toPlainObject(value) { - return copyObject(value, keysIn(value)); -} - -module.exports = toPlainObject; - - -/***/ }), - -/***/ "./node_modules/popper.js/dist/esm/popper.js": -/*!***************************************************!*\ - !*** ./node_modules/popper.js/dist/esm/popper.js ***! - \***************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js"); -/**! - * @fileOverview Kickass library to create and place poppers near their reference elements. - * @version 1.16.1 - * @license - * Copyright (c) 2016 Federico Zivolo and contributors - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ -var isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined' && typeof navigator !== 'undefined'; - -var timeoutDuration = function () { - var longerTimeoutBrowsers = ['Edge', 'Trident', 'Firefox']; - for (var i = 0; i < longerTimeoutBrowsers.length; i += 1) { - if (isBrowser && navigator.userAgent.indexOf(longerTimeoutBrowsers[i]) >= 0) { - return 1; - } - } - return 0; -}(); - -function microtaskDebounce(fn) { - var called = false; - return function () { - if (called) { - return; - } - called = true; - window.Promise.resolve().then(function () { - called = false; - fn(); - }); - }; -} - -function taskDebounce(fn) { - var scheduled = false; - return function () { - if (!scheduled) { - scheduled = true; - setTimeout(function () { - scheduled = false; - fn(); - }, timeoutDuration); - } - }; -} - -var supportsMicroTasks = isBrowser && window.Promise; - -/** -* Create a debounced version of a method, that's asynchronously deferred -* but called in the minimum time possible. -* -* @method -* @memberof Popper.Utils -* @argument {Function} fn -* @returns {Function} -*/ -var debounce = supportsMicroTasks ? microtaskDebounce : taskDebounce; - -/** - * Check if the given variable is a function - * @method - * @memberof Popper.Utils - * @argument {Any} functionToCheck - variable to check - * @returns {Boolean} answer to: is a function? - */ -function isFunction(functionToCheck) { - var getType = {}; - return functionToCheck && getType.toString.call(functionToCheck) === '[object Function]'; -} - -/** - * Get CSS computed property of the given element - * @method - * @memberof Popper.Utils - * @argument {Eement} element - * @argument {String} property - */ -function getStyleComputedProperty(element, property) { - if (element.nodeType !== 1) { - return []; - } - // NOTE: 1 DOM access here - var window = element.ownerDocument.defaultView; - var css = window.getComputedStyle(element, null); - return property ? css[property] : css; -} - -/** - * Returns the parentNode or the host of the element - * @method - * @memberof Popper.Utils - * @argument {Element} element - * @returns {Element} parent - */ -function getParentNode(element) { - if (element.nodeName === 'HTML') { - return element; - } - return element.parentNode || element.host; -} - -/** - * Returns the scrolling parent of the given element - * @method - * @memberof Popper.Utils - * @argument {Element} element - * @returns {Element} scroll parent - */ -function getScrollParent(element) { - // Return body, `getScroll` will take care to get the correct `scrollTop` from it - if (!element) { - return document.body; - } - - switch (element.nodeName) { - case 'HTML': - case 'BODY': - return element.ownerDocument.body; - case '#document': - return element.body; - } - - // Firefox want us to check `-x` and `-y` variations as well - - var _getStyleComputedProp = getStyleComputedProperty(element), - overflow = _getStyleComputedProp.overflow, - overflowX = _getStyleComputedProp.overflowX, - overflowY = _getStyleComputedProp.overflowY; - - if (/(auto|scroll|overlay)/.test(overflow + overflowY + overflowX)) { - return element; - } - - return getScrollParent(getParentNode(element)); -} - -/** - * Returns the reference node of the reference object, or the reference object itself. - * @method - * @memberof Popper.Utils - * @param {Element|Object} reference - the reference element (the popper will be relative to this) - * @returns {Element} parent - */ -function getReferenceNode(reference) { - return reference && reference.referenceNode ? reference.referenceNode : reference; -} - -var isIE11 = isBrowser && !!(window.MSInputMethodContext && document.documentMode); -var isIE10 = isBrowser && /MSIE 10/.test(navigator.userAgent); - -/** - * Determines if the browser is Internet Explorer - * @method - * @memberof Popper.Utils - * @param {Number} version to check - * @returns {Boolean} isIE - */ -function isIE(version) { - if (version === 11) { - return isIE11; - } - if (version === 10) { - return isIE10; - } - return isIE11 || isIE10; -} - -/** - * Returns the offset parent of the given element - * @method - * @memberof Popper.Utils - * @argument {Element} element - * @returns {Element} offset parent - */ -function getOffsetParent(element) { - if (!element) { - return document.documentElement; - } - - var noOffsetParent = isIE(10) ? document.body : null; - - // NOTE: 1 DOM access here - var offsetParent = element.offsetParent || null; - // Skip hidden elements which don't have an offsetParent - while (offsetParent === noOffsetParent && element.nextElementSibling) { - offsetParent = (element = element.nextElementSibling).offsetParent; - } - - var nodeName = offsetParent && offsetParent.nodeName; - - if (!nodeName || nodeName === 'BODY' || nodeName === 'HTML') { - return element ? element.ownerDocument.documentElement : document.documentElement; - } - - // .offsetParent will return the closest TH, TD or TABLE in case - // no offsetParent is present, I hate this job... - if (['TH', 'TD', 'TABLE'].indexOf(offsetParent.nodeName) !== -1 && getStyleComputedProperty(offsetParent, 'position') === 'static') { - return getOffsetParent(offsetParent); - } - - return offsetParent; -} - -function isOffsetContainer(element) { - var nodeName = element.nodeName; - - if (nodeName === 'BODY') { - return false; - } - return nodeName === 'HTML' || getOffsetParent(element.firstElementChild) === element; -} - -/** - * Finds the root node (document, shadowDOM root) of the given element - * @method - * @memberof Popper.Utils - * @argument {Element} node - * @returns {Element} root node - */ -function getRoot(node) { - if (node.parentNode !== null) { - return getRoot(node.parentNode); - } - - return node; -} - -/** - * Finds the offset parent common to the two provided nodes - * @method - * @memberof Popper.Utils - * @argument {Element} element1 - * @argument {Element} element2 - * @returns {Element} common offset parent - */ -function findCommonOffsetParent(element1, element2) { - // This check is needed to avoid errors in case one of the elements isn't defined for any reason - if (!element1 || !element1.nodeType || !element2 || !element2.nodeType) { - return document.documentElement; - } - - // Here we make sure to give as "start" the element that comes first in the DOM - var order = element1.compareDocumentPosition(element2) & Node.DOCUMENT_POSITION_FOLLOWING; - var start = order ? element1 : element2; - var end = order ? element2 : element1; - - // Get common ancestor container - var range = document.createRange(); - range.setStart(start, 0); - range.setEnd(end, 0); - var commonAncestorContainer = range.commonAncestorContainer; - - // Both nodes are inside #document - - if (element1 !== commonAncestorContainer && element2 !== commonAncestorContainer || start.contains(end)) { - if (isOffsetContainer(commonAncestorContainer)) { - return commonAncestorContainer; - } - - return getOffsetParent(commonAncestorContainer); - } - - // one of the nodes is inside shadowDOM, find which one - var element1root = getRoot(element1); - if (element1root.host) { - return findCommonOffsetParent(element1root.host, element2); - } else { - return findCommonOffsetParent(element1, getRoot(element2).host); - } -} - -/** - * Gets the scroll value of the given element in the given side (top and left) - * @method - * @memberof Popper.Utils - * @argument {Element} element - * @argument {String} side `top` or `left` - * @returns {number} amount of scrolled pixels - */ -function getScroll(element) { - var side = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'top'; - - var upperSide = side === 'top' ? 'scrollTop' : 'scrollLeft'; - var nodeName = element.nodeName; - - if (nodeName === 'BODY' || nodeName === 'HTML') { - var html = element.ownerDocument.documentElement; - var scrollingElement = element.ownerDocument.scrollingElement || html; - return scrollingElement[upperSide]; - } - - return element[upperSide]; -} - -/* - * Sum or subtract the element scroll values (left and top) from a given rect object - * @method - * @memberof Popper.Utils - * @param {Object} rect - Rect object you want to change - * @param {HTMLElement} element - The element from the function reads the scroll values - * @param {Boolean} subtract - set to true if you want to subtract the scroll values - * @return {Object} rect - The modifier rect object - */ -function includeScroll(rect, element) { - var subtract = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; - - var scrollTop = getScroll(element, 'top'); - var scrollLeft = getScroll(element, 'left'); - var modifier = subtract ? -1 : 1; - rect.top += scrollTop * modifier; - rect.bottom += scrollTop * modifier; - rect.left += scrollLeft * modifier; - rect.right += scrollLeft * modifier; - return rect; -} - -/* - * Helper to detect borders of a given element - * @method - * @memberof Popper.Utils - * @param {CSSStyleDeclaration} styles - * Result of `getStyleComputedProperty` on the given element - * @param {String} axis - `x` or `y` - * @return {number} borders - The borders size of the given axis - */ - -function getBordersSize(styles, axis) { - var sideA = axis === 'x' ? 'Left' : 'Top'; - var sideB = sideA === 'Left' ? 'Right' : 'Bottom'; - - return parseFloat(styles['border' + sideA + 'Width']) + parseFloat(styles['border' + sideB + 'Width']); -} - -function getSize(axis, body, html, computedStyle) { - return Math.max(body['offset' + axis], body['scroll' + axis], html['client' + axis], html['offset' + axis], html['scroll' + axis], isIE(10) ? parseInt(html['offset' + axis]) + parseInt(computedStyle['margin' + (axis === 'Height' ? 'Top' : 'Left')]) + parseInt(computedStyle['margin' + (axis === 'Height' ? 'Bottom' : 'Right')]) : 0); -} - -function getWindowSizes(document) { - var body = document.body; - var html = document.documentElement; - var computedStyle = isIE(10) && getComputedStyle(html); - - return { - height: getSize('Height', body, html, computedStyle), - width: getSize('Width', body, html, computedStyle) - }; -} - -var classCallCheck = function (instance, Constructor) { - if (!(instance instanceof Constructor)) { - throw new TypeError("Cannot call a class as a function"); - } -}; - -var createClass = function () { - function defineProperties(target, props) { - for (var i = 0; i < props.length; i++) { - var descriptor = props[i]; - descriptor.enumerable = descriptor.enumerable || false; - descriptor.configurable = true; - if ("value" in descriptor) descriptor.writable = true; - Object.defineProperty(target, descriptor.key, descriptor); - } - } - - return function (Constructor, protoProps, staticProps) { - if (protoProps) defineProperties(Constructor.prototype, protoProps); - if (staticProps) defineProperties(Constructor, staticProps); - return Constructor; - }; -}(); - - - - - -var defineProperty = function (obj, key, value) { - if (key in obj) { - Object.defineProperty(obj, key, { - value: value, - enumerable: true, - configurable: true, - writable: true - }); - } else { - obj[key] = value; - } - - return obj; -}; - -var _extends = Object.assign || function (target) { - for (var i = 1; i < arguments.length; i++) { - var source = arguments[i]; - - for (var key in source) { - if (Object.prototype.hasOwnProperty.call(source, key)) { - target[key] = source[key]; - } - } - } - - return target; -}; - -/** - * Given element offsets, generate an output similar to getBoundingClientRect - * @method - * @memberof Popper.Utils - * @argument {Object} offsets - * @returns {Object} ClientRect like output - */ -function getClientRect(offsets) { - return _extends({}, offsets, { - right: offsets.left + offsets.width, - bottom: offsets.top + offsets.height - }); -} - -/** - * Get bounding client rect of given element - * @method - * @memberof Popper.Utils - * @param {HTMLElement} element - * @return {Object} client rect - */ -function getBoundingClientRect(element) { - var rect = {}; - - // IE10 10 FIX: Please, don't ask, the element isn't - // considered in DOM in some circumstances... - // This isn't reproducible in IE10 compatibility mode of IE11 - try { - if (isIE(10)) { - rect = element.getBoundingClientRect(); - var scrollTop = getScroll(element, 'top'); - var scrollLeft = getScroll(element, 'left'); - rect.top += scrollTop; - rect.left += scrollLeft; - rect.bottom += scrollTop; - rect.right += scrollLeft; - } else { - rect = element.getBoundingClientRect(); - } - } catch (e) {} - - var result = { - left: rect.left, - top: rect.top, - width: rect.right - rect.left, - height: rect.bottom - rect.top - }; - - // subtract scrollbar size from sizes - var sizes = element.nodeName === 'HTML' ? getWindowSizes(element.ownerDocument) : {}; - var width = sizes.width || element.clientWidth || result.width; - var height = sizes.height || element.clientHeight || result.height; - - var horizScrollbar = element.offsetWidth - width; - var vertScrollbar = element.offsetHeight - height; - - // if an hypothetical scrollbar is detected, we must be sure it's not a `border` - // we make this check conditional for performance reasons - if (horizScrollbar || vertScrollbar) { - var styles = getStyleComputedProperty(element); - horizScrollbar -= getBordersSize(styles, 'x'); - vertScrollbar -= getBordersSize(styles, 'y'); - - result.width -= horizScrollbar; - result.height -= vertScrollbar; - } - - return getClientRect(result); -} - -function getOffsetRectRelativeToArbitraryNode(children, parent) { - var fixedPosition = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; - - var isIE10 = isIE(10); - var isHTML = parent.nodeName === 'HTML'; - var childrenRect = getBoundingClientRect(children); - var parentRect = getBoundingClientRect(parent); - var scrollParent = getScrollParent(children); - - var styles = getStyleComputedProperty(parent); - var borderTopWidth = parseFloat(styles.borderTopWidth); - var borderLeftWidth = parseFloat(styles.borderLeftWidth); - - // In cases where the parent is fixed, we must ignore negative scroll in offset calc - if (fixedPosition && isHTML) { - parentRect.top = Math.max(parentRect.top, 0); - parentRect.left = Math.max(parentRect.left, 0); - } - var offsets = getClientRect({ - top: childrenRect.top - parentRect.top - borderTopWidth, - left: childrenRect.left - parentRect.left - borderLeftWidth, - width: childrenRect.width, - height: childrenRect.height - }); - offsets.marginTop = 0; - offsets.marginLeft = 0; - - // Subtract margins of documentElement in case it's being used as parent - // we do this only on HTML because it's the only element that behaves - // differently when margins are applied to it. The margins are included in - // the box of the documentElement, in the other cases not. - if (!isIE10 && isHTML) { - var marginTop = parseFloat(styles.marginTop); - var marginLeft = parseFloat(styles.marginLeft); - - offsets.top -= borderTopWidth - marginTop; - offsets.bottom -= borderTopWidth - marginTop; - offsets.left -= borderLeftWidth - marginLeft; - offsets.right -= borderLeftWidth - marginLeft; - - // Attach marginTop and marginLeft because in some circumstances we may need them - offsets.marginTop = marginTop; - offsets.marginLeft = marginLeft; - } - - if (isIE10 && !fixedPosition ? parent.contains(scrollParent) : parent === scrollParent && scrollParent.nodeName !== 'BODY') { - offsets = includeScroll(offsets, parent); - } - - return offsets; -} - -function getViewportOffsetRectRelativeToArtbitraryNode(element) { - var excludeScroll = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; - - var html = element.ownerDocument.documentElement; - var relativeOffset = getOffsetRectRelativeToArbitraryNode(element, html); - var width = Math.max(html.clientWidth, window.innerWidth || 0); - var height = Math.max(html.clientHeight, window.innerHeight || 0); - - var scrollTop = !excludeScroll ? getScroll(html) : 0; - var scrollLeft = !excludeScroll ? getScroll(html, 'left') : 0; - - var offset = { - top: scrollTop - relativeOffset.top + relativeOffset.marginTop, - left: scrollLeft - relativeOffset.left + relativeOffset.marginLeft, - width: width, - height: height - }; - - return getClientRect(offset); -} - -/** - * Check if the given element is fixed or is inside a fixed parent - * @method - * @memberof Popper.Utils - * @argument {Element} element - * @argument {Element} customContainer - * @returns {Boolean} answer to "isFixed?" - */ -function isFixed(element) { - var nodeName = element.nodeName; - if (nodeName === 'BODY' || nodeName === 'HTML') { - return false; - } - if (getStyleComputedProperty(element, 'position') === 'fixed') { - return true; - } - var parentNode = getParentNode(element); - if (!parentNode) { - return false; - } - return isFixed(parentNode); -} - -/** - * Finds the first parent of an element that has a transformed property defined - * @method - * @memberof Popper.Utils - * @argument {Element} element - * @returns {Element} first transformed parent or documentElement - */ - -function getFixedPositionOffsetParent(element) { - // This check is needed to avoid errors in case one of the elements isn't defined for any reason - if (!element || !element.parentElement || isIE()) { - return document.documentElement; - } - var el = element.parentElement; - while (el && getStyleComputedProperty(el, 'transform') === 'none') { - el = el.parentElement; - } - return el || document.documentElement; -} - -/** - * Computed the boundaries limits and return them - * @method - * @memberof Popper.Utils - * @param {HTMLElement} popper - * @param {HTMLElement} reference - * @param {number} padding - * @param {HTMLElement} boundariesElement - Element used to define the boundaries - * @param {Boolean} fixedPosition - Is in fixed position mode - * @returns {Object} Coordinates of the boundaries - */ -function getBoundaries(popper, reference, padding, boundariesElement) { - var fixedPosition = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false; - - // NOTE: 1 DOM access here - - var boundaries = { top: 0, left: 0 }; - var offsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, getReferenceNode(reference)); - - // Handle viewport case - if (boundariesElement === 'viewport') { - boundaries = getViewportOffsetRectRelativeToArtbitraryNode(offsetParent, fixedPosition); - } else { - // Handle other cases based on DOM element used as boundaries - var boundariesNode = void 0; - if (boundariesElement === 'scrollParent') { - boundariesNode = getScrollParent(getParentNode(reference)); - if (boundariesNode.nodeName === 'BODY') { - boundariesNode = popper.ownerDocument.documentElement; - } - } else if (boundariesElement === 'window') { - boundariesNode = popper.ownerDocument.documentElement; - } else { - boundariesNode = boundariesElement; - } - - var offsets = getOffsetRectRelativeToArbitraryNode(boundariesNode, offsetParent, fixedPosition); - - // In case of HTML, we need a different computation - if (boundariesNode.nodeName === 'HTML' && !isFixed(offsetParent)) { - var _getWindowSizes = getWindowSizes(popper.ownerDocument), - height = _getWindowSizes.height, - width = _getWindowSizes.width; - - boundaries.top += offsets.top - offsets.marginTop; - boundaries.bottom = height + offsets.top; - boundaries.left += offsets.left - offsets.marginLeft; - boundaries.right = width + offsets.left; - } else { - // for all the other DOM elements, this one is good - boundaries = offsets; - } - } - - // Add paddings - padding = padding || 0; - var isPaddingNumber = typeof padding === 'number'; - boundaries.left += isPaddingNumber ? padding : padding.left || 0; - boundaries.top += isPaddingNumber ? padding : padding.top || 0; - boundaries.right -= isPaddingNumber ? padding : padding.right || 0; - boundaries.bottom -= isPaddingNumber ? padding : padding.bottom || 0; - - return boundaries; -} - -function getArea(_ref) { - var width = _ref.width, - height = _ref.height; - - return width * height; -} - -/** - * Utility used to transform the `auto` placement to the placement with more - * available space. - * @method - * @memberof Popper.Utils - * @argument {Object} data - The data object generated by update method - * @argument {Object} options - Modifiers configuration and options - * @returns {Object} The data object, properly modified - */ -function computeAutoPlacement(placement, refRect, popper, reference, boundariesElement) { - var padding = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 0; - - if (placement.indexOf('auto') === -1) { - return placement; - } - - var boundaries = getBoundaries(popper, reference, padding, boundariesElement); - - var rects = { - top: { - width: boundaries.width, - height: refRect.top - boundaries.top - }, - right: { - width: boundaries.right - refRect.right, - height: boundaries.height - }, - bottom: { - width: boundaries.width, - height: boundaries.bottom - refRect.bottom - }, - left: { - width: refRect.left - boundaries.left, - height: boundaries.height - } - }; - - var sortedAreas = Object.keys(rects).map(function (key) { - return _extends({ - key: key - }, rects[key], { - area: getArea(rects[key]) - }); - }).sort(function (a, b) { - return b.area - a.area; - }); - - var filteredAreas = sortedAreas.filter(function (_ref2) { - var width = _ref2.width, - height = _ref2.height; - return width >= popper.clientWidth && height >= popper.clientHeight; - }); - - var computedPlacement = filteredAreas.length > 0 ? filteredAreas[0].key : sortedAreas[0].key; - - var variation = placement.split('-')[1]; - - return computedPlacement + (variation ? '-' + variation : ''); -} - -/** - * Get offsets to the reference element - * @method - * @memberof Popper.Utils - * @param {Object} state - * @param {Element} popper - the popper element - * @param {Element} reference - the reference element (the popper will be relative to this) - * @param {Element} fixedPosition - is in fixed position mode - * @returns {Object} An object containing the offsets which will be applied to the popper - */ -function getReferenceOffsets(state, popper, reference) { - var fixedPosition = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null; - - var commonOffsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, getReferenceNode(reference)); - return getOffsetRectRelativeToArbitraryNode(reference, commonOffsetParent, fixedPosition); -} - -/** - * Get the outer sizes of the given element (offset size + margins) - * @method - * @memberof Popper.Utils - * @argument {Element} element - * @returns {Object} object containing width and height properties - */ -function getOuterSizes(element) { - var window = element.ownerDocument.defaultView; - var styles = window.getComputedStyle(element); - var x = parseFloat(styles.marginTop || 0) + parseFloat(styles.marginBottom || 0); - var y = parseFloat(styles.marginLeft || 0) + parseFloat(styles.marginRight || 0); - var result = { - width: element.offsetWidth + y, - height: element.offsetHeight + x - }; - return result; -} - -/** - * Get the opposite placement of the given one - * @method - * @memberof Popper.Utils - * @argument {String} placement - * @returns {String} flipped placement - */ -function getOppositePlacement(placement) { - var hash = { left: 'right', right: 'left', bottom: 'top', top: 'bottom' }; - return placement.replace(/left|right|bottom|top/g, function (matched) { - return hash[matched]; - }); -} - -/** - * Get offsets to the popper - * @method - * @memberof Popper.Utils - * @param {Object} position - CSS position the Popper will get applied - * @param {HTMLElement} popper - the popper element - * @param {Object} referenceOffsets - the reference offsets (the popper will be relative to this) - * @param {String} placement - one of the valid placement options - * @returns {Object} popperOffsets - An object containing the offsets which will be applied to the popper - */ -function getPopperOffsets(popper, referenceOffsets, placement) { - placement = placement.split('-')[0]; - - // Get popper node sizes - var popperRect = getOuterSizes(popper); - - // Add position, width and height to our offsets object - var popperOffsets = { - width: popperRect.width, - height: popperRect.height - }; - - // depending by the popper placement we have to compute its offsets slightly differently - var isHoriz = ['right', 'left'].indexOf(placement) !== -1; - var mainSide = isHoriz ? 'top' : 'left'; - var secondarySide = isHoriz ? 'left' : 'top'; - var measurement = isHoriz ? 'height' : 'width'; - var secondaryMeasurement = !isHoriz ? 'height' : 'width'; - - popperOffsets[mainSide] = referenceOffsets[mainSide] + referenceOffsets[measurement] / 2 - popperRect[measurement] / 2; - if (placement === secondarySide) { - popperOffsets[secondarySide] = referenceOffsets[secondarySide] - popperRect[secondaryMeasurement]; - } else { - popperOffsets[secondarySide] = referenceOffsets[getOppositePlacement(secondarySide)]; - } - - return popperOffsets; -} - -/** - * Mimics the `find` method of Array - * @method - * @memberof Popper.Utils - * @argument {Array} arr - * @argument prop - * @argument value - * @returns index or -1 - */ -function find(arr, check) { - // use native find if supported - if (Array.prototype.find) { - return arr.find(check); - } - - // use `filter` to obtain the same behavior of `find` - return arr.filter(check)[0]; -} - -/** - * Return the index of the matching object - * @method - * @memberof Popper.Utils - * @argument {Array} arr - * @argument prop - * @argument value - * @returns index or -1 - */ -function findIndex(arr, prop, value) { - // use native findIndex if supported - if (Array.prototype.findIndex) { - return arr.findIndex(function (cur) { - return cur[prop] === value; - }); - } - - // use `find` + `indexOf` if `findIndex` isn't supported - var match = find(arr, function (obj) { - return obj[prop] === value; - }); - return arr.indexOf(match); -} - -/** - * Loop trough the list of modifiers and run them in order, - * each of them will then edit the data object. - * @method - * @memberof Popper.Utils - * @param {dataObject} data - * @param {Array} modifiers - * @param {String} ends - Optional modifier name used as stopper - * @returns {dataObject} - */ -function runModifiers(modifiers, data, ends) { - var modifiersToRun = ends === undefined ? modifiers : modifiers.slice(0, findIndex(modifiers, 'name', ends)); - - modifiersToRun.forEach(function (modifier) { - if (modifier['function']) { - // eslint-disable-line dot-notation - console.warn('`modifier.function` is deprecated, use `modifier.fn`!'); - } - var fn = modifier['function'] || modifier.fn; // eslint-disable-line dot-notation - if (modifier.enabled && isFunction(fn)) { - // Add properties to offsets to make them a complete clientRect object - // we do this before each modifier to make sure the previous one doesn't - // mess with these values - data.offsets.popper = getClientRect(data.offsets.popper); - data.offsets.reference = getClientRect(data.offsets.reference); - - data = fn(data, modifier); - } - }); - - return data; -} - -/** - * Updates the position of the popper, computing the new offsets and applying - * the new style.
- * Prefer `scheduleUpdate` over `update` because of performance reasons. - * @method - * @memberof Popper - */ -function update() { - // if popper is destroyed, don't perform any further update - if (this.state.isDestroyed) { - return; - } - - var data = { - instance: this, - styles: {}, - arrowStyles: {}, - attributes: {}, - flipped: false, - offsets: {} - }; - - // compute reference element offsets - data.offsets.reference = getReferenceOffsets(this.state, this.popper, this.reference, this.options.positionFixed); - - // compute auto placement, store placement inside the data object, - // modifiers will be able to edit `placement` if needed - // and refer to originalPlacement to know the original value - data.placement = computeAutoPlacement(this.options.placement, data.offsets.reference, this.popper, this.reference, this.options.modifiers.flip.boundariesElement, this.options.modifiers.flip.padding); - - // store the computed placement inside `originalPlacement` - data.originalPlacement = data.placement; - - data.positionFixed = this.options.positionFixed; - - // compute the popper offsets - data.offsets.popper = getPopperOffsets(this.popper, data.offsets.reference, data.placement); - - data.offsets.popper.position = this.options.positionFixed ? 'fixed' : 'absolute'; - - // run the modifiers - data = runModifiers(this.modifiers, data); - - // the first `update` will call `onCreate` callback - // the other ones will call `onUpdate` callback - if (!this.state.isCreated) { - this.state.isCreated = true; - this.options.onCreate(data); - } else { - this.options.onUpdate(data); - } -} - -/** - * Helper used to know if the given modifier is enabled. - * @method - * @memberof Popper.Utils - * @returns {Boolean} - */ -function isModifierEnabled(modifiers, modifierName) { - return modifiers.some(function (_ref) { - var name = _ref.name, - enabled = _ref.enabled; - return enabled && name === modifierName; - }); -} - -/** - * Get the prefixed supported property name - * @method - * @memberof Popper.Utils - * @argument {String} property (camelCase) - * @returns {String} prefixed property (camelCase or PascalCase, depending on the vendor prefix) - */ -function getSupportedPropertyName(property) { - var prefixes = [false, 'ms', 'Webkit', 'Moz', 'O']; - var upperProp = property.charAt(0).toUpperCase() + property.slice(1); - - for (var i = 0; i < prefixes.length; i++) { - var prefix = prefixes[i]; - var toCheck = prefix ? '' + prefix + upperProp : property; - if (typeof document.body.style[toCheck] !== 'undefined') { - return toCheck; - } - } - return null; -} - -/** - * Destroys the popper. - * @method - * @memberof Popper - */ -function destroy() { - this.state.isDestroyed = true; - - // touch DOM only if `applyStyle` modifier is enabled - if (isModifierEnabled(this.modifiers, 'applyStyle')) { - this.popper.removeAttribute('x-placement'); - this.popper.style.position = ''; - this.popper.style.top = ''; - this.popper.style.left = ''; - this.popper.style.right = ''; - this.popper.style.bottom = ''; - this.popper.style.willChange = ''; - this.popper.style[getSupportedPropertyName('transform')] = ''; - } - - this.disableEventListeners(); - - // remove the popper if user explicitly asked for the deletion on destroy - // do not use `remove` because IE11 doesn't support it - if (this.options.removeOnDestroy) { - this.popper.parentNode.removeChild(this.popper); - } - return this; -} - -/** - * Get the window associated with the element - * @argument {Element} element - * @returns {Window} - */ -function getWindow(element) { - var ownerDocument = element.ownerDocument; - return ownerDocument ? ownerDocument.defaultView : window; -} - -function attachToScrollParents(scrollParent, event, callback, scrollParents) { - var isBody = scrollParent.nodeName === 'BODY'; - var target = isBody ? scrollParent.ownerDocument.defaultView : scrollParent; - target.addEventListener(event, callback, { passive: true }); - - if (!isBody) { - attachToScrollParents(getScrollParent(target.parentNode), event, callback, scrollParents); - } - scrollParents.push(target); -} - -/** - * Setup needed event listeners used to update the popper position - * @method - * @memberof Popper.Utils - * @private - */ -function setupEventListeners(reference, options, state, updateBound) { - // Resize event listener on window - state.updateBound = updateBound; - getWindow(reference).addEventListener('resize', state.updateBound, { passive: true }); - - // Scroll event listener on scroll parents - var scrollElement = getScrollParent(reference); - attachToScrollParents(scrollElement, 'scroll', state.updateBound, state.scrollParents); - state.scrollElement = scrollElement; - state.eventsEnabled = true; - - return state; -} - -/** - * It will add resize/scroll events and start recalculating - * position of the popper element when they are triggered. - * @method - * @memberof Popper - */ -function enableEventListeners() { - if (!this.state.eventsEnabled) { - this.state = setupEventListeners(this.reference, this.options, this.state, this.scheduleUpdate); - } -} - -/** - * Remove event listeners used to update the popper position - * @method - * @memberof Popper.Utils - * @private - */ -function removeEventListeners(reference, state) { - // Remove resize event listener on window - getWindow(reference).removeEventListener('resize', state.updateBound); - - // Remove scroll event listener on scroll parents - state.scrollParents.forEach(function (target) { - target.removeEventListener('scroll', state.updateBound); - }); - - // Reset state - state.updateBound = null; - state.scrollParents = []; - state.scrollElement = null; - state.eventsEnabled = false; - return state; -} - -/** - * It will remove resize/scroll events and won't recalculate popper position - * when they are triggered. It also won't trigger `onUpdate` callback anymore, - * unless you call `update` method manually. - * @method - * @memberof Popper - */ -function disableEventListeners() { - if (this.state.eventsEnabled) { - cancelAnimationFrame(this.scheduleUpdate); - this.state = removeEventListeners(this.reference, this.state); - } -} - -/** - * Tells if a given input is a number - * @method - * @memberof Popper.Utils - * @param {*} input to check - * @return {Boolean} - */ -function isNumeric(n) { - return n !== '' && !isNaN(parseFloat(n)) && isFinite(n); -} - -/** - * Set the style to the given popper - * @method - * @memberof Popper.Utils - * @argument {Element} element - Element to apply the style to - * @argument {Object} styles - * Object with a list of properties and values which will be applied to the element - */ -function setStyles(element, styles) { - Object.keys(styles).forEach(function (prop) { - var unit = ''; - // add unit if the value is numeric and is one of the following - if (['width', 'height', 'top', 'right', 'bottom', 'left'].indexOf(prop) !== -1 && isNumeric(styles[prop])) { - unit = 'px'; - } - element.style[prop] = styles[prop] + unit; - }); -} - -/** - * Set the attributes to the given popper - * @method - * @memberof Popper.Utils - * @argument {Element} element - Element to apply the attributes to - * @argument {Object} styles - * Object with a list of properties and values which will be applied to the element - */ -function setAttributes(element, attributes) { - Object.keys(attributes).forEach(function (prop) { - var value = attributes[prop]; - if (value !== false) { - element.setAttribute(prop, attributes[prop]); - } else { - element.removeAttribute(prop); - } - }); -} - -/** - * @function - * @memberof Modifiers - * @argument {Object} data - The data object generated by `update` method - * @argument {Object} data.styles - List of style properties - values to apply to popper element - * @argument {Object} data.attributes - List of attribute properties - values to apply to popper element - * @argument {Object} options - Modifiers configuration and options - * @returns {Object} The same data object - */ -function applyStyle(data) { - // any property present in `data.styles` will be applied to the popper, - // in this way we can make the 3rd party modifiers add custom styles to it - // Be aware, modifiers could override the properties defined in the previous - // lines of this modifier! - setStyles(data.instance.popper, data.styles); - - // any property present in `data.attributes` will be applied to the popper, - // they will be set as HTML attributes of the element - setAttributes(data.instance.popper, data.attributes); - - // if arrowElement is defined and arrowStyles has some properties - if (data.arrowElement && Object.keys(data.arrowStyles).length) { - setStyles(data.arrowElement, data.arrowStyles); - } - - return data; -} - -/** - * Set the x-placement attribute before everything else because it could be used - * to add margins to the popper margins needs to be calculated to get the - * correct popper offsets. - * @method - * @memberof Popper.modifiers - * @param {HTMLElement} reference - The reference element used to position the popper - * @param {HTMLElement} popper - The HTML element used as popper - * @param {Object} options - Popper.js options - */ -function applyStyleOnLoad(reference, popper, options, modifierOptions, state) { - // compute reference element offsets - var referenceOffsets = getReferenceOffsets(state, popper, reference, options.positionFixed); - - // compute auto placement, store placement inside the data object, - // modifiers will be able to edit `placement` if needed - // and refer to originalPlacement to know the original value - var placement = computeAutoPlacement(options.placement, referenceOffsets, popper, reference, options.modifiers.flip.boundariesElement, options.modifiers.flip.padding); - - popper.setAttribute('x-placement', placement); - - // Apply `position` to popper before anything else because - // without the position applied we can't guarantee correct computations - setStyles(popper, { position: options.positionFixed ? 'fixed' : 'absolute' }); - - return options; -} - -/** - * @function - * @memberof Popper.Utils - * @argument {Object} data - The data object generated by `update` method - * @argument {Boolean} shouldRound - If the offsets should be rounded at all - * @returns {Object} The popper's position offsets rounded - * - * The tale of pixel-perfect positioning. It's still not 100% perfect, but as - * good as it can be within reason. - * Discussion here: https://github.com/FezVrasta/popper.js/pull/715 - * - * Low DPI screens cause a popper to be blurry if not using full pixels (Safari - * as well on High DPI screens). - * - * Firefox prefers no rounding for positioning and does not have blurriness on - * high DPI screens. - * - * Only horizontal placement and left/right values need to be considered. - */ -function getRoundedOffsets(data, shouldRound) { - var _data$offsets = data.offsets, - popper = _data$offsets.popper, - reference = _data$offsets.reference; - var round = Math.round, - floor = Math.floor; - - var noRound = function noRound(v) { - return v; - }; - - var referenceWidth = round(reference.width); - var popperWidth = round(popper.width); - - var isVertical = ['left', 'right'].indexOf(data.placement) !== -1; - var isVariation = data.placement.indexOf('-') !== -1; - var sameWidthParity = referenceWidth % 2 === popperWidth % 2; - var bothOddWidth = referenceWidth % 2 === 1 && popperWidth % 2 === 1; - - var horizontalToInteger = !shouldRound ? noRound : isVertical || isVariation || sameWidthParity ? round : floor; - var verticalToInteger = !shouldRound ? noRound : round; - - return { - left: horizontalToInteger(bothOddWidth && !isVariation && shouldRound ? popper.left - 1 : popper.left), - top: verticalToInteger(popper.top), - bottom: verticalToInteger(popper.bottom), - right: horizontalToInteger(popper.right) - }; -} - -var isFirefox = isBrowser && /Firefox/i.test(navigator.userAgent); - -/** - * @function - * @memberof Modifiers - * @argument {Object} data - The data object generated by `update` method - * @argument {Object} options - Modifiers configuration and options - * @returns {Object} The data object, properly modified - */ -function computeStyle(data, options) { - var x = options.x, - y = options.y; - var popper = data.offsets.popper; - - // Remove this legacy support in Popper.js v2 - - var legacyGpuAccelerationOption = find(data.instance.modifiers, function (modifier) { - return modifier.name === 'applyStyle'; - }).gpuAcceleration; - if (legacyGpuAccelerationOption !== undefined) { - console.warn('WARNING: `gpuAcceleration` option moved to `computeStyle` modifier and will not be supported in future versions of Popper.js!'); - } - var gpuAcceleration = legacyGpuAccelerationOption !== undefined ? legacyGpuAccelerationOption : options.gpuAcceleration; - - var offsetParent = getOffsetParent(data.instance.popper); - var offsetParentRect = getBoundingClientRect(offsetParent); - - // Styles - var styles = { - position: popper.position - }; - - var offsets = getRoundedOffsets(data, window.devicePixelRatio < 2 || !isFirefox); - - var sideA = x === 'bottom' ? 'top' : 'bottom'; - var sideB = y === 'right' ? 'left' : 'right'; - - // if gpuAcceleration is set to `true` and transform is supported, - // we use `translate3d` to apply the position to the popper we - // automatically use the supported prefixed version if needed - var prefixedProperty = getSupportedPropertyName('transform'); - - // now, let's make a step back and look at this code closely (wtf?) - // If the content of the popper grows once it's been positioned, it - // may happen that the popper gets misplaced because of the new content - // overflowing its reference element - // To avoid this problem, we provide two options (x and y), which allow - // the consumer to define the offset origin. - // If we position a popper on top of a reference element, we can set - // `x` to `top` to make the popper grow towards its top instead of - // its bottom. - var left = void 0, - top = void 0; - if (sideA === 'bottom') { - // when offsetParent is the positioning is relative to the bottom of the screen (excluding the scrollbar) - // and not the bottom of the html element - if (offsetParent.nodeName === 'HTML') { - top = -offsetParent.clientHeight + offsets.bottom; - } else { - top = -offsetParentRect.height + offsets.bottom; - } - } else { - top = offsets.top; - } - if (sideB === 'right') { - if (offsetParent.nodeName === 'HTML') { - left = -offsetParent.clientWidth + offsets.right; - } else { - left = -offsetParentRect.width + offsets.right; - } - } else { - left = offsets.left; - } - if (gpuAcceleration && prefixedProperty) { - styles[prefixedProperty] = 'translate3d(' + left + 'px, ' + top + 'px, 0)'; - styles[sideA] = 0; - styles[sideB] = 0; - styles.willChange = 'transform'; - } else { - // othwerise, we use the standard `top`, `left`, `bottom` and `right` properties - var invertTop = sideA === 'bottom' ? -1 : 1; - var invertLeft = sideB === 'right' ? -1 : 1; - styles[sideA] = top * invertTop; - styles[sideB] = left * invertLeft; - styles.willChange = sideA + ', ' + sideB; - } - - // Attributes - var attributes = { - 'x-placement': data.placement - }; - - // Update `data` attributes, styles and arrowStyles - data.attributes = _extends({}, attributes, data.attributes); - data.styles = _extends({}, styles, data.styles); - data.arrowStyles = _extends({}, data.offsets.arrow, data.arrowStyles); - - return data; -} - -/** - * Helper used to know if the given modifier depends from another one.
- * It checks if the needed modifier is listed and enabled. - * @method - * @memberof Popper.Utils - * @param {Array} modifiers - list of modifiers - * @param {String} requestingName - name of requesting modifier - * @param {String} requestedName - name of requested modifier - * @returns {Boolean} - */ -function isModifierRequired(modifiers, requestingName, requestedName) { - var requesting = find(modifiers, function (_ref) { - var name = _ref.name; - return name === requestingName; - }); - - var isRequired = !!requesting && modifiers.some(function (modifier) { - return modifier.name === requestedName && modifier.enabled && modifier.order < requesting.order; - }); - - if (!isRequired) { - var _requesting = '`' + requestingName + '`'; - var requested = '`' + requestedName + '`'; - console.warn(requested + ' modifier is required by ' + _requesting + ' modifier in order to work, be sure to include it before ' + _requesting + '!'); - } - return isRequired; -} - -/** - * @function - * @memberof Modifiers - * @argument {Object} data - The data object generated by update method - * @argument {Object} options - Modifiers configuration and options - * @returns {Object} The data object, properly modified - */ -function arrow(data, options) { - var _data$offsets$arrow; - - // arrow depends on keepTogether in order to work - if (!isModifierRequired(data.instance.modifiers, 'arrow', 'keepTogether')) { - return data; - } - - var arrowElement = options.element; - - // if arrowElement is a string, suppose it's a CSS selector - if (typeof arrowElement === 'string') { - arrowElement = data.instance.popper.querySelector(arrowElement); - - // if arrowElement is not found, don't run the modifier - if (!arrowElement) { - return data; - } - } else { - // if the arrowElement isn't a query selector we must check that the - // provided DOM node is child of its popper node - if (!data.instance.popper.contains(arrowElement)) { - console.warn('WARNING: `arrow.element` must be child of its popper element!'); - return data; - } - } - - var placement = data.placement.split('-')[0]; - var _data$offsets = data.offsets, - popper = _data$offsets.popper, - reference = _data$offsets.reference; - - var isVertical = ['left', 'right'].indexOf(placement) !== -1; - - var len = isVertical ? 'height' : 'width'; - var sideCapitalized = isVertical ? 'Top' : 'Left'; - var side = sideCapitalized.toLowerCase(); - var altSide = isVertical ? 'left' : 'top'; - var opSide = isVertical ? 'bottom' : 'right'; - var arrowElementSize = getOuterSizes(arrowElement)[len]; - - // - // extends keepTogether behavior making sure the popper and its - // reference have enough pixels in conjunction - // - - // top/left side - if (reference[opSide] - arrowElementSize < popper[side]) { - data.offsets.popper[side] -= popper[side] - (reference[opSide] - arrowElementSize); - } - // bottom/right side - if (reference[side] + arrowElementSize > popper[opSide]) { - data.offsets.popper[side] += reference[side] + arrowElementSize - popper[opSide]; - } - data.offsets.popper = getClientRect(data.offsets.popper); - - // compute center of the popper - var center = reference[side] + reference[len] / 2 - arrowElementSize / 2; - - // Compute the sideValue using the updated popper offsets - // take popper margin in account because we don't have this info available - var css = getStyleComputedProperty(data.instance.popper); - var popperMarginSide = parseFloat(css['margin' + sideCapitalized]); - var popperBorderSide = parseFloat(css['border' + sideCapitalized + 'Width']); - var sideValue = center - data.offsets.popper[side] - popperMarginSide - popperBorderSide; - - // prevent arrowElement from being placed not contiguously to its popper - sideValue = Math.max(Math.min(popper[len] - arrowElementSize, sideValue), 0); - - data.arrowElement = arrowElement; - data.offsets.arrow = (_data$offsets$arrow = {}, defineProperty(_data$offsets$arrow, side, Math.round(sideValue)), defineProperty(_data$offsets$arrow, altSide, ''), _data$offsets$arrow); - - return data; -} - -/** - * Get the opposite placement variation of the given one - * @method - * @memberof Popper.Utils - * @argument {String} placement variation - * @returns {String} flipped placement variation - */ -function getOppositeVariation(variation) { - if (variation === 'end') { - return 'start'; - } else if (variation === 'start') { - return 'end'; - } - return variation; -} - -/** - * List of accepted placements to use as values of the `placement` option.
- * Valid placements are: - * - `auto` - * - `top` - * - `right` - * - `bottom` - * - `left` - * - * Each placement can have a variation from this list: - * - `-start` - * - `-end` - * - * Variations are interpreted easily if you think of them as the left to right - * written languages. Horizontally (`top` and `bottom`), `start` is left and `end` - * is right.
- * Vertically (`left` and `right`), `start` is top and `end` is bottom. - * - * Some valid examples are: - * - `top-end` (on top of reference, right aligned) - * - `right-start` (on right of reference, top aligned) - * - `bottom` (on bottom, centered) - * - `auto-end` (on the side with more space available, alignment depends by placement) - * - * @static - * @type {Array} - * @enum {String} - * @readonly - * @method placements - * @memberof Popper - */ -var placements = ['auto-start', 'auto', 'auto-end', 'top-start', 'top', 'top-end', 'right-start', 'right', 'right-end', 'bottom-end', 'bottom', 'bottom-start', 'left-end', 'left', 'left-start']; - -// Get rid of `auto` `auto-start` and `auto-end` -var validPlacements = placements.slice(3); - -/** - * Given an initial placement, returns all the subsequent placements - * clockwise (or counter-clockwise). - * - * @method - * @memberof Popper.Utils - * @argument {String} placement - A valid placement (it accepts variations) - * @argument {Boolean} counter - Set to true to walk the placements counterclockwise - * @returns {Array} placements including their variations - */ -function clockwise(placement) { - var counter = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; - - var index = validPlacements.indexOf(placement); - var arr = validPlacements.slice(index + 1).concat(validPlacements.slice(0, index)); - return counter ? arr.reverse() : arr; -} - -var BEHAVIORS = { - FLIP: 'flip', - CLOCKWISE: 'clockwise', - COUNTERCLOCKWISE: 'counterclockwise' -}; - -/** - * @function - * @memberof Modifiers - * @argument {Object} data - The data object generated by update method - * @argument {Object} options - Modifiers configuration and options - * @returns {Object} The data object, properly modified - */ -function flip(data, options) { - // if `inner` modifier is enabled, we can't use the `flip` modifier - if (isModifierEnabled(data.instance.modifiers, 'inner')) { - return data; - } - - if (data.flipped && data.placement === data.originalPlacement) { - // seems like flip is trying to loop, probably there's not enough space on any of the flippable sides - return data; - } - - var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, options.boundariesElement, data.positionFixed); - - var placement = data.placement.split('-')[0]; - var placementOpposite = getOppositePlacement(placement); - var variation = data.placement.split('-')[1] || ''; - - var flipOrder = []; - - switch (options.behavior) { - case BEHAVIORS.FLIP: - flipOrder = [placement, placementOpposite]; - break; - case BEHAVIORS.CLOCKWISE: - flipOrder = clockwise(placement); - break; - case BEHAVIORS.COUNTERCLOCKWISE: - flipOrder = clockwise(placement, true); - break; - default: - flipOrder = options.behavior; - } - - flipOrder.forEach(function (step, index) { - if (placement !== step || flipOrder.length === index + 1) { - return data; - } - - placement = data.placement.split('-')[0]; - placementOpposite = getOppositePlacement(placement); - - var popperOffsets = data.offsets.popper; - var refOffsets = data.offsets.reference; - - // using floor because the reference offsets may contain decimals we are not going to consider here - var floor = Math.floor; - var overlapsRef = placement === 'left' && floor(popperOffsets.right) > floor(refOffsets.left) || placement === 'right' && floor(popperOffsets.left) < floor(refOffsets.right) || placement === 'top' && floor(popperOffsets.bottom) > floor(refOffsets.top) || placement === 'bottom' && floor(popperOffsets.top) < floor(refOffsets.bottom); - - var overflowsLeft = floor(popperOffsets.left) < floor(boundaries.left); - var overflowsRight = floor(popperOffsets.right) > floor(boundaries.right); - var overflowsTop = floor(popperOffsets.top) < floor(boundaries.top); - var overflowsBottom = floor(popperOffsets.bottom) > floor(boundaries.bottom); - - var overflowsBoundaries = placement === 'left' && overflowsLeft || placement === 'right' && overflowsRight || placement === 'top' && overflowsTop || placement === 'bottom' && overflowsBottom; - - // flip the variation if required - var isVertical = ['top', 'bottom'].indexOf(placement) !== -1; - - // flips variation if reference element overflows boundaries - var flippedVariationByRef = !!options.flipVariations && (isVertical && variation === 'start' && overflowsLeft || isVertical && variation === 'end' && overflowsRight || !isVertical && variation === 'start' && overflowsTop || !isVertical && variation === 'end' && overflowsBottom); - - // flips variation if popper content overflows boundaries - var flippedVariationByContent = !!options.flipVariationsByContent && (isVertical && variation === 'start' && overflowsRight || isVertical && variation === 'end' && overflowsLeft || !isVertical && variation === 'start' && overflowsBottom || !isVertical && variation === 'end' && overflowsTop); - - var flippedVariation = flippedVariationByRef || flippedVariationByContent; - - if (overlapsRef || overflowsBoundaries || flippedVariation) { - // this boolean to detect any flip loop - data.flipped = true; - - if (overlapsRef || overflowsBoundaries) { - placement = flipOrder[index + 1]; - } - - if (flippedVariation) { - variation = getOppositeVariation(variation); - } - - data.placement = placement + (variation ? '-' + variation : ''); - - // this object contains `position`, we want to preserve it along with - // any additional property we may add in the future - data.offsets.popper = _extends({}, data.offsets.popper, getPopperOffsets(data.instance.popper, data.offsets.reference, data.placement)); - - data = runModifiers(data.instance.modifiers, data, 'flip'); - } - }); - return data; -} - -/** - * @function - * @memberof Modifiers - * @argument {Object} data - The data object generated by update method - * @argument {Object} options - Modifiers configuration and options - * @returns {Object} The data object, properly modified - */ -function keepTogether(data) { - var _data$offsets = data.offsets, - popper = _data$offsets.popper, - reference = _data$offsets.reference; - - var placement = data.placement.split('-')[0]; - var floor = Math.floor; - var isVertical = ['top', 'bottom'].indexOf(placement) !== -1; - var side = isVertical ? 'right' : 'bottom'; - var opSide = isVertical ? 'left' : 'top'; - var measurement = isVertical ? 'width' : 'height'; - - if (popper[side] < floor(reference[opSide])) { - data.offsets.popper[opSide] = floor(reference[opSide]) - popper[measurement]; - } - if (popper[opSide] > floor(reference[side])) { - data.offsets.popper[opSide] = floor(reference[side]); - } - - return data; -} - -/** - * Converts a string containing value + unit into a px value number - * @function - * @memberof {modifiers~offset} - * @private - * @argument {String} str - Value + unit string - * @argument {String} measurement - `height` or `width` - * @argument {Object} popperOffsets - * @argument {Object} referenceOffsets - * @returns {Number|String} - * Value in pixels, or original string if no values were extracted - */ -function toValue(str, measurement, popperOffsets, referenceOffsets) { - // separate value from unit - var split = str.match(/((?:\-|\+)?\d*\.?\d*)(.*)/); - var value = +split[1]; - var unit = split[2]; - - // If it's not a number it's an operator, I guess - if (!value) { - return str; - } - - if (unit.indexOf('%') === 0) { - var element = void 0; - switch (unit) { - case '%p': - element = popperOffsets; - break; - case '%': - case '%r': - default: - element = referenceOffsets; - } - - var rect = getClientRect(element); - return rect[measurement] / 100 * value; - } else if (unit === 'vh' || unit === 'vw') { - // if is a vh or vw, we calculate the size based on the viewport - var size = void 0; - if (unit === 'vh') { - size = Math.max(document.documentElement.clientHeight, window.innerHeight || 0); - } else { - size = Math.max(document.documentElement.clientWidth, window.innerWidth || 0); - } - return size / 100 * value; - } else { - // if is an explicit pixel unit, we get rid of the unit and keep the value - // if is an implicit unit, it's px, and we return just the value - return value; - } -} - -/** - * Parse an `offset` string to extrapolate `x` and `y` numeric offsets. - * @function - * @memberof {modifiers~offset} - * @private - * @argument {String} offset - * @argument {Object} popperOffsets - * @argument {Object} referenceOffsets - * @argument {String} basePlacement - * @returns {Array} a two cells array with x and y offsets in numbers - */ -function parseOffset(offset, popperOffsets, referenceOffsets, basePlacement) { - var offsets = [0, 0]; - - // Use height if placement is left or right and index is 0 otherwise use width - // in this way the first offset will use an axis and the second one - // will use the other one - var useHeight = ['right', 'left'].indexOf(basePlacement) !== -1; - - // Split the offset string to obtain a list of values and operands - // The regex addresses values with the plus or minus sign in front (+10, -20, etc) - var fragments = offset.split(/(\+|\-)/).map(function (frag) { - return frag.trim(); - }); - - // Detect if the offset string contains a pair of values or a single one - // they could be separated by comma or space - var divider = fragments.indexOf(find(fragments, function (frag) { - return frag.search(/,|\s/) !== -1; - })); - - if (fragments[divider] && fragments[divider].indexOf(',') === -1) { - console.warn('Offsets separated by white space(s) are deprecated, use a comma (,) instead.'); - } - - // If divider is found, we divide the list of values and operands to divide - // them by ofset X and Y. - var splitRegex = /\s*,\s*|\s+/; - var ops = divider !== -1 ? [fragments.slice(0, divider).concat([fragments[divider].split(splitRegex)[0]]), [fragments[divider].split(splitRegex)[1]].concat(fragments.slice(divider + 1))] : [fragments]; - - // Convert the values with units to absolute pixels to allow our computations - ops = ops.map(function (op, index) { - // Most of the units rely on the orientation of the popper - var measurement = (index === 1 ? !useHeight : useHeight) ? 'height' : 'width'; - var mergeWithPrevious = false; - return op - // This aggregates any `+` or `-` sign that aren't considered operators - // e.g.: 10 + +5 => [10, +, +5] - .reduce(function (a, b) { - if (a[a.length - 1] === '' && ['+', '-'].indexOf(b) !== -1) { - a[a.length - 1] = b; - mergeWithPrevious = true; - return a; - } else if (mergeWithPrevious) { - a[a.length - 1] += b; - mergeWithPrevious = false; - return a; - } else { - return a.concat(b); - } - }, []) - // Here we convert the string values into number values (in px) - .map(function (str) { - return toValue(str, measurement, popperOffsets, referenceOffsets); - }); - }); - - // Loop trough the offsets arrays and execute the operations - ops.forEach(function (op, index) { - op.forEach(function (frag, index2) { - if (isNumeric(frag)) { - offsets[index] += frag * (op[index2 - 1] === '-' ? -1 : 1); - } - }); - }); - return offsets; -} - -/** - * @function - * @memberof Modifiers - * @argument {Object} data - The data object generated by update method - * @argument {Object} options - Modifiers configuration and options - * @argument {Number|String} options.offset=0 - * The offset value as described in the modifier description - * @returns {Object} The data object, properly modified - */ -function offset(data, _ref) { - var offset = _ref.offset; - var placement = data.placement, - _data$offsets = data.offsets, - popper = _data$offsets.popper, - reference = _data$offsets.reference; - - var basePlacement = placement.split('-')[0]; - - var offsets = void 0; - if (isNumeric(+offset)) { - offsets = [+offset, 0]; - } else { - offsets = parseOffset(offset, popper, reference, basePlacement); - } - - if (basePlacement === 'left') { - popper.top += offsets[0]; - popper.left -= offsets[1]; - } else if (basePlacement === 'right') { - popper.top += offsets[0]; - popper.left += offsets[1]; - } else if (basePlacement === 'top') { - popper.left += offsets[0]; - popper.top -= offsets[1]; - } else if (basePlacement === 'bottom') { - popper.left += offsets[0]; - popper.top += offsets[1]; - } - - data.popper = popper; - return data; -} - -/** - * @function - * @memberof Modifiers - * @argument {Object} data - The data object generated by `update` method - * @argument {Object} options - Modifiers configuration and options - * @returns {Object} The data object, properly modified - */ -function preventOverflow(data, options) { - var boundariesElement = options.boundariesElement || getOffsetParent(data.instance.popper); - - // If offsetParent is the reference element, we really want to - // go one step up and use the next offsetParent as reference to - // avoid to make this modifier completely useless and look like broken - if (data.instance.reference === boundariesElement) { - boundariesElement = getOffsetParent(boundariesElement); - } - - // NOTE: DOM access here - // resets the popper's position so that the document size can be calculated excluding - // the size of the popper element itself - var transformProp = getSupportedPropertyName('transform'); - var popperStyles = data.instance.popper.style; // assignment to help minification - var top = popperStyles.top, - left = popperStyles.left, - transform = popperStyles[transformProp]; - - popperStyles.top = ''; - popperStyles.left = ''; - popperStyles[transformProp] = ''; - - var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, boundariesElement, data.positionFixed); - - // NOTE: DOM access here - // restores the original style properties after the offsets have been computed - popperStyles.top = top; - popperStyles.left = left; - popperStyles[transformProp] = transform; - - options.boundaries = boundaries; - - var order = options.priority; - var popper = data.offsets.popper; - - var check = { - primary: function primary(placement) { - var value = popper[placement]; - if (popper[placement] < boundaries[placement] && !options.escapeWithReference) { - value = Math.max(popper[placement], boundaries[placement]); - } - return defineProperty({}, placement, value); - }, - secondary: function secondary(placement) { - var mainSide = placement === 'right' ? 'left' : 'top'; - var value = popper[mainSide]; - if (popper[placement] > boundaries[placement] && !options.escapeWithReference) { - value = Math.min(popper[mainSide], boundaries[placement] - (placement === 'right' ? popper.width : popper.height)); - } - return defineProperty({}, mainSide, value); - } - }; - - order.forEach(function (placement) { - var side = ['left', 'top'].indexOf(placement) !== -1 ? 'primary' : 'secondary'; - popper = _extends({}, popper, check[side](placement)); - }); - - data.offsets.popper = popper; - - return data; -} - -/** - * @function - * @memberof Modifiers - * @argument {Object} data - The data object generated by `update` method - * @argument {Object} options - Modifiers configuration and options - * @returns {Object} The data object, properly modified - */ -function shift(data) { - var placement = data.placement; - var basePlacement = placement.split('-')[0]; - var shiftvariation = placement.split('-')[1]; - - // if shift shiftvariation is specified, run the modifier - if (shiftvariation) { - var _data$offsets = data.offsets, - reference = _data$offsets.reference, - popper = _data$offsets.popper; - - var isVertical = ['bottom', 'top'].indexOf(basePlacement) !== -1; - var side = isVertical ? 'left' : 'top'; - var measurement = isVertical ? 'width' : 'height'; - - var shiftOffsets = { - start: defineProperty({}, side, reference[side]), - end: defineProperty({}, side, reference[side] + reference[measurement] - popper[measurement]) - }; - - data.offsets.popper = _extends({}, popper, shiftOffsets[shiftvariation]); - } - - return data; -} - -/** - * @function - * @memberof Modifiers - * @argument {Object} data - The data object generated by update method - * @argument {Object} options - Modifiers configuration and options - * @returns {Object} The data object, properly modified - */ -function hide(data) { - if (!isModifierRequired(data.instance.modifiers, 'hide', 'preventOverflow')) { - return data; - } - - var refRect = data.offsets.reference; - var bound = find(data.instance.modifiers, function (modifier) { - return modifier.name === 'preventOverflow'; - }).boundaries; - - if (refRect.bottom < bound.top || refRect.left > bound.right || refRect.top > bound.bottom || refRect.right < bound.left) { - // Avoid unnecessary DOM access if visibility hasn't changed - if (data.hide === true) { - return data; - } - - data.hide = true; - data.attributes['x-out-of-boundaries'] = ''; - } else { - // Avoid unnecessary DOM access if visibility hasn't changed - if (data.hide === false) { - return data; - } - - data.hide = false; - data.attributes['x-out-of-boundaries'] = false; - } - - return data; -} - -/** - * @function - * @memberof Modifiers - * @argument {Object} data - The data object generated by `update` method - * @argument {Object} options - Modifiers configuration and options - * @returns {Object} The data object, properly modified - */ -function inner(data) { - var placement = data.placement; - var basePlacement = placement.split('-')[0]; - var _data$offsets = data.offsets, - popper = _data$offsets.popper, - reference = _data$offsets.reference; - - var isHoriz = ['left', 'right'].indexOf(basePlacement) !== -1; - - var subtractLength = ['top', 'left'].indexOf(basePlacement) === -1; - - popper[isHoriz ? 'left' : 'top'] = reference[basePlacement] - (subtractLength ? popper[isHoriz ? 'width' : 'height'] : 0); - - data.placement = getOppositePlacement(placement); - data.offsets.popper = getClientRect(popper); - - return data; -} - -/** - * Modifier function, each modifier can have a function of this type assigned - * to its `fn` property.
- * These functions will be called on each update, this means that you must - * make sure they are performant enough to avoid performance bottlenecks. - * - * @function ModifierFn - * @argument {dataObject} data - The data object generated by `update` method - * @argument {Object} options - Modifiers configuration and options - * @returns {dataObject} The data object, properly modified - */ - -/** - * Modifiers are plugins used to alter the behavior of your poppers.
- * Popper.js uses a set of 9 modifiers to provide all the basic functionalities - * needed by the library. - * - * Usually you don't want to override the `order`, `fn` and `onLoad` props. - * All the other properties are configurations that could be tweaked. - * @namespace modifiers - */ -var modifiers = { - /** - * Modifier used to shift the popper on the start or end of its reference - * element.
- * It will read the variation of the `placement` property.
- * It can be one either `-end` or `-start`. - * @memberof modifiers - * @inner - */ - shift: { - /** @prop {number} order=100 - Index used to define the order of execution */ - order: 100, - /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ - enabled: true, - /** @prop {ModifierFn} */ - fn: shift - }, - - /** - * The `offset` modifier can shift your popper on both its axis. - * - * It accepts the following units: - * - `px` or unit-less, interpreted as pixels - * - `%` or `%r`, percentage relative to the length of the reference element - * - `%p`, percentage relative to the length of the popper element - * - `vw`, CSS viewport width unit - * - `vh`, CSS viewport height unit - * - * For length is intended the main axis relative to the placement of the popper.
- * This means that if the placement is `top` or `bottom`, the length will be the - * `width`. In case of `left` or `right`, it will be the `height`. - * - * You can provide a single value (as `Number` or `String`), or a pair of values - * as `String` divided by a comma or one (or more) white spaces.
- * The latter is a deprecated method because it leads to confusion and will be - * removed in v2.
- * Additionally, it accepts additions and subtractions between different units. - * Note that multiplications and divisions aren't supported. - * - * Valid examples are: - * ``` - * 10 - * '10%' - * '10, 10' - * '10%, 10' - * '10 + 10%' - * '10 - 5vh + 3%' - * '-10px + 5vh, 5px - 6%' - * ``` - * > **NB**: If you desire to apply offsets to your poppers in a way that may make them overlap - * > with their reference element, unfortunately, you will have to disable the `flip` modifier. - * > You can read more on this at this [issue](https://github.com/FezVrasta/popper.js/issues/373). - * - * @memberof modifiers - * @inner - */ - offset: { - /** @prop {number} order=200 - Index used to define the order of execution */ - order: 200, - /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ - enabled: true, - /** @prop {ModifierFn} */ - fn: offset, - /** @prop {Number|String} offset=0 - * The offset value as described in the modifier description - */ - offset: 0 - }, - - /** - * Modifier used to prevent the popper from being positioned outside the boundary. - * - * A scenario exists where the reference itself is not within the boundaries.
- * We can say it has "escaped the boundaries" — or just "escaped".
- * In this case we need to decide whether the popper should either: - * - * - detach from the reference and remain "trapped" in the boundaries, or - * - if it should ignore the boundary and "escape with its reference" - * - * When `escapeWithReference` is set to`true` and reference is completely - * outside its boundaries, the popper will overflow (or completely leave) - * the boundaries in order to remain attached to the edge of the reference. - * - * @memberof modifiers - * @inner - */ - preventOverflow: { - /** @prop {number} order=300 - Index used to define the order of execution */ - order: 300, - /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ - enabled: true, - /** @prop {ModifierFn} */ - fn: preventOverflow, - /** - * @prop {Array} [priority=['left','right','top','bottom']] - * Popper will try to prevent overflow following these priorities by default, - * then, it could overflow on the left and on top of the `boundariesElement` - */ - priority: ['left', 'right', 'top', 'bottom'], - /** - * @prop {number} padding=5 - * Amount of pixel used to define a minimum distance between the boundaries - * and the popper. This makes sure the popper always has a little padding - * between the edges of its container - */ - padding: 5, - /** - * @prop {String|HTMLElement} boundariesElement='scrollParent' - * Boundaries used by the modifier. Can be `scrollParent`, `window`, - * `viewport` or any DOM element. - */ - boundariesElement: 'scrollParent' - }, - - /** - * Modifier used to make sure the reference and its popper stay near each other - * without leaving any gap between the two. Especially useful when the arrow is - * enabled and you want to ensure that it points to its reference element. - * It cares only about the first axis. You can still have poppers with margin - * between the popper and its reference element. - * @memberof modifiers - * @inner - */ - keepTogether: { - /** @prop {number} order=400 - Index used to define the order of execution */ - order: 400, - /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ - enabled: true, - /** @prop {ModifierFn} */ - fn: keepTogether - }, - - /** - * This modifier is used to move the `arrowElement` of the popper to make - * sure it is positioned between the reference element and its popper element. - * It will read the outer size of the `arrowElement` node to detect how many - * pixels of conjunction are needed. - * - * It has no effect if no `arrowElement` is provided. - * @memberof modifiers - * @inner - */ - arrow: { - /** @prop {number} order=500 - Index used to define the order of execution */ - order: 500, - /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ - enabled: true, - /** @prop {ModifierFn} */ - fn: arrow, - /** @prop {String|HTMLElement} element='[x-arrow]' - Selector or node used as arrow */ - element: '[x-arrow]' - }, - - /** - * Modifier used to flip the popper's placement when it starts to overlap its - * reference element. - * - * Requires the `preventOverflow` modifier before it in order to work. - * - * **NOTE:** this modifier will interrupt the current update cycle and will - * restart it if it detects the need to flip the placement. - * @memberof modifiers - * @inner - */ - flip: { - /** @prop {number} order=600 - Index used to define the order of execution */ - order: 600, - /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ - enabled: true, - /** @prop {ModifierFn} */ - fn: flip, - /** - * @prop {String|Array} behavior='flip' - * The behavior used to change the popper's placement. It can be one of - * `flip`, `clockwise`, `counterclockwise` or an array with a list of valid - * placements (with optional variations) - */ - behavior: 'flip', - /** - * @prop {number} padding=5 - * The popper will flip if it hits the edges of the `boundariesElement` - */ - padding: 5, - /** - * @prop {String|HTMLElement} boundariesElement='viewport' - * The element which will define the boundaries of the popper position. - * The popper will never be placed outside of the defined boundaries - * (except if `keepTogether` is enabled) - */ - boundariesElement: 'viewport', - /** - * @prop {Boolean} flipVariations=false - * The popper will switch placement variation between `-start` and `-end` when - * the reference element overlaps its boundaries. - * - * The original placement should have a set variation. - */ - flipVariations: false, - /** - * @prop {Boolean} flipVariationsByContent=false - * The popper will switch placement variation between `-start` and `-end` when - * the popper element overlaps its reference boundaries. - * - * The original placement should have a set variation. - */ - flipVariationsByContent: false - }, - - /** - * Modifier used to make the popper flow toward the inner of the reference element. - * By default, when this modifier is disabled, the popper will be placed outside - * the reference element. - * @memberof modifiers - * @inner - */ - inner: { - /** @prop {number} order=700 - Index used to define the order of execution */ - order: 700, - /** @prop {Boolean} enabled=false - Whether the modifier is enabled or not */ - enabled: false, - /** @prop {ModifierFn} */ - fn: inner - }, - - /** - * Modifier used to hide the popper when its reference element is outside of the - * popper boundaries. It will set a `x-out-of-boundaries` attribute which can - * be used to hide with a CSS selector the popper when its reference is - * out of boundaries. - * - * Requires the `preventOverflow` modifier before it in order to work. - * @memberof modifiers - * @inner - */ - hide: { - /** @prop {number} order=800 - Index used to define the order of execution */ - order: 800, - /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ - enabled: true, - /** @prop {ModifierFn} */ - fn: hide - }, - - /** - * Computes the style that will be applied to the popper element to gets - * properly positioned. - * - * Note that this modifier will not touch the DOM, it just prepares the styles - * so that `applyStyle` modifier can apply it. This separation is useful - * in case you need to replace `applyStyle` with a custom implementation. - * - * This modifier has `850` as `order` value to maintain backward compatibility - * with previous versions of Popper.js. Expect the modifiers ordering method - * to change in future major versions of the library. - * - * @memberof modifiers - * @inner - */ - computeStyle: { - /** @prop {number} order=850 - Index used to define the order of execution */ - order: 850, - /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ - enabled: true, - /** @prop {ModifierFn} */ - fn: computeStyle, - /** - * @prop {Boolean} gpuAcceleration=true - * If true, it uses the CSS 3D transformation to position the popper. - * Otherwise, it will use the `top` and `left` properties - */ - gpuAcceleration: true, - /** - * @prop {string} [x='bottom'] - * Where to anchor the X axis (`bottom` or `top`). AKA X offset origin. - * Change this if your popper should grow in a direction different from `bottom` - */ - x: 'bottom', - /** - * @prop {string} [x='left'] - * Where to anchor the Y axis (`left` or `right`). AKA Y offset origin. - * Change this if your popper should grow in a direction different from `right` - */ - y: 'right' - }, - - /** - * Applies the computed styles to the popper element. - * - * All the DOM manipulations are limited to this modifier. This is useful in case - * you want to integrate Popper.js inside a framework or view library and you - * want to delegate all the DOM manipulations to it. - * - * Note that if you disable this modifier, you must make sure the popper element - * has its position set to `absolute` before Popper.js can do its work! - * - * Just disable this modifier and define your own to achieve the desired effect. - * - * @memberof modifiers - * @inner - */ - applyStyle: { - /** @prop {number} order=900 - Index used to define the order of execution */ - order: 900, - /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ - enabled: true, - /** @prop {ModifierFn} */ - fn: applyStyle, - /** @prop {Function} */ - onLoad: applyStyleOnLoad, - /** - * @deprecated since version 1.10.0, the property moved to `computeStyle` modifier - * @prop {Boolean} gpuAcceleration=true - * If true, it uses the CSS 3D transformation to position the popper. - * Otherwise, it will use the `top` and `left` properties - */ - gpuAcceleration: undefined - } -}; - -/** - * The `dataObject` is an object containing all the information used by Popper.js. - * This object is passed to modifiers and to the `onCreate` and `onUpdate` callbacks. - * @name dataObject - * @property {Object} data.instance The Popper.js instance - * @property {String} data.placement Placement applied to popper - * @property {String} data.originalPlacement Placement originally defined on init - * @property {Boolean} data.flipped True if popper has been flipped by flip modifier - * @property {Boolean} data.hide True if the reference element is out of boundaries, useful to know when to hide the popper - * @property {HTMLElement} data.arrowElement Node used as arrow by arrow modifier - * @property {Object} data.styles Any CSS property defined here will be applied to the popper. It expects the JavaScript nomenclature (eg. `marginBottom`) - * @property {Object} data.arrowStyles Any CSS property defined here will be applied to the popper arrow. It expects the JavaScript nomenclature (eg. `marginBottom`) - * @property {Object} data.boundaries Offsets of the popper boundaries - * @property {Object} data.offsets The measurements of popper, reference and arrow elements - * @property {Object} data.offsets.popper `top`, `left`, `width`, `height` values - * @property {Object} data.offsets.reference `top`, `left`, `width`, `height` values - * @property {Object} data.offsets.arrow] `top` and `left` offsets, only one of them will be different from 0 - */ - -/** - * Default options provided to Popper.js constructor.
- * These can be overridden using the `options` argument of Popper.js.
- * To override an option, simply pass an object with the same - * structure of the `options` object, as the 3rd argument. For example: - * ``` - * new Popper(ref, pop, { - * modifiers: { - * preventOverflow: { enabled: false } - * } - * }) - * ``` - * @type {Object} - * @static - * @memberof Popper - */ -var Defaults = { - /** - * Popper's placement. - * @prop {Popper.placements} placement='bottom' - */ - placement: 'bottom', - - /** - * Set this to true if you want popper to position it self in 'fixed' mode - * @prop {Boolean} positionFixed=false - */ - positionFixed: false, - - /** - * Whether events (resize, scroll) are initially enabled. - * @prop {Boolean} eventsEnabled=true - */ - eventsEnabled: true, - - /** - * Set to true if you want to automatically remove the popper when - * you call the `destroy` method. - * @prop {Boolean} removeOnDestroy=false - */ - removeOnDestroy: false, - - /** - * Callback called when the popper is created.
- * By default, it is set to no-op.
- * Access Popper.js instance with `data.instance`. - * @prop {onCreate} - */ - onCreate: function onCreate() {}, - - /** - * Callback called when the popper is updated. This callback is not called - * on the initialization/creation of the popper, but only on subsequent - * updates.
- * By default, it is set to no-op.
- * Access Popper.js instance with `data.instance`. - * @prop {onUpdate} - */ - onUpdate: function onUpdate() {}, - - /** - * List of modifiers used to modify the offsets before they are applied to the popper. - * They provide most of the functionalities of Popper.js. - * @prop {modifiers} - */ - modifiers: modifiers -}; - -/** - * @callback onCreate - * @param {dataObject} data - */ - -/** - * @callback onUpdate - * @param {dataObject} data - */ - -// Utils -// Methods -var Popper = function () { - /** - * Creates a new Popper.js instance. - * @class Popper - * @param {Element|referenceObject} reference - The reference element used to position the popper - * @param {Element} popper - The HTML / XML element used as the popper - * @param {Object} options - Your custom options to override the ones defined in [Defaults](#defaults) - * @return {Object} instance - The generated Popper.js instance - */ - function Popper(reference, popper) { - var _this = this; - - var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}; - classCallCheck(this, Popper); - - this.scheduleUpdate = function () { - return requestAnimationFrame(_this.update); - }; - - // make update() debounced, so that it only runs at most once-per-tick - this.update = debounce(this.update.bind(this)); - - // with {} we create a new object with the options inside it - this.options = _extends({}, Popper.Defaults, options); - - // init state - this.state = { - isDestroyed: false, - isCreated: false, - scrollParents: [] - }; - - // get reference and popper elements (allow jQuery wrappers) - this.reference = reference && reference.jquery ? reference[0] : reference; - this.popper = popper && popper.jquery ? popper[0] : popper; - - // Deep merge modifiers options - this.options.modifiers = {}; - Object.keys(_extends({}, Popper.Defaults.modifiers, options.modifiers)).forEach(function (name) { - _this.options.modifiers[name] = _extends({}, Popper.Defaults.modifiers[name] || {}, options.modifiers ? options.modifiers[name] : {}); - }); - - // Refactoring modifiers' list (Object => Array) - this.modifiers = Object.keys(this.options.modifiers).map(function (name) { - return _extends({ - name: name - }, _this.options.modifiers[name]); - }) - // sort the modifiers by order - .sort(function (a, b) { - return a.order - b.order; - }); - - // modifiers have the ability to execute arbitrary code when Popper.js get inited - // such code is executed in the same order of its modifier - // they could add new properties to their options configuration - // BE AWARE: don't add options to `options.modifiers.name` but to `modifierOptions`! - this.modifiers.forEach(function (modifierOptions) { - if (modifierOptions.enabled && isFunction(modifierOptions.onLoad)) { - modifierOptions.onLoad(_this.reference, _this.popper, _this.options, modifierOptions, _this.state); - } - }); - - // fire the first update to position the popper in the right place - this.update(); - - var eventsEnabled = this.options.eventsEnabled; - if (eventsEnabled) { - // setup event listeners, they will take care of update the position in specific situations - this.enableEventListeners(); - } - - this.state.eventsEnabled = eventsEnabled; - } - - // We can't use class properties because they don't get listed in the - // class prototype and break stuff like Sinon stubs - - - createClass(Popper, [{ - key: 'update', - value: function update$$1() { - return update.call(this); - } - }, { - key: 'destroy', - value: function destroy$$1() { - return destroy.call(this); - } - }, { - key: 'enableEventListeners', - value: function enableEventListeners$$1() { - return enableEventListeners.call(this); - } - }, { - key: 'disableEventListeners', - value: function disableEventListeners$$1() { - return disableEventListeners.call(this); - } - - /** - * Schedules an update. It will run on the next UI update available. - * @method scheduleUpdate - * @memberof Popper - */ - - - /** - * Collection of utilities useful when writing custom modifiers. - * Starting from version 1.7, this method is available only if you - * include `popper-utils.js` before `popper.js`. - * - * **DEPRECATION**: This way to access PopperUtils is deprecated - * and will be removed in v2! Use the PopperUtils module directly instead. - * Due to the high instability of the methods contained in Utils, we can't - * guarantee them to follow semver. Use them at your own risk! - * @static - * @private - * @type {Object} - * @deprecated since version 1.8 - * @member Utils - * @memberof Popper - */ - - }]); - return Popper; -}(); - -/** - * The `referenceObject` is an object that provides an interface compatible with Popper.js - * and lets you use it as replacement of a real DOM node.
- * You can use this method to position a popper relatively to a set of coordinates - * in case you don't have a DOM node to use as reference. - * - * ``` - * new Popper(referenceObject, popperNode); - * ``` - * - * NB: This feature isn't supported in Internet Explorer 10. - * @name referenceObject - * @property {Function} data.getBoundingClientRect - * A function that returns a set of coordinates compatible with the native `getBoundingClientRect` method. - * @property {number} data.clientWidth - * An ES6 getter that will return the width of the virtual reference element. - * @property {number} data.clientHeight - * An ES6 getter that will return the height of the virtual reference element. - */ - - -Popper.Utils = (typeof window !== 'undefined' ? window : __webpack_require__.g).PopperUtils; -Popper.placements = placements; -Popper.Defaults = Defaults; - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Popper); -//# sourceMappingURL=popper.js.map - - -/***/ }), - -/***/ "./node_modules/v-tooltip/dist/v-tooltip.esm.js": -/*!******************************************************!*\ - !*** ./node_modules/v-tooltip/dist/v-tooltip.esm.js ***! - \******************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__), -/* harmony export */ "VClosePopover": () => (/* binding */ VClosePopover), -/* harmony export */ "VPopover": () => (/* binding */ VPopover), -/* harmony export */ "VTooltip": () => (/* binding */ VTooltip), -/* harmony export */ "createTooltip": () => (/* binding */ createTooltip), -/* harmony export */ "destroyTooltip": () => (/* binding */ destroyTooltip), -/* harmony export */ "install": () => (/* binding */ install) -/* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "./node_modules/@babel/runtime/helpers/esm/typeof.js"); -/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/esm/defineProperty.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var popper_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! popper.js */ "./node_modules/popper.js/dist/esm/popper.js"); -/* harmony import */ var lodash_isEqual__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! lodash/isEqual */ "./node_modules/lodash/isEqual.js"); -/* harmony import */ var lodash_isEqual__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(lodash_isEqual__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var vue_resize__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! vue-resize */ "./node_modules/v-tooltip/node_modules/vue-resize/dist/vue-resize.esm.js"); -/* harmony import */ var lodash_merge__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! lodash/merge */ "./node_modules/lodash/merge.js"); -/* harmony import */ var lodash_merge__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(lodash_merge__WEBPACK_IMPORTED_MODULE_6__); -/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js"); - - - - - - - - - -var SVGAnimatedString = function SVGAnimatedString() {}; - -if (typeof window !== 'undefined') { - SVGAnimatedString = window.SVGAnimatedString; -} - -function convertToArray(value) { - if (typeof value === 'string') { - value = value.split(' '); - } - - return value; -} -/** - * Add classes to an element. - * This method checks to ensure that the classes don't already exist before adding them. - * It uses el.className rather than classList in order to be IE friendly. - * @param {object} el - The element to add the classes to. - * @param {classes} string - List of space separated classes to be added to the element. - */ - -function addClasses(el, classes) { - var newClasses = convertToArray(classes); - var classList; - - if (el.className instanceof SVGAnimatedString) { - classList = convertToArray(el.className.baseVal); - } else { - classList = convertToArray(el.className); - } - - newClasses.forEach(function (newClass) { - if (classList.indexOf(newClass) === -1) { - classList.push(newClass); - } - }); - - if (el instanceof SVGElement) { - el.setAttribute('class', classList.join(' ')); - } else { - el.className = classList.join(' '); - } -} -/** - * Remove classes from an element. - * It uses el.className rather than classList in order to be IE friendly. - * @export - * @param {any} el The element to remove the classes from. - * @param {any} classes List of space separated classes to be removed from the element. - */ - -function removeClasses(el, classes) { - var newClasses = convertToArray(classes); - var classList; - - if (el.className instanceof SVGAnimatedString) { - classList = convertToArray(el.className.baseVal); - } else { - classList = convertToArray(el.className); - } - - newClasses.forEach(function (newClass) { - var index = classList.indexOf(newClass); - - if (index !== -1) { - classList.splice(index, 1); - } - }); - - if (el instanceof SVGElement) { - el.setAttribute('class', classList.join(' ')); - } else { - el.className = classList.join(' '); - } -} -var supportsPassive = false; - -if (typeof window !== 'undefined') { - supportsPassive = false; - - try { - var opts = Object.defineProperty({}, 'passive', { - get: function get() { - supportsPassive = true; - } - }); - window.addEventListener('test', null, opts); - } catch (e) {} -} - -function ownKeys$2(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } - -function _objectSpread$2(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$2(Object(source), true).forEach(function (key) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1__["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$2(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } -var DEFAULT_OPTIONS = { - container: false, - delay: 0, - html: false, - placement: 'top', - title: '', - template: '', - trigger: 'hover focus', - offset: 0 -}; -var openTooltips = []; - -var Tooltip = /*#__PURE__*/function () { - /** - * Create a new Tooltip.js instance - * @class Tooltip - * @param {HTMLElement} reference - The DOM node used as reference of the tooltip (it can be a jQuery element). - * @param {Object} options - * @param {String} options.placement=bottom - * Placement of the popper accepted values: `top(-start, -end), right(-start, -end), bottom(-start, -end), - * left(-start, -end)` - * @param {HTMLElement|String|false} options.container=false - Append the tooltip to a specific element. - * @param {Number|Object} options.delay=0 - * Delay showing and hiding the tooltip (ms) - does not apply to manual trigger type. - * If a number is supplied, delay is applied to both hide/show. - * Object structure is: `{ show: 500, hide: 100 }` - * @param {Boolean} options.html=false - Insert HTML into the tooltip. If false, the content will inserted with `innerText`. - * @param {String|PlacementFunction} options.placement='top' - One of the allowed placements, or a function returning one of them. - * @param {String} [options.template=''] - * Base HTML to used when creating the tooltip. - * The tooltip's `title` will be injected into the `.tooltip-inner` or `.tooltip__inner`. - * `.tooltip-arrow` or `.tooltip__arrow` will become the tooltip's arrow. - * The outermost wrapper element should have the `.tooltip` class. - * @param {String|HTMLElement|TitleFunction} options.title='' - Default title value if `title` attribute isn't present. - * @param {String} [options.trigger='hover focus'] - * How tooltip is triggered - click, hover, focus, manual. - * You may pass multiple triggers; separate them with a space. `manual` cannot be combined with any other trigger. - * @param {HTMLElement} options.boundariesElement - * The element used as boundaries for the tooltip. For more information refer to Popper.js' - * [boundariesElement docs](https://popper.js.org/popper-documentation.html) - * @param {Number|String} options.offset=0 - Offset of the tooltip relative to its reference. For more information refer to Popper.js' - * [offset docs](https://popper.js.org/popper-documentation.html) - * @param {Object} options.popperOptions={} - Popper options, will be passed directly to popper instance. For more information refer to Popper.js' - * [options docs](https://popper.js.org/popper-documentation.html) - * @param {string} [options.ariaId] Id used for accessibility - * @return {Object} instance - The generated tooltip instance - */ - function Tooltip(_reference, _options) { - var _this = this; - - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_2__["default"])(this, Tooltip); - - (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1__["default"])(this, "_events", []); - - (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1__["default"])(this, "_setTooltipNodeEvent", function (evt, reference, delay, options) { - var relatedreference = evt.relatedreference || evt.toElement || evt.relatedTarget; - - var callback = function callback(evt2) { - var relatedreference2 = evt2.relatedreference || evt2.toElement || evt2.relatedTarget; // Remove event listener after call - - _this._tooltipNode.removeEventListener(evt.type, callback); // If the new reference is not the reference element - - - if (!reference.contains(relatedreference2)) { - // Schedule to hide tooltip - _this._scheduleHide(reference, options.delay, options, evt2); - } - }; - - if (_this._tooltipNode.contains(relatedreference)) { - // listen to mouseleave on the tooltip element to be able to hide the tooltip - _this._tooltipNode.addEventListener(evt.type, callback); - - return true; - } - - return false; - }); - - // apply user options over default ones - _options = _objectSpread$2(_objectSpread$2({}, DEFAULT_OPTIONS), _options); - _reference.jquery && (_reference = _reference[0]); - this.show = this.show.bind(this); - this.hide = this.hide.bind(this); // cache reference and options - - this.reference = _reference; - this.options = _options; // set initial state - - this._isOpen = false; - - this._init(); - } // - // Public methods - // - - /** - * Reveals an element's tooltip. This is considered a "manual" triggering of the tooltip. - * Tooltips with zero-length titles are never displayed. - * @method Tooltip#show - * @memberof Tooltip - */ - - - (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_3__["default"])(Tooltip, [{ - key: "show", - value: function show() { - this._show(this.reference, this.options); - } - /** - * Hides an element’s tooltip. This is considered a “manual” triggering of the tooltip. - * @method Tooltip#hide - * @memberof Tooltip - */ - - }, { - key: "hide", - value: function hide() { - this._hide(); - } - /** - * Hides and destroys an element’s tooltip. - * @method Tooltip#dispose - * @memberof Tooltip - */ - - }, { - key: "dispose", - value: function dispose() { - this._dispose(); - } - /** - * Toggles an element’s tooltip. This is considered a “manual” triggering of the tooltip. - * @method Tooltip#toggle - * @memberof Tooltip - */ - - }, { - key: "toggle", - value: function toggle() { - if (this._isOpen) { - return this.hide(); - } else { - return this.show(); - } - } - }, { - key: "setClasses", - value: function setClasses(classes) { - this._classes = classes; - } - }, { - key: "setContent", - value: function setContent(content) { - this.options.title = content; - - if (this._tooltipNode) { - this._setContent(content, this.options); - } - } - }, { - key: "setOptions", - value: function setOptions(options) { - var classesUpdated = false; - var classes = options && options.classes || directive.options.defaultClass; - - if (!lodash_isEqual__WEBPACK_IMPORTED_MODULE_4___default()(this._classes, classes)) { - this.setClasses(classes); - classesUpdated = true; - } - - options = getOptions(options); - var needPopperUpdate = false; - var needRestart = false; - - if (this.options.offset !== options.offset || this.options.placement !== options.placement) { - needPopperUpdate = true; - } - - if (this.options.template !== options.template || this.options.trigger !== options.trigger || this.options.container !== options.container || classesUpdated) { - needRestart = true; - } - - for (var key in options) { - this.options[key] = options[key]; - } - - if (this._tooltipNode) { - if (needRestart) { - var isOpen = this._isOpen; - this.dispose(); - - this._init(); - - if (isOpen) { - this.show(); - } - } else if (needPopperUpdate) { - this.popperInstance.update(); - } - } - } // - // Private methods - // - - }, { - key: "_init", - value: function _init() { - // get events list - var events = typeof this.options.trigger === 'string' ? this.options.trigger.split(' ') : []; - this._isDisposed = false; - this._enableDocumentTouch = events.indexOf('manual') === -1; - events = events.filter(function (trigger) { - return ['click', 'hover', 'focus'].indexOf(trigger) !== -1; - }); // set event listeners - - this._setEventListeners(this.reference, events, this.options); // title attribute - - - this.$_originalTitle = this.reference.getAttribute('title'); - this.reference.removeAttribute('title'); - this.reference.setAttribute('data-original-title', this.$_originalTitle); - } - /** - * Creates a new tooltip node - * @memberof Tooltip - * @private - * @param {HTMLElement} reference - * @param {String} template - * @param {String|HTMLElement|TitleFunction} title - * @param {Boolean} allowHtml - * @return {HTMLelement} tooltipNode - */ - - }, { - key: "_create", - value: function _create(reference, template) { - var _this2 = this; - - // create tooltip element - var tooltipGenerator = window.document.createElement('div'); - tooltipGenerator.innerHTML = template.trim(); - var tooltipNode = tooltipGenerator.childNodes[0]; // add unique ID to our tooltip (needed for accessibility reasons) - - tooltipNode.id = this.options.ariaId || "tooltip_".concat(Math.random().toString(36).substr(2, 10)); // Initially hide the tooltip - // The attribute will be switched in a next frame so - // CSS transitions can play - - tooltipNode.setAttribute('aria-hidden', 'true'); - - if (this.options.autoHide && this.options.trigger.indexOf('hover') !== -1) { - tooltipNode.addEventListener('mouseenter', function (evt) { - return _this2._scheduleHide(reference, _this2.options.delay, _this2.options, evt); - }); - tooltipNode.addEventListener('click', function (evt) { - return _this2._scheduleHide(reference, _this2.options.delay, _this2.options, evt); - }); - } // return the generated tooltip node - - - return tooltipNode; - } - }, { - key: "_setContent", - value: function _setContent(content, options) { - var _this3 = this; - - this.asyncContent = false; - - this._applyContent(content, options).then(function () { - if (!_this3.popperInstance) return; - - _this3.popperInstance.update(); - }); - } - }, { - key: "_applyContent", - value: function _applyContent(title, options) { - var _this4 = this; - - return new Promise(function (resolve, reject) { - var allowHtml = options.html; - var rootNode = _this4._tooltipNode; - if (!rootNode) return; - var titleNode = rootNode.querySelector(_this4.options.innerSelector); - - if (title.nodeType === 1) { - // if title is a node, append it only if allowHtml is true - if (allowHtml) { - while (titleNode.firstChild) { - titleNode.removeChild(titleNode.firstChild); - } - - titleNode.appendChild(title); - } - } else if (typeof title === 'function') { - // if title is a function, call it and set innerText or innerHtml depending by `allowHtml` value - var result = title(); - - if (result && typeof result.then === 'function') { - _this4.asyncContent = true; - options.loadingClass && addClasses(rootNode, options.loadingClass); - - if (options.loadingContent) { - _this4._applyContent(options.loadingContent, options); - } - - result.then(function (asyncResult) { - options.loadingClass && removeClasses(rootNode, options.loadingClass); - return _this4._applyContent(asyncResult, options); - }).then(resolve).catch(reject); - } else { - _this4._applyContent(result, options).then(resolve).catch(reject); - } - - return; - } else { - // if it's just a simple text, set innerText or innerHtml depending by `allowHtml` value - allowHtml ? titleNode.innerHTML = title : titleNode.innerText = title; - } - - resolve(); - }); - } - }, { - key: "_show", - value: function _show(reference, options) { - if (options && typeof options.container === 'string') { - var container = document.querySelector(options.container); - if (!container) return; - } - - clearTimeout(this._disposeTimer); - options = Object.assign({}, options); - delete options.offset; - var updateClasses = true; - - if (this._tooltipNode) { - addClasses(this._tooltipNode, this._classes); - updateClasses = false; - } - - var result = this._ensureShown(reference, options); - - if (updateClasses && this._tooltipNode) { - addClasses(this._tooltipNode, this._classes); - } - - addClasses(reference, ['v-tooltip-open']); - return result; - } - }, { - key: "_ensureShown", - value: function _ensureShown(reference, options) { - var _this5 = this; - - // don't show if it's already visible - if (this._isOpen) { - return this; - } - - this._isOpen = true; - openTooltips.push(this); // if the tooltipNode already exists, just show it - - if (this._tooltipNode) { - this._tooltipNode.style.display = ''; - - this._tooltipNode.setAttribute('aria-hidden', 'false'); - - this.popperInstance.enableEventListeners(); - this.popperInstance.update(); - - if (this.asyncContent) { - this._setContent(options.title, options); - } - - return this; - } // get title - - - var title = reference.getAttribute('title') || options.title; // don't show tooltip if no title is defined - - if (!title) { - return this; - } // create tooltip node - - - var tooltipNode = this._create(reference, options.template); - - this._tooltipNode = tooltipNode; // Add `aria-describedby` to our reference element for accessibility reasons - - reference.setAttribute('aria-describedby', tooltipNode.id); // append tooltip to container - - var container = this._findContainer(options.container, reference); - - this._append(tooltipNode, container); - - var popperOptions = _objectSpread$2(_objectSpread$2({}, options.popperOptions), {}, { - placement: options.placement - }); - - popperOptions.modifiers = _objectSpread$2(_objectSpread$2({}, popperOptions.modifiers), {}, { - arrow: { - element: this.options.arrowSelector - } - }); - - if (options.boundariesElement) { - popperOptions.modifiers.preventOverflow = { - boundariesElement: options.boundariesElement - }; - } - - this.popperInstance = new popper_js__WEBPACK_IMPORTED_MODULE_7__["default"](reference, tooltipNode, popperOptions); - - this._setContent(title, options); // Fix position - - - requestAnimationFrame(function () { - if (!_this5._isDisposed && _this5.popperInstance) { - _this5.popperInstance.update(); // Show the tooltip - - - requestAnimationFrame(function () { - if (!_this5._isDisposed) { - _this5._isOpen && tooltipNode.setAttribute('aria-hidden', 'false'); - } else { - _this5.dispose(); - } - }); - } else { - _this5.dispose(); - } - }); - return this; - } - }, { - key: "_noLongerOpen", - value: function _noLongerOpen() { - var index = openTooltips.indexOf(this); - - if (index !== -1) { - openTooltips.splice(index, 1); - } - } - }, { - key: "_hide", - value: function _hide() - /* reference, options */ - { - var _this6 = this; - - // don't hide if it's already hidden - if (!this._isOpen) { - return this; - } - - this._isOpen = false; - - this._noLongerOpen(); // hide tooltipNode - - - this._tooltipNode.style.display = 'none'; - - this._tooltipNode.setAttribute('aria-hidden', 'true'); - - if (this.popperInstance) { - this.popperInstance.disableEventListeners(); - } - - clearTimeout(this._disposeTimer); - var disposeTime = directive.options.disposeTimeout; - - if (disposeTime !== null) { - this._disposeTimer = setTimeout(function () { - if (_this6._tooltipNode) { - _this6._tooltipNode.removeEventListener('mouseenter', _this6.hide); - - _this6._tooltipNode.removeEventListener('click', _this6.hide); // Don't remove popper instance, just the HTML element - - - _this6._removeTooltipNode(); - } - }, disposeTime); - } - - removeClasses(this.reference, ['v-tooltip-open']); - return this; - } - }, { - key: "_removeTooltipNode", - value: function _removeTooltipNode() { - if (!this._tooltipNode) return; - var parentNode = this._tooltipNode.parentNode; - - if (parentNode) { - parentNode.removeChild(this._tooltipNode); - this.reference.removeAttribute('aria-describedby'); - } - - this._tooltipNode = null; - } - }, { - key: "_dispose", - value: function _dispose() { - var _this7 = this; - - this._isDisposed = true; - this.reference.removeAttribute('data-original-title'); - - if (this.$_originalTitle) { - this.reference.setAttribute('title', this.$_originalTitle); - } // remove event listeners first to prevent any unexpected behaviour - - - this._events.forEach(function (_ref) { - var func = _ref.func, - event = _ref.event; - - _this7.reference.removeEventListener(event, func); - }); - - this._events = []; - - if (this._tooltipNode) { - this._hide(); - - this._tooltipNode.removeEventListener('mouseenter', this.hide); - - this._tooltipNode.removeEventListener('click', this.hide); // destroy instance - - - this.popperInstance.destroy(); // destroy tooltipNode if removeOnDestroy is not set, as popperInstance.destroy() already removes the element - - if (!this.popperInstance.options.removeOnDestroy) { - this._removeTooltipNode(); - } - } else { - this._noLongerOpen(); - } - - return this; - } - }, { - key: "_findContainer", - value: function _findContainer(container, reference) { - // if container is a query, get the relative element - if (typeof container === 'string') { - container = window.document.querySelector(container); - } else if (container === false) { - // if container is `false`, set it to reference parent - container = reference.parentNode; - } - - return container; - } - /** - * Append tooltip to container - * @memberof Tooltip - * @private - * @param {HTMLElement} tooltip - * @param {HTMLElement|String|false} container - */ - - }, { - key: "_append", - value: function _append(tooltipNode, container) { - container.appendChild(tooltipNode); - } - }, { - key: "_setEventListeners", - value: function _setEventListeners(reference, events, options) { - var _this8 = this; - - var directEvents = []; - var oppositeEvents = []; - events.forEach(function (event) { - switch (event) { - case 'hover': - directEvents.push('mouseenter'); - oppositeEvents.push('mouseleave'); - if (_this8.options.hideOnTargetClick) oppositeEvents.push('click'); - break; - - case 'focus': - directEvents.push('focus'); - oppositeEvents.push('blur'); - if (_this8.options.hideOnTargetClick) oppositeEvents.push('click'); - break; - - case 'click': - directEvents.push('click'); - oppositeEvents.push('click'); - break; - } - }); // schedule show tooltip - - directEvents.forEach(function (event) { - var func = function func(evt) { - if (_this8._isOpen === true) { - return; - } - - evt.usedByTooltip = true; - - _this8._scheduleShow(reference, options.delay, options, evt); - }; - - _this8._events.push({ - event: event, - func: func - }); - - reference.addEventListener(event, func); - }); // schedule hide tooltip - - oppositeEvents.forEach(function (event) { - var func = function func(evt) { - if (evt.usedByTooltip === true) { - return; - } - - _this8._scheduleHide(reference, options.delay, options, evt); - }; - - _this8._events.push({ - event: event, - func: func - }); - - reference.addEventListener(event, func); - }); - } - }, { - key: "_onDocumentTouch", - value: function _onDocumentTouch(event) { - if (this._enableDocumentTouch) { - this._scheduleHide(this.reference, this.options.delay, this.options, event); - } - } - }, { - key: "_scheduleShow", - value: function _scheduleShow(reference, delay, options - /*, evt */ - ) { - var _this9 = this; - - // defaults to 0 - var computedDelay = delay && delay.show || delay || 0; - clearTimeout(this._scheduleTimer); - this._scheduleTimer = window.setTimeout(function () { - return _this9._show(reference, options); - }, computedDelay); - } - }, { - key: "_scheduleHide", - value: function _scheduleHide(reference, delay, options, evt) { - var _this10 = this; - - // defaults to 0 - var computedDelay = delay && delay.hide || delay || 0; - clearTimeout(this._scheduleTimer); - this._scheduleTimer = window.setTimeout(function () { - if (_this10._isOpen === false) { - return; - } - - if (!_this10._tooltipNode.ownerDocument.body.contains(_this10._tooltipNode)) { - return; - } // if we are hiding because of a mouseleave, we must check that the new - // reference isn't the tooltip, because in this case we don't want to hide it - - - if (evt.type === 'mouseleave') { - var isSet = _this10._setTooltipNodeEvent(evt, reference, delay, options); // if we set the new event, don't hide the tooltip yet - // the new event will take care to hide it if necessary - - - if (isSet) { - return; - } - } - - _this10._hide(reference, options); - }, computedDelay); - } - }]); - - return Tooltip; -}(); // Hide tooltips on touch devices - -if (typeof document !== 'undefined') { - document.addEventListener('touchstart', function (event) { - for (var i = 0; i < openTooltips.length; i++) { - openTooltips[i]._onDocumentTouch(event); - } - }, supportsPassive ? { - passive: true, - capture: true - } : true); -} -/** - * Placement function, its context is the Tooltip instance. - * @memberof Tooltip - * @callback PlacementFunction - * @param {HTMLElement} tooltip - tooltip DOM node. - * @param {HTMLElement} reference - reference DOM node. - * @return {String} placement - One of the allowed placement options. - */ - -/** - * Title function, its context is the Tooltip instance. - * @memberof Tooltip - * @callback TitleFunction - * @return {String} placement - The desired title. - */ - -function ownKeys$1(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } - -function _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$1(Object(source), true).forEach(function (key) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1__["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } -var state = { - enabled: true -}; -var positions = ['top', 'top-start', 'top-end', 'right', 'right-start', 'right-end', 'bottom', 'bottom-start', 'bottom-end', 'left', 'left-start', 'left-end']; -var defaultOptions = { - // Default tooltip placement relative to target element - defaultPlacement: 'top', - // Default CSS classes applied to the tooltip element - defaultClass: 'vue-tooltip-theme', - // Default CSS classes applied to the target element of the tooltip - defaultTargetClass: 'has-tooltip', - // Is the content HTML by default? - defaultHtml: true, - // Default HTML template of the tooltip element - // It must include `tooltip-arrow` & `tooltip-inner` CSS classes (can be configured, see below) - // Change if the classes conflict with other libraries (for example bootstrap) - defaultTemplate: '', - // Selector used to get the arrow element in the tooltip template - defaultArrowSelector: '.tooltip-arrow, .tooltip__arrow', - // Selector used to get the inner content element in the tooltip template - defaultInnerSelector: '.tooltip-inner, .tooltip__inner', - // Delay (ms) - defaultDelay: 0, - // Default events that trigger the tooltip - defaultTrigger: 'hover focus', - // Default position offset (px) - defaultOffset: 0, - // Default container where the tooltip will be appended - defaultContainer: 'body', - defaultBoundariesElement: undefined, - defaultPopperOptions: {}, - // Class added when content is loading - defaultLoadingClass: 'tooltip-loading', - // Displayed when tooltip content is loading - defaultLoadingContent: '...', - // Hide on mouseover tooltip - autoHide: true, - // Close tooltip on click on tooltip target? - defaultHideOnTargetClick: true, - // Auto destroy tooltip DOM nodes (ms) - disposeTimeout: 5000, - // Options for popover - popover: { - defaultPlacement: 'bottom', - // Use the `popoverClass` prop for theming - defaultClass: 'vue-popover-theme', - // Base class (change if conflicts with other libraries) - defaultBaseClass: 'tooltip popover', - // Wrapper class (contains arrow and inner) - defaultWrapperClass: 'wrapper', - // Inner content class - defaultInnerClass: 'tooltip-inner popover-inner', - // Arrow class - defaultArrowClass: 'tooltip-arrow popover-arrow', - // Class added when popover is open - defaultOpenClass: 'open', - defaultDelay: 0, - defaultTrigger: 'click', - defaultOffset: 0, - defaultContainer: 'body', - defaultBoundariesElement: undefined, - defaultPopperOptions: {}, - // Hides if clicked outside of popover - defaultAutoHide: true, - // Update popper on content resize - defaultHandleResize: true - } -}; -function getOptions(options) { - var result = { - placement: typeof options.placement !== 'undefined' ? options.placement : directive.options.defaultPlacement, - delay: typeof options.delay !== 'undefined' ? options.delay : directive.options.defaultDelay, - html: typeof options.html !== 'undefined' ? options.html : directive.options.defaultHtml, - template: typeof options.template !== 'undefined' ? options.template : directive.options.defaultTemplate, - arrowSelector: typeof options.arrowSelector !== 'undefined' ? options.arrowSelector : directive.options.defaultArrowSelector, - innerSelector: typeof options.innerSelector !== 'undefined' ? options.innerSelector : directive.options.defaultInnerSelector, - trigger: typeof options.trigger !== 'undefined' ? options.trigger : directive.options.defaultTrigger, - offset: typeof options.offset !== 'undefined' ? options.offset : directive.options.defaultOffset, - container: typeof options.container !== 'undefined' ? options.container : directive.options.defaultContainer, - boundariesElement: typeof options.boundariesElement !== 'undefined' ? options.boundariesElement : directive.options.defaultBoundariesElement, - autoHide: typeof options.autoHide !== 'undefined' ? options.autoHide : directive.options.autoHide, - hideOnTargetClick: typeof options.hideOnTargetClick !== 'undefined' ? options.hideOnTargetClick : directive.options.defaultHideOnTargetClick, - loadingClass: typeof options.loadingClass !== 'undefined' ? options.loadingClass : directive.options.defaultLoadingClass, - loadingContent: typeof options.loadingContent !== 'undefined' ? options.loadingContent : directive.options.defaultLoadingContent, - popperOptions: _objectSpread$1({}, typeof options.popperOptions !== 'undefined' ? options.popperOptions : directive.options.defaultPopperOptions) - }; - - if (result.offset) { - var typeofOffset = (0,_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__["default"])(result.offset); - - var offset = result.offset; // One value -> switch - - if (typeofOffset === 'number' || typeofOffset === 'string' && offset.indexOf(',') === -1) { - offset = "0, ".concat(offset); - } - - if (!result.popperOptions.modifiers) { - result.popperOptions.modifiers = {}; - } - - result.popperOptions.modifiers.offset = { - offset: offset - }; - } - - if (result.trigger && result.trigger.indexOf('click') !== -1) { - result.hideOnTargetClick = false; - } - - return result; -} -function getPlacement(value, modifiers) { - var placement = value.placement; - - for (var i = 0; i < positions.length; i++) { - var pos = positions[i]; - - if (modifiers[pos]) { - placement = pos; - } - } - - return placement; -} -function getContent(value) { - var type = (0,_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__["default"])(value); - - if (type === 'string') { - return value; - } else if (value && type === 'object') { - return value.content; - } else { - return false; - } -} -function createTooltip(el, value) { - var modifiers = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}; - var content = getContent(value); - var classes = typeof value.classes !== 'undefined' ? value.classes : directive.options.defaultClass; - - var opts = _objectSpread$1({ - title: content - }, getOptions(_objectSpread$1(_objectSpread$1({}, (0,_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__["default"])(value) === 'object' ? value : {}), {}, { - placement: getPlacement(value, modifiers) - }))); - - var tooltip = el._tooltip = new Tooltip(el, opts); - tooltip.setClasses(classes); - tooltip._vueEl = el; // Class on target - - var targetClasses = typeof value.targetClasses !== 'undefined' ? value.targetClasses : directive.options.defaultTargetClass; - el._tooltipTargetClasses = targetClasses; - addClasses(el, targetClasses); - return tooltip; -} -function destroyTooltip(el) { - if (el._tooltip) { - el._tooltip.dispose(); - - delete el._tooltip; - delete el._tooltipOldShow; - } - - if (el._tooltipTargetClasses) { - removeClasses(el, el._tooltipTargetClasses); - delete el._tooltipTargetClasses; - } -} -function bind(el, _ref) { - var value = _ref.value; - _ref.oldValue; - var modifiers = _ref.modifiers; - var content = getContent(value); - - if (!content || !state.enabled) { - destroyTooltip(el); - } else { - var tooltip; - - if (el._tooltip) { - tooltip = el._tooltip; // Content - - tooltip.setContent(content); // Options - - tooltip.setOptions(_objectSpread$1(_objectSpread$1({}, value), {}, { - placement: getPlacement(value, modifiers) - })); - } else { - tooltip = createTooltip(el, value, modifiers); - } // Manual show - - - if (typeof value.show !== 'undefined' && value.show !== el._tooltipOldShow) { - el._tooltipOldShow = value.show; - value.show ? tooltip.show() : tooltip.hide(); - } - } -} -var directive = { - options: defaultOptions, - bind: bind, - update: bind, - unbind: function unbind(el) { - destroyTooltip(el); - } -}; - -function addListeners(el) { - el.addEventListener('click', onClick); - el.addEventListener('touchstart', onTouchStart, supportsPassive ? { - passive: true - } : false); -} - -function removeListeners(el) { - el.removeEventListener('click', onClick); - el.removeEventListener('touchstart', onTouchStart); - el.removeEventListener('touchend', onTouchEnd); - el.removeEventListener('touchcancel', onTouchCancel); -} - -function onClick(event) { - var el = event.currentTarget; - event.closePopover = !el.$_vclosepopover_touch; - event.closeAllPopover = el.$_closePopoverModifiers && !!el.$_closePopoverModifiers.all; -} - -function onTouchStart(event) { - if (event.changedTouches.length === 1) { - var el = event.currentTarget; - el.$_vclosepopover_touch = true; - var touch = event.changedTouches[0]; - el.$_vclosepopover_touchPoint = touch; - el.addEventListener('touchend', onTouchEnd); - el.addEventListener('touchcancel', onTouchCancel); - } -} - -function onTouchEnd(event) { - var el = event.currentTarget; - el.$_vclosepopover_touch = false; - - if (event.changedTouches.length === 1) { - var touch = event.changedTouches[0]; - var firstTouch = el.$_vclosepopover_touchPoint; - event.closePopover = Math.abs(touch.screenY - firstTouch.screenY) < 20 && Math.abs(touch.screenX - firstTouch.screenX) < 20; - event.closeAllPopover = el.$_closePopoverModifiers && !!el.$_closePopoverModifiers.all; - } -} - -function onTouchCancel(event) { - var el = event.currentTarget; - el.$_vclosepopover_touch = false; -} - -var vclosepopover = { - bind: function bind(el, _ref) { - var value = _ref.value, - modifiers = _ref.modifiers; - el.$_closePopoverModifiers = modifiers; - - if (typeof value === 'undefined' || value) { - addListeners(el); - } - }, - update: function update(el, _ref2) { - var value = _ref2.value, - oldValue = _ref2.oldValue, - modifiers = _ref2.modifiers; - el.$_closePopoverModifiers = modifiers; - - if (value !== oldValue) { - if (typeof value === 'undefined' || value) { - addListeners(el); - } else { - removeListeners(el); - } - } - }, - unbind: function unbind(el) { - removeListeners(el); - } -}; - -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } - -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1__["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } - -function getDefault(key) { - var value = directive.options.popover[key]; - - if (typeof value === 'undefined') { - return directive.options[key]; - } - - return value; -} - -var isIOS = false; - -if (typeof window !== 'undefined' && typeof navigator !== 'undefined') { - isIOS = /iPad|iPhone|iPod/.test(navigator.userAgent) && !window.MSStream; -} - -var openPopovers = []; - -var Element = function Element() {}; - -if (typeof window !== 'undefined') { - Element = window.Element; -} - -var script = { - name: 'VPopover', - components: { - ResizeObserver: vue_resize__WEBPACK_IMPORTED_MODULE_5__.ResizeObserver - }, - props: { - open: { - type: Boolean, - default: false - }, - disabled: { - type: Boolean, - default: false - }, - placement: { - type: String, - default: function _default() { - return getDefault('defaultPlacement'); - } - }, - delay: { - type: [String, Number, Object], - default: function _default() { - return getDefault('defaultDelay'); - } - }, - offset: { - type: [String, Number], - default: function _default() { - return getDefault('defaultOffset'); - } - }, - trigger: { - type: String, - default: function _default() { - return getDefault('defaultTrigger'); - } - }, - container: { - type: [String, Object, Element, Boolean], - default: function _default() { - return getDefault('defaultContainer'); - } - }, - boundariesElement: { - type: [String, Element], - default: function _default() { - return getDefault('defaultBoundariesElement'); - } - }, - popperOptions: { - type: Object, - default: function _default() { - return getDefault('defaultPopperOptions'); - } - }, - popoverClass: { - type: [String, Array], - default: function _default() { - return getDefault('defaultClass'); - } - }, - popoverBaseClass: { - type: [String, Array], - default: function _default() { - return directive.options.popover.defaultBaseClass; - } - }, - popoverInnerClass: { - type: [String, Array], - default: function _default() { - return directive.options.popover.defaultInnerClass; - } - }, - popoverWrapperClass: { - type: [String, Array], - default: function _default() { - return directive.options.popover.defaultWrapperClass; - } - }, - popoverArrowClass: { - type: [String, Array], - default: function _default() { - return directive.options.popover.defaultArrowClass; - } - }, - autoHide: { - type: Boolean, - default: function _default() { - return directive.options.popover.defaultAutoHide; - } - }, - handleResize: { - type: Boolean, - default: function _default() { - return directive.options.popover.defaultHandleResize; - } - }, - openGroup: { - type: String, - default: null - }, - openClass: { - type: [String, Array], - default: function _default() { - return directive.options.popover.defaultOpenClass; - } - }, - ariaId: { - default: null - } - }, - data: function data() { - return { - isOpen: false, - id: Math.random().toString(36).substr(2, 10) - }; - }, - computed: { - cssClass: function cssClass() { - return (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1__["default"])({}, this.openClass, this.isOpen); - }, - popoverId: function popoverId() { - return "popover_".concat(this.ariaId != null ? this.ariaId : this.id); - } - }, - watch: { - open: function open(val) { - if (val) { - this.show(); - } else { - this.hide(); - } - }, - disabled: function disabled(val, oldVal) { - if (val !== oldVal) { - if (val) { - this.hide(); - } else if (this.open) { - this.show(); - } - } - }, - container: function container(val) { - if (this.isOpen && this.popperInstance) { - var popoverNode = this.$refs.popover; - var reference = this.$refs.trigger; - var container = this.$_findContainer(this.container, reference); - - if (!container) { - console.warn('No container for popover', this); - return; - } - - container.appendChild(popoverNode); - this.popperInstance.scheduleUpdate(); - } - }, - trigger: function trigger(val) { - this.$_removeEventListeners(); - this.$_addEventListeners(); - }, - placement: function placement(val) { - var _this = this; - - this.$_updatePopper(function () { - _this.popperInstance.options.placement = val; - }); - }, - offset: '$_restartPopper', - boundariesElement: '$_restartPopper', - popperOptions: { - handler: '$_restartPopper', - deep: true - } - }, - created: function created() { - this.$_isDisposed = false; - this.$_mounted = false; - this.$_events = []; - this.$_preventOpen = false; - }, - mounted: function mounted() { - var popoverNode = this.$refs.popover; - popoverNode.parentNode && popoverNode.parentNode.removeChild(popoverNode); - this.$_init(); - - if (this.open) { - this.show(); - } - }, - deactivated: function deactivated() { - this.hide(); - }, - beforeDestroy: function beforeDestroy() { - this.dispose(); - }, - methods: { - show: function show() { - var _this2 = this; - - var _ref2 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}, - event = _ref2.event; - _ref2.skipDelay; - var _ref2$force = _ref2.force, - force = _ref2$force === void 0 ? false : _ref2$force; - - if (force || !this.disabled) { - this.$_scheduleShow(event); - this.$emit('show'); - } - - this.$emit('update:open', true); - this.$_beingShowed = true; - requestAnimationFrame(function () { - _this2.$_beingShowed = false; - }); - }, - hide: function hide() { - var _ref3 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}, - event = _ref3.event; - _ref3.skipDelay; - - this.$_scheduleHide(event); - this.$emit('hide'); - this.$emit('update:open', false); - }, - dispose: function dispose() { - this.$_isDisposed = true; - this.$_removeEventListeners(); - this.hide({ - skipDelay: true - }); - - if (this.popperInstance) { - this.popperInstance.destroy(); // destroy tooltipNode if removeOnDestroy is not set, as popperInstance.destroy() already removes the element - - if (!this.popperInstance.options.removeOnDestroy) { - var popoverNode = this.$refs.popover; - popoverNode.parentNode && popoverNode.parentNode.removeChild(popoverNode); - } - } - - this.$_mounted = false; - this.popperInstance = null; - this.isOpen = false; - this.$emit('dispose'); - }, - $_init: function $_init() { - if (this.trigger.indexOf('manual') === -1) { - this.$_addEventListeners(); - } - }, - $_show: function $_show() { - var _this3 = this; - - var reference = this.$refs.trigger; - var popoverNode = this.$refs.popover; - clearTimeout(this.$_disposeTimer); // Already open - - if (this.isOpen) { - return; - } // Popper is already initialized - - - if (this.popperInstance) { - this.isOpen = true; - this.popperInstance.enableEventListeners(); - this.popperInstance.scheduleUpdate(); - } - - if (!this.$_mounted) { - var container = this.$_findContainer(this.container, reference); - - if (!container) { - console.warn('No container for popover', this); - return; - } - - container.appendChild(popoverNode); - this.$_mounted = true; - this.isOpen = false; - - if (this.popperInstance) { - requestAnimationFrame(function () { - if (!_this3.hidden) { - _this3.isOpen = true; - } - }); - } - } - - if (!this.popperInstance) { - var popperOptions = _objectSpread(_objectSpread({}, this.popperOptions), {}, { - placement: this.placement - }); - - popperOptions.modifiers = _objectSpread(_objectSpread({}, popperOptions.modifiers), {}, { - arrow: _objectSpread(_objectSpread({}, popperOptions.modifiers && popperOptions.modifiers.arrow), {}, { - element: this.$refs.arrow - }) - }); - - if (this.offset) { - var offset = this.$_getOffset(); - popperOptions.modifiers.offset = _objectSpread(_objectSpread({}, popperOptions.modifiers && popperOptions.modifiers.offset), {}, { - offset: offset - }); - } - - if (this.boundariesElement) { - popperOptions.modifiers.preventOverflow = _objectSpread(_objectSpread({}, popperOptions.modifiers && popperOptions.modifiers.preventOverflow), {}, { - boundariesElement: this.boundariesElement - }); - } - - this.popperInstance = new popper_js__WEBPACK_IMPORTED_MODULE_7__["default"](reference, popoverNode, popperOptions); // Fix position - - requestAnimationFrame(function () { - if (_this3.hidden) { - _this3.hidden = false; - - _this3.$_hide(); - - return; - } - - if (!_this3.$_isDisposed && _this3.popperInstance) { - _this3.popperInstance.scheduleUpdate(); // Show the tooltip - - - requestAnimationFrame(function () { - if (_this3.hidden) { - _this3.hidden = false; - - _this3.$_hide(); - - return; - } - - if (!_this3.$_isDisposed) { - _this3.isOpen = true; - } else { - _this3.dispose(); - } - }); - } else { - _this3.dispose(); - } - }); - } - - var openGroup = this.openGroup; - - if (openGroup) { - var popover; - - for (var i = 0; i < openPopovers.length; i++) { - popover = openPopovers[i]; - - if (popover.openGroup !== openGroup) { - popover.hide(); - popover.$emit('close-group'); - } - } - } - - openPopovers.push(this); - this.$emit('apply-show'); - }, - $_hide: function $_hide() { - var _this4 = this; - - // Already hidden - if (!this.isOpen) { - return; - } - - var index = openPopovers.indexOf(this); - - if (index !== -1) { - openPopovers.splice(index, 1); - } - - this.isOpen = false; - - if (this.popperInstance) { - this.popperInstance.disableEventListeners(); - } - - clearTimeout(this.$_disposeTimer); - var disposeTime = directive.options.popover.disposeTimeout || directive.options.disposeTimeout; - - if (disposeTime !== null) { - this.$_disposeTimer = setTimeout(function () { - var popoverNode = _this4.$refs.popover; - - if (popoverNode) { - // Don't remove popper instance, just the HTML element - popoverNode.parentNode && popoverNode.parentNode.removeChild(popoverNode); - _this4.$_mounted = false; - } - }, disposeTime); - } - - this.$emit('apply-hide'); - }, - $_findContainer: function $_findContainer(container, reference) { - // if container is a query, get the relative element - if (typeof container === 'string') { - container = window.document.querySelector(container); - } else if (container === false) { - // if container is `false`, set it to reference parent - container = reference.parentNode; - } - - return container; - }, - $_getOffset: function $_getOffset() { - var typeofOffset = (0,_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__["default"])(this.offset); - - var offset = this.offset; // One value -> switch - - if (typeofOffset === 'number' || typeofOffset === 'string' && offset.indexOf(',') === -1) { - offset = "0, ".concat(offset); - } - - return offset; - }, - $_addEventListeners: function $_addEventListeners() { - var _this5 = this; - - var reference = this.$refs.trigger; - var directEvents = []; - var oppositeEvents = []; - var events = typeof this.trigger === 'string' ? this.trigger.split(' ').filter(function (trigger) { - return ['click', 'hover', 'focus'].indexOf(trigger) !== -1; - }) : []; - events.forEach(function (event) { - switch (event) { - case 'hover': - directEvents.push('mouseenter'); - oppositeEvents.push('mouseleave'); - break; - - case 'focus': - directEvents.push('focus'); - oppositeEvents.push('blur'); - break; - - case 'click': - directEvents.push('click'); - oppositeEvents.push('click'); - break; - } - }); // schedule show tooltip - - directEvents.forEach(function (event) { - var func = function func(event) { - if (_this5.isOpen) { - return; - } - - event.usedByTooltip = true; - !_this5.$_preventOpen && _this5.show({ - event: event - }); - _this5.hidden = false; - }; - - _this5.$_events.push({ - event: event, - func: func - }); - - reference.addEventListener(event, func); - }); // schedule hide tooltip - - oppositeEvents.forEach(function (event) { - var func = function func(event) { - if (event.usedByTooltip) { - return; - } - - _this5.hide({ - event: event - }); - - _this5.hidden = true; - }; - - _this5.$_events.push({ - event: event, - func: func - }); - - reference.addEventListener(event, func); - }); - }, - $_scheduleShow: function $_scheduleShow() { - var skipDelay = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; - clearTimeout(this.$_scheduleTimer); - - if (skipDelay) { - this.$_show(); - } else { - // defaults to 0 - var computedDelay = parseInt(this.delay && this.delay.show || this.delay || 0); - this.$_scheduleTimer = setTimeout(this.$_show.bind(this), computedDelay); - } - }, - $_scheduleHide: function $_scheduleHide() { - var _this6 = this; - - var event = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null; - var skipDelay = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; - clearTimeout(this.$_scheduleTimer); - - if (skipDelay) { - this.$_hide(); - } else { - // defaults to 0 - var computedDelay = parseInt(this.delay && this.delay.hide || this.delay || 0); - this.$_scheduleTimer = setTimeout(function () { - if (!_this6.isOpen) { - return; - } // if we are hiding because of a mouseleave, we must check that the new - // reference isn't the tooltip, because in this case we don't want to hide it - - - if (event && event.type === 'mouseleave') { - var isSet = _this6.$_setTooltipNodeEvent(event); // if we set the new event, don't hide the tooltip yet - // the new event will take care to hide it if necessary - - - if (isSet) { - return; - } - } - - _this6.$_hide(); - }, computedDelay); - } - }, - $_setTooltipNodeEvent: function $_setTooltipNodeEvent(event) { - var _this7 = this; - - var reference = this.$refs.trigger; - var popoverNode = this.$refs.popover; - var relatedreference = event.relatedreference || event.toElement || event.relatedTarget; - - var callback = function callback(event2) { - var relatedreference2 = event2.relatedreference || event2.toElement || event2.relatedTarget; // Remove event listener after call - - popoverNode.removeEventListener(event.type, callback); // If the new reference is not the reference element - - if (!reference.contains(relatedreference2)) { - // Schedule to hide tooltip - _this7.hide({ - event: event2 - }); - } - }; - - if (popoverNode.contains(relatedreference)) { - // listen to mouseleave on the tooltip element to be able to hide the tooltip - popoverNode.addEventListener(event.type, callback); - return true; - } - - return false; - }, - $_removeEventListeners: function $_removeEventListeners() { - var reference = this.$refs.trigger; - this.$_events.forEach(function (_ref4) { - var func = _ref4.func, - event = _ref4.event; - reference.removeEventListener(event, func); - }); - this.$_events = []; - }, - $_updatePopper: function $_updatePopper(cb) { - if (this.popperInstance) { - cb(); - if (this.isOpen) this.popperInstance.scheduleUpdate(); - } - }, - $_restartPopper: function $_restartPopper() { - if (this.popperInstance) { - var isOpen = this.isOpen; - this.dispose(); - this.$_isDisposed = false; - this.$_init(); - - if (isOpen) { - this.show({ - skipDelay: true, - force: true - }); - } - } - }, - $_handleGlobalClose: function $_handleGlobalClose(event) { - var _this8 = this; - - var touch = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; - if (this.$_beingShowed) return; - this.hide({ - event: event - }); - - if (event.closePopover) { - this.$emit('close-directive'); - } else { - this.$emit('auto-hide'); - } - - if (touch) { - this.$_preventOpen = true; - setTimeout(function () { - _this8.$_preventOpen = false; - }, 300); - } - }, - $_handleResize: function $_handleResize() { - if (this.isOpen && this.popperInstance) { - this.popperInstance.scheduleUpdate(); - this.$emit('resize'); - } - } - } -}; - -if (typeof document !== 'undefined' && typeof window !== 'undefined') { - if (isIOS) { - document.addEventListener('touchend', handleGlobalTouchend, supportsPassive ? { - passive: true, - capture: true - } : true); - } else { - window.addEventListener('click', handleGlobalClick, true); - } -} - -function handleGlobalClick(event) { - handleGlobalClose(event); -} - -function handleGlobalTouchend(event) { - handleGlobalClose(event, true); -} - -function handleGlobalClose(event) { - var touch = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; - - var _loop = function _loop(i) { - var popover = openPopovers[i]; - - if (popover.$refs.popover) { - var contains = popover.$refs.popover.contains(event.target); - requestAnimationFrame(function () { - if (event.closeAllPopover || event.closePopover && contains || popover.autoHide && !contains) { - popover.$_handleGlobalClose(event, touch); - } - }); - } - }; - - // Delay so that close directive has time to set values - for (var i = 0; i < openPopovers.length; i++) { - _loop(i); - } -} - -function normalizeComponent(template, style, script, scopeId, isFunctionalTemplate, moduleIdentifier /* server only */, shadowMode, createInjector, createInjectorSSR, createInjectorShadow) { - if (typeof shadowMode !== 'boolean') { - createInjectorSSR = createInjector; - createInjector = shadowMode; - shadowMode = false; - } - // Vue.extend constructor export interop. - const options = typeof script === 'function' ? script.options : script; - // render functions - if (template && template.render) { - options.render = template.render; - options.staticRenderFns = template.staticRenderFns; - options._compiled = true; - // functional template - if (isFunctionalTemplate) { - options.functional = true; - } - } - // scopedId - if (scopeId) { - options._scopeId = scopeId; - } - let hook; - if (moduleIdentifier) { - // server build - hook = function (context) { - // 2.3 injection - context = - context || // cached call - (this.$vnode && this.$vnode.ssrContext) || // stateful - (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext); // functional - // 2.2 with runInNewContext: true - if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') { - context = __VUE_SSR_CONTEXT__; - } - // inject component styles - if (style) { - style.call(this, createInjectorSSR(context)); - } - // register component module identifier for async chunk inference - if (context && context._registeredComponents) { - context._registeredComponents.add(moduleIdentifier); - } - }; - // used by ssr in case component is cached and beforeCreate - // never gets called - options._ssrRegister = hook; - } - else if (style) { - hook = shadowMode - ? function (context) { - style.call(this, createInjectorShadow(context, this.$root.$options.shadowRoot)); - } - : function (context) { - style.call(this, createInjector(context)); - }; - } - if (hook) { - if (options.functional) { - // register for functional component in vue file - const originalRender = options.render; - options.render = function renderWithStyleInjection(h, context) { - hook.call(context); - return originalRender(h, context); - }; - } - else { - // inject component registration as beforeCreate hook - const existing = options.beforeCreate; - options.beforeCreate = existing ? [].concat(existing, hook) : [hook]; - } - } - return script; -} - -/* script */ -var __vue_script__ = script; -/* template */ - -var __vue_render__ = function __vue_render__() { - var _vm = this; - - var _h = _vm.$createElement; - - var _c = _vm._self._c || _h; - - return _c("div", { - staticClass: "v-popover", - class: _vm.cssClass - }, [_c("div", { - ref: "trigger", - staticClass: "trigger", - staticStyle: { - display: "inline-block" - }, - attrs: { - "aria-describedby": _vm.isOpen ? _vm.popoverId : undefined, - tabindex: _vm.trigger.indexOf("focus") !== -1 ? 0 : undefined - } - }, [_vm._t("default")], 2), _vm._v(" "), _c("div", { - ref: "popover", - class: [_vm.popoverBaseClass, _vm.popoverClass, _vm.cssClass], - style: { - visibility: _vm.isOpen ? "visible" : "hidden" - }, - attrs: { - id: _vm.popoverId, - "aria-hidden": _vm.isOpen ? "false" : "true", - tabindex: _vm.autoHide ? 0 : undefined - }, - on: { - keyup: function keyup($event) { - if (!$event.type.indexOf("key") && _vm._k($event.keyCode, "esc", 27, $event.key, ["Esc", "Escape"])) { - return null; - } - - _vm.autoHide && _vm.hide(); - } - } - }, [_c("div", { - class: _vm.popoverWrapperClass - }, [_c("div", { - ref: "inner", - class: _vm.popoverInnerClass, - staticStyle: { - position: "relative" - } - }, [_c("div", [_vm._t("popover", null, { - isOpen: _vm.isOpen - })], 2), _vm._v(" "), _vm.handleResize ? _c("ResizeObserver", { - on: { - notify: _vm.$_handleResize - } - }) : _vm._e()], 1), _vm._v(" "), _c("div", { - ref: "arrow", - class: _vm.popoverArrowClass - })])])]); -}; - -var __vue_staticRenderFns__ = []; -__vue_render__._withStripped = true; -/* style */ - -var __vue_inject_styles__ = undefined; -/* scoped */ - -var __vue_scope_id__ = undefined; -/* module identifier */ - -var __vue_module_identifier__ = undefined; -/* functional template */ - -var __vue_is_functional_template__ = false; -/* style inject */ - -/* style inject SSR */ - -/* style inject shadow dom */ - -var __vue_component__ = /*#__PURE__*/normalizeComponent({ - render: __vue_render__, - staticRenderFns: __vue_staticRenderFns__ -}, __vue_inject_styles__, __vue_script__, __vue_scope_id__, __vue_is_functional_template__, __vue_module_identifier__, false, undefined, undefined, undefined); - -function styleInject(css, ref) { - if ( ref === void 0 ) ref = {}; - var insertAt = ref.insertAt; - - if (!css || typeof document === 'undefined') { return; } - - var head = document.head || document.getElementsByTagName('head')[0]; - var style = document.createElement('style'); - style.type = 'text/css'; - - if (insertAt === 'top') { - if (head.firstChild) { - head.insertBefore(style, head.firstChild); - } else { - head.appendChild(style); - } - } else { - head.appendChild(style); - } - - if (style.styleSheet) { - style.styleSheet.cssText = css; - } else { - style.appendChild(document.createTextNode(css)); - } -} - -var css_248z = ".resize-observer[data-v-8859cc6c]{position:absolute;top:0;left:0;z-index:-1;width:100%;height:100%;border:none;background-color:transparent;pointer-events:none;display:block;overflow:hidden;opacity:0}.resize-observer[data-v-8859cc6c] object{display:block;position:absolute;top:0;left:0;height:100%;width:100%;overflow:hidden;pointer-events:none;z-index:-1}"; -styleInject(css_248z); - -function install(Vue) { - var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; - if (install.installed) return; - install.installed = true; - var finalOptions = {}; - lodash_merge__WEBPACK_IMPORTED_MODULE_6___default()(finalOptions, defaultOptions, options); - plugin.options = finalOptions; - directive.options = finalOptions; - Vue.directive('tooltip', directive); - Vue.directive('close-popover', vclosepopover); - Vue.component('VPopover', __vue_component__); -} -var VTooltip = directive; -var VClosePopover = vclosepopover; -var VPopover = __vue_component__; -var plugin = { - install: install, - - get enabled() { - return state.enabled; - }, - - set enabled(value) { - state.enabled = value; - } - -}; // Auto-install - -var GlobalVue = null; - -if (typeof window !== 'undefined') { - GlobalVue = window.Vue; -} else if (typeof __webpack_require__.g !== 'undefined') { - GlobalVue = __webpack_require__.g.Vue; -} - -if (GlobalVue) { - GlobalVue.use(plugin); -} - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (plugin); - - - -/***/ }), - -/***/ "./node_modules/v-tooltip/node_modules/vue-resize/dist/vue-resize.esm.js": -/*!*******************************************************************************!*\ - !*** ./node_modules/v-tooltip/node_modules/vue-resize/dist/vue-resize.esm.js ***! - \*******************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__), -/* harmony export */ "ResizeObserver": () => (/* binding */ __vue_component__), -/* harmony export */ "install": () => (/* binding */ install) -/* harmony export */ }); -function getInternetExplorerVersion() { - var ua = window.navigator.userAgent; - var msie = ua.indexOf('MSIE '); - - if (msie > 0) { - // IE 10 or older => return version number - return parseInt(ua.substring(msie + 5, ua.indexOf('.', msie)), 10); - } - - var trident = ua.indexOf('Trident/'); - - if (trident > 0) { - // IE 11 => return version number - var rv = ua.indexOf('rv:'); - return parseInt(ua.substring(rv + 3, ua.indexOf('.', rv)), 10); - } - - var edge = ua.indexOf('Edge/'); - - if (edge > 0) { - // Edge (IE 12+) => return version number - return parseInt(ua.substring(edge + 5, ua.indexOf('.', edge)), 10); - } // other browser - - - return -1; -} - -// -var isIE; - -function initCompat() { - if (!initCompat.init) { - initCompat.init = true; - isIE = getInternetExplorerVersion() !== -1; - } -} - -var script = { - name: 'ResizeObserver', - props: { - emitOnMount: { - type: Boolean, - default: false - }, - ignoreWidth: { - type: Boolean, - default: false - }, - ignoreHeight: { - type: Boolean, - default: false - } - }, - mounted: function mounted() { - var _this = this; - - initCompat(); - this.$nextTick(function () { - _this._w = _this.$el.offsetWidth; - _this._h = _this.$el.offsetHeight; - - if (_this.emitOnMount) { - _this.emitSize(); - } - }); - var object = document.createElement('object'); - this._resizeObject = object; - object.setAttribute('aria-hidden', 'true'); - object.setAttribute('tabindex', -1); - object.onload = this.addResizeHandlers; - object.type = 'text/html'; - - if (isIE) { - this.$el.appendChild(object); - } - - object.data = 'about:blank'; - - if (!isIE) { - this.$el.appendChild(object); - } - }, - beforeDestroy: function beforeDestroy() { - this.removeResizeHandlers(); - }, - methods: { - compareAndNotify: function compareAndNotify() { - if (!this.ignoreWidth && this._w !== this.$el.offsetWidth || !this.ignoreHeight && this._h !== this.$el.offsetHeight) { - this._w = this.$el.offsetWidth; - this._h = this.$el.offsetHeight; - this.emitSize(); - } - }, - emitSize: function emitSize() { - this.$emit('notify', { - width: this._w, - height: this._h - }); - }, - addResizeHandlers: function addResizeHandlers() { - this._resizeObject.contentDocument.defaultView.addEventListener('resize', this.compareAndNotify); - - this.compareAndNotify(); - }, - removeResizeHandlers: function removeResizeHandlers() { - if (this._resizeObject && this._resizeObject.onload) { - if (!isIE && this._resizeObject.contentDocument) { - this._resizeObject.contentDocument.defaultView.removeEventListener('resize', this.compareAndNotify); - } - - this.$el.removeChild(this._resizeObject); - this._resizeObject.onload = null; - this._resizeObject = null; - } - } - } -}; - -function normalizeComponent(template, style, script, scopeId, isFunctionalTemplate, moduleIdentifier -/* server only */ -, shadowMode, createInjector, createInjectorSSR, createInjectorShadow) { - if (typeof shadowMode !== 'boolean') { - createInjectorSSR = createInjector; - createInjector = shadowMode; - shadowMode = false; - } // Vue.extend constructor export interop. - - - var options = typeof script === 'function' ? script.options : script; // render functions - - if (template && template.render) { - options.render = template.render; - options.staticRenderFns = template.staticRenderFns; - options._compiled = true; // functional template - - if (isFunctionalTemplate) { - options.functional = true; - } - } // scopedId - - - if (scopeId) { - options._scopeId = scopeId; - } - - var hook; - - if (moduleIdentifier) { - // server build - hook = function hook(context) { - // 2.3 injection - context = context || // cached call - this.$vnode && this.$vnode.ssrContext || // stateful - this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext; // functional - // 2.2 with runInNewContext: true - - if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') { - context = __VUE_SSR_CONTEXT__; - } // inject component styles - - - if (style) { - style.call(this, createInjectorSSR(context)); - } // register component module identifier for async chunk inference - - - if (context && context._registeredComponents) { - context._registeredComponents.add(moduleIdentifier); - } - }; // used by ssr in case component is cached and beforeCreate - // never gets called - - - options._ssrRegister = hook; - } else if (style) { - hook = shadowMode ? function (context) { - style.call(this, createInjectorShadow(context, this.$root.$options.shadowRoot)); - } : function (context) { - style.call(this, createInjector(context)); - }; - } - - if (hook) { - if (options.functional) { - // register for functional component in vue file - var originalRender = options.render; - - options.render = function renderWithStyleInjection(h, context) { - hook.call(context); - return originalRender(h, context); - }; - } else { - // inject component registration as beforeCreate hook - var existing = options.beforeCreate; - options.beforeCreate = existing ? [].concat(existing, hook) : [hook]; - } - } - - return script; -} - -/* script */ -var __vue_script__ = script; -/* template */ - -var __vue_render__ = function __vue_render__() { - var _vm = this; - - var _h = _vm.$createElement; - - var _c = _vm._self._c || _h; - - return _c("div", { - staticClass: "resize-observer", - attrs: { - tabindex: "-1" - } - }); -}; - -var __vue_staticRenderFns__ = []; -__vue_render__._withStripped = true; -/* style */ - -var __vue_inject_styles__ = undefined; -/* scoped */ - -var __vue_scope_id__ = "data-v-8859cc6c"; -/* module identifier */ - -var __vue_module_identifier__ = undefined; -/* functional template */ - -var __vue_is_functional_template__ = false; -/* style inject */ - -/* style inject SSR */ - -/* style inject shadow dom */ - -var __vue_component__ = /*#__PURE__*/normalizeComponent({ - render: __vue_render__, - staticRenderFns: __vue_staticRenderFns__ -}, __vue_inject_styles__, __vue_script__, __vue_scope_id__, __vue_is_functional_template__, __vue_module_identifier__, false, undefined, undefined, undefined); - -function install(Vue) { - // eslint-disable-next-line vue/component-definition-name-casing - Vue.component('resize-observer', __vue_component__); - Vue.component('ResizeObserver', __vue_component__); -} - -var plugin = { - // eslint-disable-next-line no-undef - version: "1.0.1", - install: install -}; - -var GlobalVue = null; - -if (typeof window !== 'undefined') { - GlobalVue = window.Vue; -} else if (typeof __webpack_require__.g !== 'undefined') { - GlobalVue = __webpack_require__.g.Vue; -} - -if (GlobalVue) { - GlobalVue.use(plugin); -} - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (plugin); - -//# sourceMappingURL=vue-resize.esm.js.map - - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/DotsHorizontal.vue": -/*!*******************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/DotsHorizontal.vue ***! - \*******************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _DotsHorizontal_vue_vue_type_template_id_3174c38c___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./DotsHorizontal.vue?vue&type=template&id=3174c38c& */ "./node_modules/vue-material-design-icons/DotsHorizontal.vue?vue&type=template&id=3174c38c&"); -/* harmony import */ var _DotsHorizontal_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./DotsHorizontal.vue?vue&type=script&lang=js& */ "./node_modules/vue-material-design-icons/DotsHorizontal.vue?vue&type=script&lang=js&"); -/* harmony import */ var _vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); - - - - - -/* normalize component */ -; -var component = (0,_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])( - _DotsHorizontal_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _DotsHorizontal_vue_vue_type_template_id_3174c38c___WEBPACK_IMPORTED_MODULE_0__.render, - _DotsHorizontal_vue_vue_type_template_id_3174c38c___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns, - false, - null, - null, - null - -) - -/* hot reload */ -if (false) { var api; } -component.options.__file = "node_modules/vue-material-design-icons/DotsHorizontal.vue" -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (component.exports); - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/DotsHorizontal.vue?vue&type=script&lang=js&": -/*!*******************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/DotsHorizontal.vue?vue&type=script&lang=js& ***! - \*******************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - name: "DotsHorizontalIcon", - props: { - title: { - type: String, - }, - fillColor: { - type: String, - default: "currentColor" - }, - size: { - type: Number, - default: 24 - } - } -}); - - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/DotsHorizontal.vue?vue&type=script&lang=js&": -/*!********************************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/DotsHorizontal.vue?vue&type=script&lang=js& ***! - \********************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _vue_loader_lib_index_js_vue_loader_options_DotsHorizontal_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/index.js??vue-loader-options!./DotsHorizontal.vue?vue&type=script&lang=js& */ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/DotsHorizontal.vue?vue&type=script&lang=js&"); - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_vue_loader_lib_index_js_vue_loader_options_DotsHorizontal_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); - -/***/ }), - -/***/ "./node_modules/vue-material-design-icons/DotsHorizontal.vue?vue&type=template&id=3174c38c&": -/*!**************************************************************************************************!*\ - !*** ./node_modules/vue-material-design-icons/DotsHorizontal.vue?vue&type=template&id=3174c38c& ***! - \**************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_DotsHorizontal_vue_vue_type_template_id_3174c38c___WEBPACK_IMPORTED_MODULE_0__.render), -/* harmony export */ "staticRenderFns": () => (/* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_DotsHorizontal_vue_vue_type_template_id_3174c38c___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns) -/* harmony export */ }); -/* harmony import */ var _vue_loader_lib_loaders_templateLoader_js_vue_loader_options_vue_loader_lib_index_js_vue_loader_options_DotsHorizontal_vue_vue_type_template_id_3174c38c___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../vue-loader/lib/index.js??vue-loader-options!./DotsHorizontal.vue?vue&type=template&id=3174c38c& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/DotsHorizontal.vue?vue&type=template&id=3174c38c&"); - - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/DotsHorizontal.vue?vue&type=template&id=3174c38c&": -/*!*****************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/DotsHorizontal.vue?vue&type=template&id=3174c38c& ***! - \*****************************************************************************************************************************************************************************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "render": () => (/* binding */ render), -/* harmony export */ "staticRenderFns": () => (/* binding */ staticRenderFns) -/* harmony export */ }); -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c( - "span", - _vm._b( - { - staticClass: "material-design-icon dots-horizontal-icon", - attrs: { - "aria-hidden": !_vm.title, - "aria-label": _vm.title, - role: "img", - }, - on: { - click: function ($event) { - return _vm.$emit("click", $event) - }, - }, - }, - "span", - _vm.$attrs, - false - ), - [ - _c( - "svg", - { - staticClass: "material-design-icon__svg", - attrs: { - fill: _vm.fillColor, - width: _vm.size, - height: _vm.size, - viewBox: "0 0 24 24", - }, - }, - [ - _c( - "path", - { - attrs: { - d: "M16,12A2,2 0 0,1 18,10A2,2 0 0,1 20,12A2,2 0 0,1 18,14A2,2 0 0,1 16,12M10,12A2,2 0 0,1 12,10A2,2 0 0,1 14,12A2,2 0 0,1 12,14A2,2 0 0,1 10,12M4,12A2,2 0 0,1 6,10A2,2 0 0,1 8,12A2,2 0 0,1 6,14A2,2 0 0,1 4,12Z", - }, - }, - [_vm.title ? _c("title", [_vm._v(_vm._s(_vm.title))]) : _vm._e()] - ), - ] - ), - ] - ) -} -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), - -/***/ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js": -/*!*******************************************************************!*\ - !*** ./node_modules/@babel/runtime/helpers/esm/classCallCheck.js ***! - \*******************************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ _classCallCheck) -/* harmony export */ }); -function _classCallCheck(instance, Constructor) { - if (!(instance instanceof Constructor)) { - throw new TypeError("Cannot call a class as a function"); - } -} - -/***/ }), - -/***/ "./node_modules/@babel/runtime/helpers/esm/createClass.js": -/*!****************************************************************!*\ - !*** ./node_modules/@babel/runtime/helpers/esm/createClass.js ***! - \****************************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ _createClass) -/* harmony export */ }); -function _defineProperties(target, props) { - for (var i = 0; i < props.length; i++) { - var descriptor = props[i]; - descriptor.enumerable = descriptor.enumerable || false; - descriptor.configurable = true; - if ("value" in descriptor) descriptor.writable = true; - Object.defineProperty(target, descriptor.key, descriptor); - } -} - -function _createClass(Constructor, protoProps, staticProps) { - if (protoProps) _defineProperties(Constructor.prototype, protoProps); - if (staticProps) _defineProperties(Constructor, staticProps); - Object.defineProperty(Constructor, "prototype", { - writable: false - }); - return Constructor; -} - -/***/ }), - -/***/ "./node_modules/@babel/runtime/helpers/esm/defineProperty.js": -/*!*******************************************************************!*\ - !*** ./node_modules/@babel/runtime/helpers/esm/defineProperty.js ***! - \*******************************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ _defineProperty) -/* harmony export */ }); -function _defineProperty(obj, key, value) { - if (key in obj) { - Object.defineProperty(obj, key, { - value: value, - enumerable: true, - configurable: true, - writable: true - }); - } else { - obj[key] = value; - } - - return obj; -} - -/***/ }), - -/***/ "./node_modules/@babel/runtime/helpers/esm/typeof.js": -/*!***********************************************************!*\ - !*** ./node_modules/@babel/runtime/helpers/esm/typeof.js ***! - \***********************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ _typeof) -/* harmony export */ }); -function _typeof(obj) { - "@babel/helpers - typeof"; - - return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { - return typeof obj; - } : function (obj) { - return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; - }, _typeof(obj); -} - -/***/ }) - -}]); -//# sourceMappingURL=photos-vendors-node_modules_nextcloud_l10n_dist_gettext_js-node_modules_nextcloud_event-bus_dist_ind-5dea69.js.map?v=f8effd5dee87c97e1d61 \ No newline at end of file diff --git a/js/photos-vendors-node_modules_nextcloud_l10n_dist_gettext_js-node_modules_nextcloud_event-bus_dist_ind-5dea69.js.map b/js/photos-vendors-node_modules_nextcloud_l10n_dist_gettext_js-node_modules_nextcloud_event-bus_dist_ind-5dea69.js.map deleted file mode 100644 index e38659e0c..000000000 --- a/js/photos-vendors-node_modules_nextcloud_l10n_dist_gettext_js-node_modules_nextcloud_event-bus_dist_ind-5dea69.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"photos-vendors-node_modules_nextcloud_l10n_dist_gettext_js-node_modules_nextcloud_event-bus_dist_ind-5dea69.js?v=f8effd5dee87c97e1d61","mappings":";;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACrHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;AC/HA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACvHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;AC7DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;AC3UA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;AC5CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;ACrBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;AC7GA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACTA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AClGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AClCA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AC/CA;;;;;;;;;;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACpBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AC5DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACzBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACrCA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AC/BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AC/BA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AC/BA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACLA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACLA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACpBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACxBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AChDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACtBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AC3BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACpBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACxBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AC7BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AC3BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AC3BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AClFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AC9CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AC3DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AC7BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AChCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACzCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AC7FA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACrBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AClCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACvCA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACpCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACxBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACVA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACnFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AC/GA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACzFA;AACA;AACA;AACA;;;;;;;;;;;ACHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AChBA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AC7CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AC7BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACzDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AC7BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACtBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACtBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACxBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AC7BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AClCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACzBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACpBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACrBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACjBA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACLA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AC7BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACrBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACnCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACpBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACpCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACjCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACzBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACzBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACpCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACpBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACnCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACzBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AChCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;AChCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACrCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AClCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACpCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AClCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AC9BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AC5BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AC7DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACpCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AC/BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACtCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACtBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;AC/BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACvjFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;AC1/DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;AChRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;;;;;;;;;;;;;;;ACtCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;ACnCA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;ACrDA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;ACJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;ACbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sources":["webpack:///photos/node_modules/@nextcloud/l10n/dist/gettext.js","webpack:///photos/node_modules/@nextcloud/event-bus/dist/ProxyBus.js","webpack:///photos/node_modules/@nextcloud/event-bus/dist/SimpleBus.js","webpack:///photos/node_modules/@nextcloud/event-bus/dist/index.js","webpack:///photos/node_modules/@nextcloud/event-bus/node_modules/semver/classes/semver.js","webpack:///photos/node_modules/@nextcloud/event-bus/node_modules/semver/functions/major.js","webpack:///photos/node_modules/@nextcloud/event-bus/node_modules/semver/functions/parse.js","webpack:///photos/node_modules/@nextcloud/event-bus/node_modules/semver/functions/valid.js","webpack:///photos/node_modules/@nextcloud/event-bus/node_modules/semver/internal/constants.js","webpack:///photos/node_modules/@nextcloud/event-bus/node_modules/semver/internal/debug.js","webpack:///photos/node_modules/@nextcloud/event-bus/node_modules/semver/internal/identifiers.js","webpack:///photos/node_modules/@nextcloud/event-bus/node_modules/semver/internal/re.js","webpack:///photos/node_modules/core-js/internals/a-possible-prototype.js","webpack:///photos/node_modules/core-js/internals/add-to-unscopables.js","webpack:///photos/node_modules/core-js/internals/correct-prototype-getter.js","webpack:///photos/node_modules/core-js/internals/create-iterator-constructor.js","webpack:///photos/node_modules/core-js/internals/define-iterator.js","webpack:///photos/node_modules/core-js/internals/dom-iterables.js","webpack:///photos/node_modules/core-js/internals/dom-token-list-prototype.js","webpack:///photos/node_modules/core-js/internals/iterators-core.js","webpack:///photos/node_modules/core-js/internals/iterators.js","webpack:///photos/node_modules/core-js/internals/object-get-prototype-of.js","webpack:///photos/node_modules/core-js/internals/object-set-prototype-of.js","webpack:///photos/node_modules/core-js/internals/object-to-string.js","webpack:///photos/node_modules/core-js/internals/regexp-get-flags.js","webpack:///photos/node_modules/core-js/internals/set-to-string-tag.js","webpack:///photos/node_modules/core-js/modules/es.array.iterator.js","webpack:///photos/node_modules/core-js/modules/es.object.to-string.js","webpack:///photos/node_modules/core-js/modules/es.regexp.to-string.js","webpack:///photos/node_modules/core-js/modules/web.dom-collections.iterator.js","webpack:///photos/node_modules/lodash/_DataView.js","webpack:///photos/node_modules/lodash/_Hash.js","webpack:///photos/node_modules/lodash/_ListCache.js","webpack:///photos/node_modules/lodash/_Map.js","webpack:///photos/node_modules/lodash/_MapCache.js","webpack:///photos/node_modules/lodash/_Promise.js","webpack:///photos/node_modules/lodash/_Set.js","webpack:///photos/node_modules/lodash/_SetCache.js","webpack:///photos/node_modules/lodash/_Stack.js","webpack:///photos/node_modules/lodash/_Symbol.js","webpack:///photos/node_modules/lodash/_Uint8Array.js","webpack:///photos/node_modules/lodash/_WeakMap.js","webpack:///photos/node_modules/lodash/_apply.js","webpack:///photos/node_modules/lodash/_arrayFilter.js","webpack:///photos/node_modules/lodash/_arrayLikeKeys.js","webpack:///photos/node_modules/lodash/_arrayPush.js","webpack:///photos/node_modules/lodash/_arraySome.js","webpack:///photos/node_modules/lodash/_assignMergeValue.js","webpack:///photos/node_modules/lodash/_assignValue.js","webpack:///photos/node_modules/lodash/_assocIndexOf.js","webpack:///photos/node_modules/lodash/_baseAssignValue.js","webpack:///photos/node_modules/lodash/_baseCreate.js","webpack:///photos/node_modules/lodash/_baseFor.js","webpack:///photos/node_modules/lodash/_baseGetAllKeys.js","webpack:///photos/node_modules/lodash/_baseGetTag.js","webpack:///photos/node_modules/lodash/_baseIsArguments.js","webpack:///photos/node_modules/lodash/_baseIsEqual.js","webpack:///photos/node_modules/lodash/_baseIsEqualDeep.js","webpack:///photos/node_modules/lodash/_baseIsNative.js","webpack:///photos/node_modules/lodash/_baseIsTypedArray.js","webpack:///photos/node_modules/lodash/_baseKeys.js","webpack:///photos/node_modules/lodash/_baseKeysIn.js","webpack:///photos/node_modules/lodash/_baseMerge.js","webpack:///photos/node_modules/lodash/_baseMergeDeep.js","webpack:///photos/node_modules/lodash/_baseRest.js","webpack:///photos/node_modules/lodash/_baseSetToString.js","webpack:///photos/node_modules/lodash/_baseTimes.js","webpack:///photos/node_modules/lodash/_baseUnary.js","webpack:///photos/node_modules/lodash/_cacheHas.js","webpack:///photos/node_modules/lodash/_cloneArrayBuffer.js","webpack:///photos/node_modules/lodash/_cloneBuffer.js","webpack:///photos/node_modules/lodash/_cloneTypedArray.js","webpack:///photos/node_modules/lodash/_copyArray.js","webpack:///photos/node_modules/lodash/_copyObject.js","webpack:///photos/node_modules/lodash/_coreJsData.js","webpack:///photos/node_modules/lodash/_createAssigner.js","webpack:///photos/node_modules/lodash/_createBaseFor.js","webpack:///photos/node_modules/lodash/_defineProperty.js","webpack:///photos/node_modules/lodash/_equalArrays.js","webpack:///photos/node_modules/lodash/_equalByTag.js","webpack:///photos/node_modules/lodash/_equalObjects.js","webpack:///photos/node_modules/lodash/_freeGlobal.js","webpack:///photos/node_modules/lodash/_getAllKeys.js","webpack:///photos/node_modules/lodash/_getMapData.js","webpack:///photos/node_modules/lodash/_getNative.js","webpack:///photos/node_modules/lodash/_getPrototype.js","webpack:///photos/node_modules/lodash/_getRawTag.js","webpack:///photos/node_modules/lodash/_getSymbols.js","webpack:///photos/node_modules/lodash/_getTag.js","webpack:///photos/node_modules/lodash/_getValue.js","webpack:///photos/node_modules/lodash/_hashClear.js","webpack:///photos/node_modules/lodash/_hashDelete.js","webpack:///photos/node_modules/lodash/_hashGet.js","webpack:///photos/node_modules/lodash/_hashHas.js","webpack:///photos/node_modules/lodash/_hashSet.js","webpack:///photos/node_modules/lodash/_initCloneObject.js","webpack:///photos/node_modules/lodash/_isIndex.js","webpack:///photos/node_modules/lodash/_isIterateeCall.js","webpack:///photos/node_modules/lodash/_isKeyable.js","webpack:///photos/node_modules/lodash/_isMasked.js","webpack:///photos/node_modules/lodash/_isPrototype.js","webpack:///photos/node_modules/lodash/_listCacheClear.js","webpack:///photos/node_modules/lodash/_listCacheDelete.js","webpack:///photos/node_modules/lodash/_listCacheGet.js","webpack:///photos/node_modules/lodash/_listCacheHas.js","webpack:///photos/node_modules/lodash/_listCacheSet.js","webpack:///photos/node_modules/lodash/_mapCacheClear.js","webpack:///photos/node_modules/lodash/_mapCacheDelete.js","webpack:///photos/node_modules/lodash/_mapCacheGet.js","webpack:///photos/node_modules/lodash/_mapCacheHas.js","webpack:///photos/node_modules/lodash/_mapCacheSet.js","webpack:///photos/node_modules/lodash/_mapToArray.js","webpack:///photos/node_modules/lodash/_nativeCreate.js","webpack:///photos/node_modules/lodash/_nativeKeys.js","webpack:///photos/node_modules/lodash/_nativeKeysIn.js","webpack:///photos/node_modules/lodash/_nodeUtil.js","webpack:///photos/node_modules/lodash/_objectToString.js","webpack:///photos/node_modules/lodash/_overArg.js","webpack:///photos/node_modules/lodash/_overRest.js","webpack:///photos/node_modules/lodash/_root.js","webpack:///photos/node_modules/lodash/_safeGet.js","webpack:///photos/node_modules/lodash/_setCacheAdd.js","webpack:///photos/node_modules/lodash/_setCacheHas.js","webpack:///photos/node_modules/lodash/_setToArray.js","webpack:///photos/node_modules/lodash/_setToString.js","webpack:///photos/node_modules/lodash/_shortOut.js","webpack:///photos/node_modules/lodash/_stackClear.js","webpack:///photos/node_modules/lodash/_stackDelete.js","webpack:///photos/node_modules/lodash/_stackGet.js","webpack:///photos/node_modules/lodash/_stackHas.js","webpack:///photos/node_modules/lodash/_stackSet.js","webpack:///photos/node_modules/lodash/_toSource.js","webpack:///photos/node_modules/lodash/constant.js","webpack:///photos/node_modules/lodash/eq.js","webpack:///photos/node_modules/lodash/identity.js","webpack:///photos/node_modules/lodash/isArguments.js","webpack:///photos/node_modules/lodash/isArray.js","webpack:///photos/node_modules/lodash/isArrayLike.js","webpack:///photos/node_modules/lodash/isArrayLikeObject.js","webpack:///photos/node_modules/lodash/isBuffer.js","webpack:///photos/node_modules/lodash/isEqual.js","webpack:///photos/node_modules/lodash/isFunction.js","webpack:///photos/node_modules/lodash/isLength.js","webpack:///photos/node_modules/lodash/isObject.js","webpack:///photos/node_modules/lodash/isObjectLike.js","webpack:///photos/node_modules/lodash/isPlainObject.js","webpack:///photos/node_modules/lodash/isTypedArray.js","webpack:///photos/node_modules/lodash/keys.js","webpack:///photos/node_modules/lodash/keysIn.js","webpack:///photos/node_modules/lodash/merge.js","webpack:///photos/node_modules/lodash/stubArray.js","webpack:///photos/node_modules/lodash/stubFalse.js","webpack:///photos/node_modules/lodash/toPlainObject.js","webpack:///photos/node_modules/popper.js/dist/esm/popper.js","webpack:///photos/node_modules/v-tooltip/dist/v-tooltip.esm.js","webpack:///photos/node_modules/v-tooltip/node_modules/vue-resize/dist/vue-resize.esm.js","webpack:///photos/node_modules/vue-material-design-icons/DotsHorizontal.vue","webpack:///photos/node_modules/vue-material-design-icons/DotsHorizontal.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/DotsHorizontal.vue?6c70","webpack:///photos/node_modules/vue-material-design-icons/DotsHorizontal.vue?vue&type=template&id=3174c38c&","webpack:///photos/node_modules/@babel/runtime/helpers/esm/classCallCheck.js","webpack:///photos/node_modules/@babel/runtime/helpers/esm/createClass.js","webpack:///photos/node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack:///photos/node_modules/@babel/runtime/helpers/esm/typeof.js"],"sourcesContent":["\"use strict\";\n\nrequire(\"core-js/modules/es.object.to-string\");\n\nrequire(\"core-js/modules/es.regexp.exec\");\n\nrequire(\"core-js/modules/es.regexp.to-string\");\n\nrequire(\"core-js/modules/es.string.replace\");\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getGettextBuilder = getGettextBuilder;\n\nvar _nodeGettext = _interopRequireDefault(require(\"node-gettext\"));\n\nvar _ = require(\".\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nvar GettextBuilder = /*#__PURE__*/function () {\n function GettextBuilder() {\n _classCallCheck(this, GettextBuilder);\n\n this.translations = {};\n this.debug = false;\n }\n\n _createClass(GettextBuilder, [{\n key: \"setLanguage\",\n value: function setLanguage(language) {\n this.locale = language;\n return this;\n }\n }, {\n key: \"detectLocale\",\n value: function detectLocale() {\n return this.setLanguage((0, _.getLanguage)().replace('-', '_'));\n }\n }, {\n key: \"addTranslation\",\n value: function addTranslation(language, data) {\n this.translations[language] = data;\n return this;\n }\n }, {\n key: \"enableDebugMode\",\n value: function enableDebugMode() {\n this.debug = true;\n return this;\n }\n }, {\n key: \"build\",\n value: function build() {\n return new GettextWrapper(this.locale || 'en', this.translations, this.debug);\n }\n }]);\n\n return GettextBuilder;\n}();\n\nvar GettextWrapper = /*#__PURE__*/function () {\n function GettextWrapper(locale, data, debug) {\n _classCallCheck(this, GettextWrapper);\n\n this.gt = new _nodeGettext.default({\n debug: debug,\n sourceLocale: 'en'\n });\n\n for (var key in data) {\n this.gt.addTranslations(key, 'messages', data[key]);\n }\n\n this.gt.setLocale(locale);\n }\n\n _createClass(GettextWrapper, [{\n key: \"subtitudePlaceholders\",\n value: function subtitudePlaceholders(translated, vars) {\n return translated.replace(/{([^{}]*)}/g, function (a, b) {\n var r = vars[b];\n\n if (typeof r === 'string' || typeof r === 'number') {\n return r.toString();\n } else {\n return a;\n }\n });\n }\n }, {\n key: \"gettext\",\n value: function gettext(original) {\n var placeholders = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n return this.subtitudePlaceholders(this.gt.gettext(original), placeholders);\n }\n }, {\n key: \"ngettext\",\n value: function ngettext(singular, plural, count) {\n var placeholders = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n return this.subtitudePlaceholders(this.gt.ngettext(singular, plural, count).replace(/%n/g, count.toString()), placeholders);\n }\n }]);\n\n return GettextWrapper;\n}();\n\nfunction getGettextBuilder() {\n return new GettextBuilder();\n}\n//# sourceMappingURL=gettext.js.map","\"use strict\";\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.ProxyBus = void 0;\n\nvar _valid = _interopRequireDefault(require(\"semver/functions/valid\"));\n\nvar _major = _interopRequireDefault(require(\"semver/functions/major\"));\n\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nvar packageJson = {\n name: \"@nextcloud/event-bus\",\n version: \"2.1.1\",\n description: \"\",\n main: \"dist/index.js\",\n types: \"dist/index.d.ts\",\n scripts: {\n build: \"babel ./lib --out-dir dist --extensions '.ts,.tsx' --source-maps && tsc --emitDeclarationOnly\",\n \"build:doc\": \"typedoc --out dist/doc lib/index.ts && touch dist/doc/.nojekyll\",\n \"check-types\": \"tsc\",\n dev: \"babel ./lib --out-dir dist --extensions '.ts,.tsx' --watch\",\n test: \"jest\",\n \"test:watch\": \"jest --watchAll\"\n },\n keywords: [\"nextcloud\"],\n homepage: \"https://github.com/nextcloud/nextcloud-event-bus#readme\",\n author: \"Christoph Wurst\",\n license: \"GPL-3.0-or-later\",\n repository: {\n type: \"git\",\n url: \"https://github.com/nextcloud/nextcloud-event-bus\"\n },\n dependencies: {\n \"@types/semver\": \"^7.1.0\",\n \"core-js\": \"^3.6.2\",\n semver: \"^7.3.2\"\n },\n devDependencies: {\n \"@babel/cli\": \"^7.6.0\",\n \"@babel/core\": \"^7.6.0\",\n \"@babel/plugin-proposal-class-properties\": \"^7.5.5\",\n \"@babel/preset-env\": \"^7.6.0\",\n \"@babel/preset-typescript\": \"^7.6.0\",\n \"@nextcloud/browserslist-config\": \"^2.1.0\",\n \"@rollup/plugin-babel\": \"^5.3.0\",\n \"@rollup/plugin-commonjs\": \"^21.0.1\",\n \"@rollup/plugin-node-resolve\": \"^13.0.0\",\n \"babel-jest\": \"^27.2.1\",\n \"babel-plugin-inline-json-import\": \"^0.3.2\",\n jest: \"^26.0.1\",\n rollup: \"^2.47.0\",\n \"rollup-plugin-inject-process-env\": \"^1.3.1\",\n \"rollup-plugin-typescript2\": \"^0.30.0\",\n typedoc: \"^0.22.4\",\n typescript: \"^4.0.2\"\n },\n browserslist: [\"extends @nextcloud/browserslist-config\"]\n};\n\nvar ProxyBus = /*#__PURE__*/function () {\n function ProxyBus(bus) {\n _classCallCheck(this, ProxyBus);\n\n _defineProperty(this, \"bus\", void 0);\n\n if (typeof bus.getVersion !== 'function' || !(0, _valid.default)(bus.getVersion())) {\n console.warn('Proxying an event bus with an unknown or invalid version');\n } else if ((0, _major.default)(bus.getVersion()) !== (0, _major.default)(this.getVersion())) {\n console.warn('Proxying an event bus of version ' + bus.getVersion() + ' with ' + this.getVersion());\n }\n\n this.bus = bus;\n }\n\n _createClass(ProxyBus, [{\n key: \"getVersion\",\n value: function getVersion() {\n return packageJson.version;\n }\n }, {\n key: \"subscribe\",\n value: function subscribe(name, handler) {\n this.bus.subscribe(name, handler);\n }\n }, {\n key: \"unsubscribe\",\n value: function unsubscribe(name, handler) {\n this.bus.unsubscribe(name, handler);\n }\n }, {\n key: \"emit\",\n value: function emit(name, event) {\n this.bus.emit(name, event);\n }\n }]);\n\n return ProxyBus;\n}();\n\nexports.ProxyBus = ProxyBus;","\"use strict\";\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.SimpleBus = void 0;\n\nrequire(\"core-js/modules/web.dom-collections.iterator.js\");\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nvar packageJson = {\n name: \"@nextcloud/event-bus\",\n version: \"2.1.1\",\n description: \"\",\n main: \"dist/index.js\",\n types: \"dist/index.d.ts\",\n scripts: {\n build: \"babel ./lib --out-dir dist --extensions '.ts,.tsx' --source-maps && tsc --emitDeclarationOnly\",\n \"build:doc\": \"typedoc --out dist/doc lib/index.ts && touch dist/doc/.nojekyll\",\n \"check-types\": \"tsc\",\n dev: \"babel ./lib --out-dir dist --extensions '.ts,.tsx' --watch\",\n test: \"jest\",\n \"test:watch\": \"jest --watchAll\"\n },\n keywords: [\"nextcloud\"],\n homepage: \"https://github.com/nextcloud/nextcloud-event-bus#readme\",\n author: \"Christoph Wurst\",\n license: \"GPL-3.0-or-later\",\n repository: {\n type: \"git\",\n url: \"https://github.com/nextcloud/nextcloud-event-bus\"\n },\n dependencies: {\n \"@types/semver\": \"^7.1.0\",\n \"core-js\": \"^3.6.2\",\n semver: \"^7.3.2\"\n },\n devDependencies: {\n \"@babel/cli\": \"^7.6.0\",\n \"@babel/core\": \"^7.6.0\",\n \"@babel/plugin-proposal-class-properties\": \"^7.5.5\",\n \"@babel/preset-env\": \"^7.6.0\",\n \"@babel/preset-typescript\": \"^7.6.0\",\n \"@nextcloud/browserslist-config\": \"^2.1.0\",\n \"@rollup/plugin-babel\": \"^5.3.0\",\n \"@rollup/plugin-commonjs\": \"^21.0.1\",\n \"@rollup/plugin-node-resolve\": \"^13.0.0\",\n \"babel-jest\": \"^27.2.1\",\n \"babel-plugin-inline-json-import\": \"^0.3.2\",\n jest: \"^26.0.1\",\n rollup: \"^2.47.0\",\n \"rollup-plugin-inject-process-env\": \"^1.3.1\",\n \"rollup-plugin-typescript2\": \"^0.30.0\",\n typedoc: \"^0.22.4\",\n typescript: \"^4.0.2\"\n },\n browserslist: [\"extends @nextcloud/browserslist-config\"]\n};\n\nvar SimpleBus = /*#__PURE__*/function () {\n function SimpleBus() {\n _classCallCheck(this, SimpleBus);\n\n _defineProperty(this, \"handlers\", new Map());\n }\n\n _createClass(SimpleBus, [{\n key: \"getVersion\",\n value: function getVersion() {\n return packageJson.version;\n }\n }, {\n key: \"subscribe\",\n value: function subscribe(name, handler) {\n this.handlers.set(name, (this.handlers.get(name) || []).concat(handler));\n }\n }, {\n key: \"unsubscribe\",\n value: function unsubscribe(name, handler) {\n this.handlers.set(name, (this.handlers.get(name) || []).filter(function (h) {\n return h != handler;\n }));\n }\n }, {\n key: \"emit\",\n value: function emit(name, event) {\n (this.handlers.get(name) || []).forEach(function (h) {\n try {\n h(event);\n } catch (e) {\n console.error('could not invoke event listener', e);\n }\n });\n }\n }]);\n\n return SimpleBus;\n}();\n\nexports.SimpleBus = SimpleBus;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.emit = emit;\nexports.subscribe = subscribe;\nexports.unsubscribe = unsubscribe;\n\nvar _ProxyBus = require(\"./ProxyBus\");\n\nvar _SimpleBus = require(\"./SimpleBus\");\n\nfunction getBus() {\n if (typeof window.OC !== 'undefined' && window.OC._eventBus && typeof window._nc_event_bus === 'undefined') {\n console.warn('found old event bus instance at OC._eventBus. Update your version!');\n window._nc_event_bus = window.OC._eventBus;\n } // Either use an existing event bus instance or create one\n\n\n if (typeof window._nc_event_bus !== 'undefined') {\n return new _ProxyBus.ProxyBus(window._nc_event_bus);\n } else {\n return window._nc_event_bus = new _SimpleBus.SimpleBus();\n }\n}\n\nvar bus = getBus();\n/**\n * Register an event listener\n *\n * @param name name of the event\n * @param handler callback invoked for every matching event emitted on the bus\n */\n\nfunction subscribe(name, handler) {\n bus.subscribe(name, handler);\n}\n/**\n * Unregister a previously registered event listener\n *\n * Note: doesn't work with anonymous functions (closures). Use method of an object or store listener function in variable.\n *\n * @param name name of the event\n * @param handler callback passed to `subscribed`\n */\n\n\nfunction unsubscribe(name, handler) {\n bus.unsubscribe(name, handler);\n}\n/**\n * Emit an event\n *\n * @param name name of the event\n * @param event event payload\n */\n\n\nfunction emit(name, event) {\n bus.emit(name, event);\n}","function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\n\nvar debug = require('../internal/debug');\n\nvar _require = require('../internal/constants'),\n MAX_LENGTH = _require.MAX_LENGTH,\n MAX_SAFE_INTEGER = _require.MAX_SAFE_INTEGER;\n\nvar _require2 = require('../internal/re'),\n re = _require2.re,\n t = _require2.t;\n\nvar _require3 = require('../internal/identifiers'),\n compareIdentifiers = _require3.compareIdentifiers;\n\nvar SemVer = /*#__PURE__*/function () {\n function SemVer(version, options) {\n _classCallCheck(this, SemVer);\n\n if (!options || _typeof(options) !== 'object') {\n options = {\n loose: !!options,\n includePrerelease: false\n };\n }\n\n if (version instanceof SemVer) {\n if (version.loose === !!options.loose && version.includePrerelease === !!options.includePrerelease) {\n return version;\n } else {\n version = version.version;\n }\n } else if (typeof version !== 'string') {\n throw new TypeError(\"Invalid Version: \".concat(version));\n }\n\n if (version.length > MAX_LENGTH) {\n throw new TypeError(\"version is longer than \".concat(MAX_LENGTH, \" characters\"));\n }\n\n debug('SemVer', version, options);\n this.options = options;\n this.loose = !!options.loose; // this isn't actually relevant for versions, but keep it so that we\n // don't run into trouble passing this.options around.\n\n this.includePrerelease = !!options.includePrerelease;\n var m = version.trim().match(options.loose ? re[t.LOOSE] : re[t.FULL]);\n\n if (!m) {\n throw new TypeError(\"Invalid Version: \".concat(version));\n }\n\n this.raw = version; // these are actually numbers\n\n this.major = +m[1];\n this.minor = +m[2];\n this.patch = +m[3];\n\n if (this.major > MAX_SAFE_INTEGER || this.major < 0) {\n throw new TypeError('Invalid major version');\n }\n\n if (this.minor > MAX_SAFE_INTEGER || this.minor < 0) {\n throw new TypeError('Invalid minor version');\n }\n\n if (this.patch > MAX_SAFE_INTEGER || this.patch < 0) {\n throw new TypeError('Invalid patch version');\n } // numberify any prerelease numeric ids\n\n\n if (!m[4]) {\n this.prerelease = [];\n } else {\n this.prerelease = m[4].split('.').map(function (id) {\n if (/^[0-9]+$/.test(id)) {\n var num = +id;\n\n if (num >= 0 && num < MAX_SAFE_INTEGER) {\n return num;\n }\n }\n\n return id;\n });\n }\n\n this.build = m[5] ? m[5].split('.') : [];\n this.format();\n }\n\n _createClass(SemVer, [{\n key: \"format\",\n value: function format() {\n this.version = \"\".concat(this.major, \".\").concat(this.minor, \".\").concat(this.patch);\n\n if (this.prerelease.length) {\n this.version += \"-\".concat(this.prerelease.join('.'));\n }\n\n return this.version;\n }\n }, {\n key: \"toString\",\n value: function toString() {\n return this.version;\n }\n }, {\n key: \"compare\",\n value: function compare(other) {\n debug('SemVer.compare', this.version, this.options, other);\n\n if (!(other instanceof SemVer)) {\n if (typeof other === 'string' && other === this.version) {\n return 0;\n }\n\n other = new SemVer(other, this.options);\n }\n\n if (other.version === this.version) {\n return 0;\n }\n\n return this.compareMain(other) || this.comparePre(other);\n }\n }, {\n key: \"compareMain\",\n value: function compareMain(other) {\n if (!(other instanceof SemVer)) {\n other = new SemVer(other, this.options);\n }\n\n return compareIdentifiers(this.major, other.major) || compareIdentifiers(this.minor, other.minor) || compareIdentifiers(this.patch, other.patch);\n }\n }, {\n key: \"comparePre\",\n value: function comparePre(other) {\n if (!(other instanceof SemVer)) {\n other = new SemVer(other, this.options);\n } // NOT having a prerelease is > having one\n\n\n if (this.prerelease.length && !other.prerelease.length) {\n return -1;\n } else if (!this.prerelease.length && other.prerelease.length) {\n return 1;\n } else if (!this.prerelease.length && !other.prerelease.length) {\n return 0;\n }\n\n var i = 0;\n\n do {\n var a = this.prerelease[i];\n var b = other.prerelease[i];\n debug('prerelease compare', i, a, b);\n\n if (a === undefined && b === undefined) {\n return 0;\n } else if (b === undefined) {\n return 1;\n } else if (a === undefined) {\n return -1;\n } else if (a === b) {\n continue;\n } else {\n return compareIdentifiers(a, b);\n }\n } while (++i);\n }\n }, {\n key: \"compareBuild\",\n value: function compareBuild(other) {\n if (!(other instanceof SemVer)) {\n other = new SemVer(other, this.options);\n }\n\n var i = 0;\n\n do {\n var a = this.build[i];\n var b = other.build[i];\n debug('prerelease compare', i, a, b);\n\n if (a === undefined && b === undefined) {\n return 0;\n } else if (b === undefined) {\n return 1;\n } else if (a === undefined) {\n return -1;\n } else if (a === b) {\n continue;\n } else {\n return compareIdentifiers(a, b);\n }\n } while (++i);\n } // preminor will bump the version up to the next minor release, and immediately\n // down to pre-release. premajor and prepatch work the same way.\n\n }, {\n key: \"inc\",\n value: function inc(release, identifier) {\n switch (release) {\n case 'premajor':\n this.prerelease.length = 0;\n this.patch = 0;\n this.minor = 0;\n this.major++;\n this.inc('pre', identifier);\n break;\n\n case 'preminor':\n this.prerelease.length = 0;\n this.patch = 0;\n this.minor++;\n this.inc('pre', identifier);\n break;\n\n case 'prepatch':\n // If this is already a prerelease, it will bump to the next version\n // drop any prereleases that might already exist, since they are not\n // relevant at this point.\n this.prerelease.length = 0;\n this.inc('patch', identifier);\n this.inc('pre', identifier);\n break;\n // If the input is a non-prerelease version, this acts the same as\n // prepatch.\n\n case 'prerelease':\n if (this.prerelease.length === 0) {\n this.inc('patch', identifier);\n }\n\n this.inc('pre', identifier);\n break;\n\n case 'major':\n // If this is a pre-major version, bump up to the same major version.\n // Otherwise increment major.\n // 1.0.0-5 bumps to 1.0.0\n // 1.1.0 bumps to 2.0.0\n if (this.minor !== 0 || this.patch !== 0 || this.prerelease.length === 0) {\n this.major++;\n }\n\n this.minor = 0;\n this.patch = 0;\n this.prerelease = [];\n break;\n\n case 'minor':\n // If this is a pre-minor version, bump up to the same minor version.\n // Otherwise increment minor.\n // 1.2.0-5 bumps to 1.2.0\n // 1.2.1 bumps to 1.3.0\n if (this.patch !== 0 || this.prerelease.length === 0) {\n this.minor++;\n }\n\n this.patch = 0;\n this.prerelease = [];\n break;\n\n case 'patch':\n // If this is not a pre-release version, it will increment the patch.\n // If it is a pre-release it will bump up to the same patch version.\n // 1.2.0-5 patches to 1.2.0\n // 1.2.0 patches to 1.2.1\n if (this.prerelease.length === 0) {\n this.patch++;\n }\n\n this.prerelease = [];\n break;\n // This probably shouldn't be used publicly.\n // 1.0.0 'pre' would become 1.0.0-0 which is the wrong direction.\n\n case 'pre':\n if (this.prerelease.length === 0) {\n this.prerelease = [0];\n } else {\n var i = this.prerelease.length;\n\n while (--i >= 0) {\n if (typeof this.prerelease[i] === 'number') {\n this.prerelease[i]++;\n i = -2;\n }\n }\n\n if (i === -1) {\n // didn't increment anything\n this.prerelease.push(0);\n }\n }\n\n if (identifier) {\n // 1.2.0-beta.1 bumps to 1.2.0-beta.2,\n // 1.2.0-beta.fooblz or 1.2.0-beta bumps to 1.2.0-beta.0\n if (this.prerelease[0] === identifier) {\n if (isNaN(this.prerelease[1])) {\n this.prerelease = [identifier, 0];\n }\n } else {\n this.prerelease = [identifier, 0];\n }\n }\n\n break;\n\n default:\n throw new Error(\"invalid increment argument: \".concat(release));\n }\n\n this.format();\n this.raw = this.version;\n return this;\n }\n }]);\n\n return SemVer;\n}();\n\nmodule.exports = SemVer;","var SemVer = require('../classes/semver');\n\nvar major = function major(a, loose) {\n return new SemVer(a, loose).major;\n};\n\nmodule.exports = major;","function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\n\nvar _require = require('../internal/constants'),\n MAX_LENGTH = _require.MAX_LENGTH;\n\nvar _require2 = require('../internal/re'),\n re = _require2.re,\n t = _require2.t;\n\nvar SemVer = require('../classes/semver');\n\nvar parse = function parse(version, options) {\n if (!options || _typeof(options) !== 'object') {\n options = {\n loose: !!options,\n includePrerelease: false\n };\n }\n\n if (version instanceof SemVer) {\n return version;\n }\n\n if (typeof version !== 'string') {\n return null;\n }\n\n if (version.length > MAX_LENGTH) {\n return null;\n }\n\n var r = options.loose ? re[t.LOOSE] : re[t.FULL];\n\n if (!r.test(version)) {\n return null;\n }\n\n try {\n return new SemVer(version, options);\n } catch (er) {\n return null;\n }\n};\n\nmodule.exports = parse;","var parse = require('./parse');\n\nvar valid = function valid(version, options) {\n var v = parse(version, options);\n return v ? v.version : null;\n};\n\nmodule.exports = valid;","// Note: this is the semver.org version of the spec that it implements\n// Not necessarily the package version of this code.\nvar SEMVER_SPEC_VERSION = '2.0.0';\nvar MAX_LENGTH = 256;\nvar MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER ||\n/* istanbul ignore next */\n9007199254740991; // Max safe segment length for coercion.\n\nvar MAX_SAFE_COMPONENT_LENGTH = 16;\nmodule.exports = {\n SEMVER_SPEC_VERSION: SEMVER_SPEC_VERSION,\n MAX_LENGTH: MAX_LENGTH,\n MAX_SAFE_INTEGER: MAX_SAFE_INTEGER,\n MAX_SAFE_COMPONENT_LENGTH: MAX_SAFE_COMPONENT_LENGTH\n};","function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\n\nvar debug = (typeof process === \"undefined\" ? \"undefined\" : _typeof(process)) === 'object' && process.env && process.env.NODE_DEBUG && /\\bsemver\\b/i.test(process.env.NODE_DEBUG) ? function () {\n var _console;\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return (_console = console).error.apply(_console, ['SEMVER'].concat(args));\n} : function () {};\nmodule.exports = debug;","var numeric = /^[0-9]+$/;\n\nvar compareIdentifiers = function compareIdentifiers(a, b) {\n var anum = numeric.test(a);\n var bnum = numeric.test(b);\n\n if (anum && bnum) {\n a = +a;\n b = +b;\n }\n\n return a === b ? 0 : anum && !bnum ? -1 : bnum && !anum ? 1 : a < b ? -1 : 1;\n};\n\nvar rcompareIdentifiers = function rcompareIdentifiers(a, b) {\n return compareIdentifiers(b, a);\n};\n\nmodule.exports = {\n compareIdentifiers: compareIdentifiers,\n rcompareIdentifiers: rcompareIdentifiers\n};","var _require = require('./constants'),\n MAX_SAFE_COMPONENT_LENGTH = _require.MAX_SAFE_COMPONENT_LENGTH;\n\nvar debug = require('./debug');\n\nexports = module.exports = {}; // The actual regexps go on exports.re\n\nvar re = exports.re = [];\nvar src = exports.src = [];\nvar t = exports.t = {};\nvar R = 0;\n\nvar createToken = function createToken(name, value, isGlobal) {\n var index = R++;\n debug(index, value);\n t[name] = index;\n src[index] = value;\n re[index] = new RegExp(value, isGlobal ? 'g' : undefined);\n}; // The following Regular Expressions can be used for tokenizing,\n// validating, and parsing SemVer version strings.\n// ## Numeric Identifier\n// A single `0`, or a non-zero digit followed by zero or more digits.\n\n\ncreateToken('NUMERICIDENTIFIER', '0|[1-9]\\\\d*');\ncreateToken('NUMERICIDENTIFIERLOOSE', '[0-9]+'); // ## Non-numeric Identifier\n// Zero or more digits, followed by a letter or hyphen, and then zero or\n// more letters, digits, or hyphens.\n\ncreateToken('NONNUMERICIDENTIFIER', '\\\\d*[a-zA-Z-][a-zA-Z0-9-]*'); // ## Main Version\n// Three dot-separated numeric identifiers.\n\ncreateToken('MAINVERSION', \"(\".concat(src[t.NUMERICIDENTIFIER], \")\\\\.\") + \"(\".concat(src[t.NUMERICIDENTIFIER], \")\\\\.\") + \"(\".concat(src[t.NUMERICIDENTIFIER], \")\"));\ncreateToken('MAINVERSIONLOOSE', \"(\".concat(src[t.NUMERICIDENTIFIERLOOSE], \")\\\\.\") + \"(\".concat(src[t.NUMERICIDENTIFIERLOOSE], \")\\\\.\") + \"(\".concat(src[t.NUMERICIDENTIFIERLOOSE], \")\")); // ## Pre-release Version Identifier\n// A numeric identifier, or a non-numeric identifier.\n\ncreateToken('PRERELEASEIDENTIFIER', \"(?:\".concat(src[t.NUMERICIDENTIFIER], \"|\").concat(src[t.NONNUMERICIDENTIFIER], \")\"));\ncreateToken('PRERELEASEIDENTIFIERLOOSE', \"(?:\".concat(src[t.NUMERICIDENTIFIERLOOSE], \"|\").concat(src[t.NONNUMERICIDENTIFIER], \")\")); // ## Pre-release Version\n// Hyphen, followed by one or more dot-separated pre-release version\n// identifiers.\n\ncreateToken('PRERELEASE', \"(?:-(\".concat(src[t.PRERELEASEIDENTIFIER], \"(?:\\\\.\").concat(src[t.PRERELEASEIDENTIFIER], \")*))\"));\ncreateToken('PRERELEASELOOSE', \"(?:-?(\".concat(src[t.PRERELEASEIDENTIFIERLOOSE], \"(?:\\\\.\").concat(src[t.PRERELEASEIDENTIFIERLOOSE], \")*))\")); // ## Build Metadata Identifier\n// Any combination of digits, letters, or hyphens.\n\ncreateToken('BUILDIDENTIFIER', '[0-9A-Za-z-]+'); // ## Build Metadata\n// Plus sign, followed by one or more period-separated build metadata\n// identifiers.\n\ncreateToken('BUILD', \"(?:\\\\+(\".concat(src[t.BUILDIDENTIFIER], \"(?:\\\\.\").concat(src[t.BUILDIDENTIFIER], \")*))\")); // ## Full Version String\n// A main version, followed optionally by a pre-release version and\n// build metadata.\n// Note that the only major, minor, patch, and pre-release sections of\n// the version string are capturing groups. The build metadata is not a\n// capturing group, because it should not ever be used in version\n// comparison.\n\ncreateToken('FULLPLAIN', \"v?\".concat(src[t.MAINVERSION]).concat(src[t.PRERELEASE], \"?\").concat(src[t.BUILD], \"?\"));\ncreateToken('FULL', \"^\".concat(src[t.FULLPLAIN], \"$\")); // like full, but allows v1.2.3 and =1.2.3, which people do sometimes.\n// also, 1.0.0alpha1 (prerelease without the hyphen) which is pretty\n// common in the npm registry.\n\ncreateToken('LOOSEPLAIN', \"[v=\\\\s]*\".concat(src[t.MAINVERSIONLOOSE]).concat(src[t.PRERELEASELOOSE], \"?\").concat(src[t.BUILD], \"?\"));\ncreateToken('LOOSE', \"^\".concat(src[t.LOOSEPLAIN], \"$\"));\ncreateToken('GTLT', '((?:<|>)?=?)'); // Something like \"2.*\" or \"1.2.x\".\n// Note that \"x.x\" is a valid xRange identifer, meaning \"any version\"\n// Only the first item is strictly required.\n\ncreateToken('XRANGEIDENTIFIERLOOSE', \"\".concat(src[t.NUMERICIDENTIFIERLOOSE], \"|x|X|\\\\*\"));\ncreateToken('XRANGEIDENTIFIER', \"\".concat(src[t.NUMERICIDENTIFIER], \"|x|X|\\\\*\"));\ncreateToken('XRANGEPLAIN', \"[v=\\\\s]*(\".concat(src[t.XRANGEIDENTIFIER], \")\") + \"(?:\\\\.(\".concat(src[t.XRANGEIDENTIFIER], \")\") + \"(?:\\\\.(\".concat(src[t.XRANGEIDENTIFIER], \")\") + \"(?:\".concat(src[t.PRERELEASE], \")?\").concat(src[t.BUILD], \"?\") + \")?)?\");\ncreateToken('XRANGEPLAINLOOSE', \"[v=\\\\s]*(\".concat(src[t.XRANGEIDENTIFIERLOOSE], \")\") + \"(?:\\\\.(\".concat(src[t.XRANGEIDENTIFIERLOOSE], \")\") + \"(?:\\\\.(\".concat(src[t.XRANGEIDENTIFIERLOOSE], \")\") + \"(?:\".concat(src[t.PRERELEASELOOSE], \")?\").concat(src[t.BUILD], \"?\") + \")?)?\");\ncreateToken('XRANGE', \"^\".concat(src[t.GTLT], \"\\\\s*\").concat(src[t.XRANGEPLAIN], \"$\"));\ncreateToken('XRANGELOOSE', \"^\".concat(src[t.GTLT], \"\\\\s*\").concat(src[t.XRANGEPLAINLOOSE], \"$\")); // Coercion.\n// Extract anything that could conceivably be a part of a valid semver\n\ncreateToken('COERCE', \"\".concat('(^|[^\\\\d])' + '(\\\\d{1,').concat(MAX_SAFE_COMPONENT_LENGTH, \"})\") + \"(?:\\\\.(\\\\d{1,\".concat(MAX_SAFE_COMPONENT_LENGTH, \"}))?\") + \"(?:\\\\.(\\\\d{1,\".concat(MAX_SAFE_COMPONENT_LENGTH, \"}))?\") + \"(?:$|[^\\\\d])\");\ncreateToken('COERCERTL', src[t.COERCE], true); // Tilde ranges.\n// Meaning is \"reasonably at or greater than\"\n\ncreateToken('LONETILDE', '(?:~>?)');\ncreateToken('TILDETRIM', \"(\\\\s*)\".concat(src[t.LONETILDE], \"\\\\s+\"), true);\nexports.tildeTrimReplace = '$1~';\ncreateToken('TILDE', \"^\".concat(src[t.LONETILDE]).concat(src[t.XRANGEPLAIN], \"$\"));\ncreateToken('TILDELOOSE', \"^\".concat(src[t.LONETILDE]).concat(src[t.XRANGEPLAINLOOSE], \"$\")); // Caret ranges.\n// Meaning is \"at least and backwards compatible with\"\n\ncreateToken('LONECARET', '(?:\\\\^)');\ncreateToken('CARETTRIM', \"(\\\\s*)\".concat(src[t.LONECARET], \"\\\\s+\"), true);\nexports.caretTrimReplace = '$1^';\ncreateToken('CARET', \"^\".concat(src[t.LONECARET]).concat(src[t.XRANGEPLAIN], \"$\"));\ncreateToken('CARETLOOSE', \"^\".concat(src[t.LONECARET]).concat(src[t.XRANGEPLAINLOOSE], \"$\")); // A simple gt/lt/eq thing, or just \"\" to indicate \"any version\"\n\ncreateToken('COMPARATORLOOSE', \"^\".concat(src[t.GTLT], \"\\\\s*(\").concat(src[t.LOOSEPLAIN], \")$|^$\"));\ncreateToken('COMPARATOR', \"^\".concat(src[t.GTLT], \"\\\\s*(\").concat(src[t.FULLPLAIN], \")$|^$\")); // An expression to strip any whitespace between the gtlt and the thing\n// it modifies, so that `> 1.2.3` ==> `>1.2.3`\n\ncreateToken('COMPARATORTRIM', \"(\\\\s*)\".concat(src[t.GTLT], \"\\\\s*(\").concat(src[t.LOOSEPLAIN], \"|\").concat(src[t.XRANGEPLAIN], \")\"), true);\nexports.comparatorTrimReplace = '$1$2$3'; // Something like `1.2.3 - 1.2.4`\n// Note that these all use the loose form, because they'll be\n// checked against either the strict or loose comparator form\n// later.\n\ncreateToken('HYPHENRANGE', \"^\\\\s*(\".concat(src[t.XRANGEPLAIN], \")\") + \"\\\\s+-\\\\s+\" + \"(\".concat(src[t.XRANGEPLAIN], \")\") + \"\\\\s*$\");\ncreateToken('HYPHENRANGELOOSE', \"^\\\\s*(\".concat(src[t.XRANGEPLAINLOOSE], \")\") + \"\\\\s+-\\\\s+\" + \"(\".concat(src[t.XRANGEPLAINLOOSE], \")\") + \"\\\\s*$\"); // Star ranges basically just allow anything at all.\n\ncreateToken('STAR', '(<|>)?=?\\\\s*\\\\*'); // >=0.0.0 is like a star\n\ncreateToken('GTE0', '^\\\\s*>=\\\\s*0\\.0\\.0\\\\s*$');\ncreateToken('GTE0PRE', '^\\\\s*>=\\\\s*0\\.0\\.0-0\\\\s*$');","var global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar String = global.String;\nvar TypeError = global.TypeError;\n\nmodule.exports = function (argument) {\n if (typeof argument == 'object' || isCallable(argument)) return argument;\n throw TypeError(\"Can't set \" + String(argument) + ' as a prototype');\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\nvar create = require('../internals/object-create');\nvar definePropertyModule = require('../internals/object-define-property');\n\nvar UNSCOPABLES = wellKnownSymbol('unscopables');\nvar ArrayPrototype = Array.prototype;\n\n// Array.prototype[@@unscopables]\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\nif (ArrayPrototype[UNSCOPABLES] == undefined) {\n definePropertyModule.f(ArrayPrototype, UNSCOPABLES, {\n configurable: true,\n value: create(null)\n });\n}\n\n// add a key to Array.prototype[@@unscopables]\nmodule.exports = function (key) {\n ArrayPrototype[UNSCOPABLES][key] = true;\n};\n","var fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n function F() { /* empty */ }\n F.prototype.constructor = null;\n // eslint-disable-next-line es-x/no-object-getprototypeof -- required for testing\n return Object.getPrototypeOf(new F()) !== F.prototype;\n});\n","'use strict';\nvar IteratorPrototype = require('../internals/iterators-core').IteratorPrototype;\nvar create = require('../internals/object-create');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar Iterators = require('../internals/iterators');\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (IteratorConstructor, NAME, next, ENUMERABLE_NEXT) {\n var TO_STRING_TAG = NAME + ' Iterator';\n IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(+!ENUMERABLE_NEXT, next) });\n setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);\n Iterators[TO_STRING_TAG] = returnThis;\n return IteratorConstructor;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar IS_PURE = require('../internals/is-pure');\nvar FunctionName = require('../internals/function-name');\nvar isCallable = require('../internals/is-callable');\nvar createIteratorConstructor = require('../internals/create-iterator-constructor');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar redefine = require('../internals/redefine');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\nvar IteratorsCore = require('../internals/iterators-core');\n\nvar PROPER_FUNCTION_NAME = FunctionName.PROPER;\nvar CONFIGURABLE_FUNCTION_NAME = FunctionName.CONFIGURABLE;\nvar IteratorPrototype = IteratorsCore.IteratorPrototype;\nvar BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;\nvar ITERATOR = wellKnownSymbol('iterator');\nvar KEYS = 'keys';\nvar VALUES = 'values';\nvar ENTRIES = 'entries';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {\n createIteratorConstructor(IteratorConstructor, NAME, next);\n\n var getIterationMethod = function (KIND) {\n if (KIND === DEFAULT && defaultIterator) return defaultIterator;\n if (!BUGGY_SAFARI_ITERATORS && KIND in IterablePrototype) return IterablePrototype[KIND];\n switch (KIND) {\n case KEYS: return function keys() { return new IteratorConstructor(this, KIND); };\n case VALUES: return function values() { return new IteratorConstructor(this, KIND); };\n case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); };\n } return function () { return new IteratorConstructor(this); };\n };\n\n var TO_STRING_TAG = NAME + ' Iterator';\n var INCORRECT_VALUES_NAME = false;\n var IterablePrototype = Iterable.prototype;\n var nativeIterator = IterablePrototype[ITERATOR]\n || IterablePrototype['@@iterator']\n || DEFAULT && IterablePrototype[DEFAULT];\n var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);\n var anyNativeIterator = NAME == 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;\n var CurrentIteratorPrototype, methods, KEY;\n\n // fix native\n if (anyNativeIterator) {\n CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));\n if (CurrentIteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {\n if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {\n if (setPrototypeOf) {\n setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);\n } else if (!isCallable(CurrentIteratorPrototype[ITERATOR])) {\n redefine(CurrentIteratorPrototype, ITERATOR, returnThis);\n }\n }\n // Set @@toStringTag to native iterators\n setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);\n if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis;\n }\n }\n\n // fix Array.prototype.{ values, @@iterator }.name in V8 / FF\n if (PROPER_FUNCTION_NAME && DEFAULT == VALUES && nativeIterator && nativeIterator.name !== VALUES) {\n if (!IS_PURE && CONFIGURABLE_FUNCTION_NAME) {\n createNonEnumerableProperty(IterablePrototype, 'name', VALUES);\n } else {\n INCORRECT_VALUES_NAME = true;\n defaultIterator = function values() { return call(nativeIterator, this); };\n }\n }\n\n // export additional methods\n if (DEFAULT) {\n methods = {\n values: getIterationMethod(VALUES),\n keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),\n entries: getIterationMethod(ENTRIES)\n };\n if (FORCED) for (KEY in methods) {\n if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {\n redefine(IterablePrototype, KEY, methods[KEY]);\n }\n } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);\n }\n\n // define iterator\n if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {\n redefine(IterablePrototype, ITERATOR, defaultIterator, { name: DEFAULT });\n }\n Iterators[NAME] = defaultIterator;\n\n return methods;\n};\n","// iterable DOM collections\n// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods\nmodule.exports = {\n CSSRuleList: 0,\n CSSStyleDeclaration: 0,\n CSSValueList: 0,\n ClientRectList: 0,\n DOMRectList: 0,\n DOMStringList: 0,\n DOMTokenList: 1,\n DataTransferItemList: 0,\n FileList: 0,\n HTMLAllCollection: 0,\n HTMLCollection: 0,\n HTMLFormElement: 0,\n HTMLSelectElement: 0,\n MediaList: 0,\n MimeTypeArray: 0,\n NamedNodeMap: 0,\n NodeList: 1,\n PaintRequestList: 0,\n Plugin: 0,\n PluginArray: 0,\n SVGLengthList: 0,\n SVGNumberList: 0,\n SVGPathSegList: 0,\n SVGPointList: 0,\n SVGStringList: 0,\n SVGTransformList: 0,\n SourceBufferList: 0,\n StyleSheetList: 0,\n TextTrackCueList: 0,\n TextTrackList: 0,\n TouchList: 0\n};\n","// in old WebKit versions, `element.classList` is not an instance of global `DOMTokenList`\nvar documentCreateElement = require('../internals/document-create-element');\n\nvar classList = documentCreateElement('span').classList;\nvar DOMTokenListPrototype = classList && classList.constructor && classList.constructor.prototype;\n\nmodule.exports = DOMTokenListPrototype === Object.prototype ? undefined : DOMTokenListPrototype;\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar create = require('../internals/object-create');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar redefine = require('../internals/redefine');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar BUGGY_SAFARI_ITERATORS = false;\n\n// `%IteratorPrototype%` object\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-object\nvar IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;\n\n/* eslint-disable es-x/no-array-prototype-keys -- safe */\nif ([].keys) {\n arrayIterator = [].keys();\n // Safari 8 has buggy iterators w/o `next`\n if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;\n else {\n PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));\n if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;\n }\n}\n\nvar NEW_ITERATOR_PROTOTYPE = IteratorPrototype == undefined || fails(function () {\n var test = {};\n // FF44- legacy iterators case\n return IteratorPrototype[ITERATOR].call(test) !== test;\n});\n\nif (NEW_ITERATOR_PROTOTYPE) IteratorPrototype = {};\nelse if (IS_PURE) IteratorPrototype = create(IteratorPrototype);\n\n// `%IteratorPrototype%[@@iterator]()` method\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-@@iterator\nif (!isCallable(IteratorPrototype[ITERATOR])) {\n redefine(IteratorPrototype, ITERATOR, function () {\n return this;\n });\n}\n\nmodule.exports = {\n IteratorPrototype: IteratorPrototype,\n BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS\n};\n","module.exports = {};\n","var global = require('../internals/global');\nvar hasOwn = require('../internals/has-own-property');\nvar isCallable = require('../internals/is-callable');\nvar toObject = require('../internals/to-object');\nvar sharedKey = require('../internals/shared-key');\nvar CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter');\n\nvar IE_PROTO = sharedKey('IE_PROTO');\nvar Object = global.Object;\nvar ObjectPrototype = Object.prototype;\n\n// `Object.getPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.getprototypeof\nmodule.exports = CORRECT_PROTOTYPE_GETTER ? Object.getPrototypeOf : function (O) {\n var object = toObject(O);\n if (hasOwn(object, IE_PROTO)) return object[IE_PROTO];\n var constructor = object.constructor;\n if (isCallable(constructor) && object instanceof constructor) {\n return constructor.prototype;\n } return object instanceof Object ? ObjectPrototype : null;\n};\n","/* eslint-disable no-proto -- safe */\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar anObject = require('../internals/an-object');\nvar aPossiblePrototype = require('../internals/a-possible-prototype');\n\n// `Object.setPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.setprototypeof\n// Works with __proto__ only. Old v8 can't work with null proto objects.\n// eslint-disable-next-line es-x/no-object-setprototypeof -- safe\nmodule.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {\n var CORRECT_SETTER = false;\n var test = {};\n var setter;\n try {\n // eslint-disable-next-line es-x/no-object-getownpropertydescriptor -- safe\n setter = uncurryThis(Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set);\n setter(test, []);\n CORRECT_SETTER = test instanceof Array;\n } catch (error) { /* empty */ }\n return function setPrototypeOf(O, proto) {\n anObject(O);\n aPossiblePrototype(proto);\n if (CORRECT_SETTER) setter(O, proto);\n else O.__proto__ = proto;\n return O;\n };\n}() : undefined);\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classof = require('../internals/classof');\n\n// `Object.prototype.toString` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nmodule.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {\n return '[object ' + classof(this) + ']';\n};\n","var call = require('../internals/function-call');\nvar hasOwn = require('../internals/has-own-property');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar regExpFlags = require('../internals/regexp-flags');\n\nvar RegExpPrototype = RegExp.prototype;\n\nmodule.exports = function (R) {\n var flags = R.flags;\n return flags === undefined && !('flags' in RegExpPrototype) && !hasOwn(R, 'flags') && isPrototypeOf(RegExpPrototype, R)\n ? call(regExpFlags, R) : flags;\n};\n","var defineProperty = require('../internals/object-define-property').f;\nvar hasOwn = require('../internals/has-own-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n\nmodule.exports = function (target, TAG, STATIC) {\n if (target && !STATIC) target = target.prototype;\n if (target && !hasOwn(target, TO_STRING_TAG)) {\n defineProperty(target, TO_STRING_TAG, { configurable: true, value: TAG });\n }\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar addToUnscopables = require('../internals/add-to-unscopables');\nvar Iterators = require('../internals/iterators');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineProperty = require('../internals/object-define-property').f;\nvar defineIterator = require('../internals/define-iterator');\nvar IS_PURE = require('../internals/is-pure');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar ARRAY_ITERATOR = 'Array Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR);\n\n// `Array.prototype.entries` method\n// https://tc39.es/ecma262/#sec-array.prototype.entries\n// `Array.prototype.keys` method\n// https://tc39.es/ecma262/#sec-array.prototype.keys\n// `Array.prototype.values` method\n// https://tc39.es/ecma262/#sec-array.prototype.values\n// `Array.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-array.prototype-@@iterator\n// `CreateArrayIterator` internal method\n// https://tc39.es/ecma262/#sec-createarrayiterator\nmodule.exports = defineIterator(Array, 'Array', function (iterated, kind) {\n setInternalState(this, {\n type: ARRAY_ITERATOR,\n target: toIndexedObject(iterated), // target\n index: 0, // next index\n kind: kind // kind\n });\n// `%ArrayIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%arrayiteratorprototype%.next\n}, function () {\n var state = getInternalState(this);\n var target = state.target;\n var kind = state.kind;\n var index = state.index++;\n if (!target || index >= target.length) {\n state.target = undefined;\n return { value: undefined, done: true };\n }\n if (kind == 'keys') return { value: index, done: false };\n if (kind == 'values') return { value: target[index], done: false };\n return { value: [index, target[index]], done: false };\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values%\n// https://tc39.es/ecma262/#sec-createunmappedargumentsobject\n// https://tc39.es/ecma262/#sec-createmappedargumentsobject\nvar values = Iterators.Arguments = Iterators.Array;\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n\n// V8 ~ Chrome 45- bug\nif (!IS_PURE && DESCRIPTORS && values.name !== 'values') try {\n defineProperty(values, 'name', { value: 'values' });\n} catch (error) { /* empty */ }\n","var TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar redefine = require('../internals/redefine');\nvar toString = require('../internals/object-to-string');\n\n// `Object.prototype.toString` method\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nif (!TO_STRING_TAG_SUPPORT) {\n redefine(Object.prototype, 'toString', toString, { unsafe: true });\n}\n","'use strict';\nvar PROPER_FUNCTION_NAME = require('../internals/function-name').PROPER;\nvar redefine = require('../internals/redefine');\nvar anObject = require('../internals/an-object');\nvar $toString = require('../internals/to-string');\nvar fails = require('../internals/fails');\nvar getRegExpFlags = require('../internals/regexp-get-flags');\n\nvar TO_STRING = 'toString';\nvar RegExpPrototype = RegExp.prototype;\nvar n$ToString = RegExpPrototype[TO_STRING];\n\nvar NOT_GENERIC = fails(function () { return n$ToString.call({ source: 'a', flags: 'b' }) != '/a/b'; });\n// FF44- RegExp#toString has a wrong name\nvar INCORRECT_NAME = PROPER_FUNCTION_NAME && n$ToString.name != TO_STRING;\n\n// `RegExp.prototype.toString` method\n// https://tc39.es/ecma262/#sec-regexp.prototype.tostring\nif (NOT_GENERIC || INCORRECT_NAME) {\n redefine(RegExp.prototype, TO_STRING, function toString() {\n var R = anObject(this);\n var pattern = $toString(R.source);\n var flags = $toString(getRegExpFlags(R));\n return '/' + pattern + '/' + flags;\n }, { unsafe: true });\n}\n","var global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar DOMTokenListPrototype = require('../internals/dom-token-list-prototype');\nvar ArrayIteratorMethods = require('../modules/es.array.iterator');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar ArrayValues = ArrayIteratorMethods.values;\n\nvar handlePrototype = function (CollectionPrototype, COLLECTION_NAME) {\n if (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[ITERATOR] !== ArrayValues) try {\n createNonEnumerableProperty(CollectionPrototype, ITERATOR, ArrayValues);\n } catch (error) {\n CollectionPrototype[ITERATOR] = ArrayValues;\n }\n if (!CollectionPrototype[TO_STRING_TAG]) {\n createNonEnumerableProperty(CollectionPrototype, TO_STRING_TAG, COLLECTION_NAME);\n }\n if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try {\n createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]);\n } catch (error) {\n CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME];\n }\n }\n }\n};\n\nfor (var COLLECTION_NAME in DOMIterables) {\n handlePrototype(global[COLLECTION_NAME] && global[COLLECTION_NAME].prototype, COLLECTION_NAME);\n}\n\nhandlePrototype(DOMTokenListPrototype, 'DOMTokenList');\n","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar DataView = getNative(root, 'DataView');\n\nmodule.exports = DataView;\n","var hashClear = require('./_hashClear'),\n hashDelete = require('./_hashDelete'),\n hashGet = require('./_hashGet'),\n hashHas = require('./_hashHas'),\n hashSet = require('./_hashSet');\n\n/**\n * Creates a hash object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Hash(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `Hash`.\nHash.prototype.clear = hashClear;\nHash.prototype['delete'] = hashDelete;\nHash.prototype.get = hashGet;\nHash.prototype.has = hashHas;\nHash.prototype.set = hashSet;\n\nmodule.exports = Hash;\n","var listCacheClear = require('./_listCacheClear'),\n listCacheDelete = require('./_listCacheDelete'),\n listCacheGet = require('./_listCacheGet'),\n listCacheHas = require('./_listCacheHas'),\n listCacheSet = require('./_listCacheSet');\n\n/**\n * Creates an list cache object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction ListCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `ListCache`.\nListCache.prototype.clear = listCacheClear;\nListCache.prototype['delete'] = listCacheDelete;\nListCache.prototype.get = listCacheGet;\nListCache.prototype.has = listCacheHas;\nListCache.prototype.set = listCacheSet;\n\nmodule.exports = ListCache;\n","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar Map = getNative(root, 'Map');\n\nmodule.exports = Map;\n","var mapCacheClear = require('./_mapCacheClear'),\n mapCacheDelete = require('./_mapCacheDelete'),\n mapCacheGet = require('./_mapCacheGet'),\n mapCacheHas = require('./_mapCacheHas'),\n mapCacheSet = require('./_mapCacheSet');\n\n/**\n * Creates a map cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction MapCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `MapCache`.\nMapCache.prototype.clear = mapCacheClear;\nMapCache.prototype['delete'] = mapCacheDelete;\nMapCache.prototype.get = mapCacheGet;\nMapCache.prototype.has = mapCacheHas;\nMapCache.prototype.set = mapCacheSet;\n\nmodule.exports = MapCache;\n","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar Promise = getNative(root, 'Promise');\n\nmodule.exports = Promise;\n","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar Set = getNative(root, 'Set');\n\nmodule.exports = Set;\n","var MapCache = require('./_MapCache'),\n setCacheAdd = require('./_setCacheAdd'),\n setCacheHas = require('./_setCacheHas');\n\n/**\n *\n * Creates an array cache object to store unique values.\n *\n * @private\n * @constructor\n * @param {Array} [values] The values to cache.\n */\nfunction SetCache(values) {\n var index = -1,\n length = values == null ? 0 : values.length;\n\n this.__data__ = new MapCache;\n while (++index < length) {\n this.add(values[index]);\n }\n}\n\n// Add methods to `SetCache`.\nSetCache.prototype.add = SetCache.prototype.push = setCacheAdd;\nSetCache.prototype.has = setCacheHas;\n\nmodule.exports = SetCache;\n","var ListCache = require('./_ListCache'),\n stackClear = require('./_stackClear'),\n stackDelete = require('./_stackDelete'),\n stackGet = require('./_stackGet'),\n stackHas = require('./_stackHas'),\n stackSet = require('./_stackSet');\n\n/**\n * Creates a stack cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Stack(entries) {\n var data = this.__data__ = new ListCache(entries);\n this.size = data.size;\n}\n\n// Add methods to `Stack`.\nStack.prototype.clear = stackClear;\nStack.prototype['delete'] = stackDelete;\nStack.prototype.get = stackGet;\nStack.prototype.has = stackHas;\nStack.prototype.set = stackSet;\n\nmodule.exports = Stack;\n","var root = require('./_root');\n\n/** Built-in value references. */\nvar Symbol = root.Symbol;\n\nmodule.exports = Symbol;\n","var root = require('./_root');\n\n/** Built-in value references. */\nvar Uint8Array = root.Uint8Array;\n\nmodule.exports = Uint8Array;\n","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar WeakMap = getNative(root, 'WeakMap');\n\nmodule.exports = WeakMap;\n","/**\n * A faster alternative to `Function#apply`, this function invokes `func`\n * with the `this` binding of `thisArg` and the arguments of `args`.\n *\n * @private\n * @param {Function} func The function to invoke.\n * @param {*} thisArg The `this` binding of `func`.\n * @param {Array} args The arguments to invoke `func` with.\n * @returns {*} Returns the result of `func`.\n */\nfunction apply(func, thisArg, args) {\n switch (args.length) {\n case 0: return func.call(thisArg);\n case 1: return func.call(thisArg, args[0]);\n case 2: return func.call(thisArg, args[0], args[1]);\n case 3: return func.call(thisArg, args[0], args[1], args[2]);\n }\n return func.apply(thisArg, args);\n}\n\nmodule.exports = apply;\n","/**\n * A specialized version of `_.filter` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n */\nfunction arrayFilter(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index];\n if (predicate(value, index, array)) {\n result[resIndex++] = value;\n }\n }\n return result;\n}\n\nmodule.exports = arrayFilter;\n","var baseTimes = require('./_baseTimes'),\n isArguments = require('./isArguments'),\n isArray = require('./isArray'),\n isBuffer = require('./isBuffer'),\n isIndex = require('./_isIndex'),\n isTypedArray = require('./isTypedArray');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Creates an array of the enumerable property names of the array-like `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @param {boolean} inherited Specify returning inherited property names.\n * @returns {Array} Returns the array of property names.\n */\nfunction arrayLikeKeys(value, inherited) {\n var isArr = isArray(value),\n isArg = !isArr && isArguments(value),\n isBuff = !isArr && !isArg && isBuffer(value),\n isType = !isArr && !isArg && !isBuff && isTypedArray(value),\n skipIndexes = isArr || isArg || isBuff || isType,\n result = skipIndexes ? baseTimes(value.length, String) : [],\n length = result.length;\n\n for (var key in value) {\n if ((inherited || hasOwnProperty.call(value, key)) &&\n !(skipIndexes && (\n // Safari 9 has enumerable `arguments.length` in strict mode.\n key == 'length' ||\n // Node.js 0.10 has enumerable non-index properties on buffers.\n (isBuff && (key == 'offset' || key == 'parent')) ||\n // PhantomJS 2 has enumerable non-index properties on typed arrays.\n (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) ||\n // Skip index properties.\n isIndex(key, length)\n ))) {\n result.push(key);\n }\n }\n return result;\n}\n\nmodule.exports = arrayLikeKeys;\n","/**\n * Appends the elements of `values` to `array`.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {Array} values The values to append.\n * @returns {Array} Returns `array`.\n */\nfunction arrayPush(array, values) {\n var index = -1,\n length = values.length,\n offset = array.length;\n\n while (++index < length) {\n array[offset + index] = values[index];\n }\n return array;\n}\n\nmodule.exports = arrayPush;\n","/**\n * A specialized version of `_.some` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {boolean} Returns `true` if any element passes the predicate check,\n * else `false`.\n */\nfunction arraySome(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n if (predicate(array[index], index, array)) {\n return true;\n }\n }\n return false;\n}\n\nmodule.exports = arraySome;\n","var baseAssignValue = require('./_baseAssignValue'),\n eq = require('./eq');\n\n/**\n * This function is like `assignValue` except that it doesn't assign\n * `undefined` values.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction assignMergeValue(object, key, value) {\n if ((value !== undefined && !eq(object[key], value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n}\n\nmodule.exports = assignMergeValue;\n","var baseAssignValue = require('./_baseAssignValue'),\n eq = require('./eq');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Assigns `value` to `key` of `object` if the existing value is not equivalent\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction assignValue(object, key, value) {\n var objValue = object[key];\n if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n}\n\nmodule.exports = assignValue;\n","var eq = require('./eq');\n\n/**\n * Gets the index at which the `key` is found in `array` of key-value pairs.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} key The key to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\nfunction assocIndexOf(array, key) {\n var length = array.length;\n while (length--) {\n if (eq(array[length][0], key)) {\n return length;\n }\n }\n return -1;\n}\n\nmodule.exports = assocIndexOf;\n","var defineProperty = require('./_defineProperty');\n\n/**\n * The base implementation of `assignValue` and `assignMergeValue` without\n * value checks.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction baseAssignValue(object, key, value) {\n if (key == '__proto__' && defineProperty) {\n defineProperty(object, key, {\n 'configurable': true,\n 'enumerable': true,\n 'value': value,\n 'writable': true\n });\n } else {\n object[key] = value;\n }\n}\n\nmodule.exports = baseAssignValue;\n","var isObject = require('./isObject');\n\n/** Built-in value references. */\nvar objectCreate = Object.create;\n\n/**\n * The base implementation of `_.create` without support for assigning\n * properties to the created object.\n *\n * @private\n * @param {Object} proto The object to inherit from.\n * @returns {Object} Returns the new object.\n */\nvar baseCreate = (function() {\n function object() {}\n return function(proto) {\n if (!isObject(proto)) {\n return {};\n }\n if (objectCreate) {\n return objectCreate(proto);\n }\n object.prototype = proto;\n var result = new object;\n object.prototype = undefined;\n return result;\n };\n}());\n\nmodule.exports = baseCreate;\n","var createBaseFor = require('./_createBaseFor');\n\n/**\n * The base implementation of `baseForOwn` which iterates over `object`\n * properties returned by `keysFunc` and invokes `iteratee` for each property.\n * Iteratee functions may exit iteration early by explicitly returning `false`.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @returns {Object} Returns `object`.\n */\nvar baseFor = createBaseFor();\n\nmodule.exports = baseFor;\n","var arrayPush = require('./_arrayPush'),\n isArray = require('./isArray');\n\n/**\n * The base implementation of `getAllKeys` and `getAllKeysIn` which uses\n * `keysFunc` and `symbolsFunc` to get the enumerable property names and\n * symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @param {Function} symbolsFunc The function to get the symbols of `object`.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction baseGetAllKeys(object, keysFunc, symbolsFunc) {\n var result = keysFunc(object);\n return isArray(object) ? result : arrayPush(result, symbolsFunc(object));\n}\n\nmodule.exports = baseGetAllKeys;\n","var Symbol = require('./_Symbol'),\n getRawTag = require('./_getRawTag'),\n objectToString = require('./_objectToString');\n\n/** `Object#toString` result references. */\nvar nullTag = '[object Null]',\n undefinedTag = '[object Undefined]';\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * The base implementation of `getTag` without fallbacks for buggy environments.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nfunction baseGetTag(value) {\n if (value == null) {\n return value === undefined ? undefinedTag : nullTag;\n }\n return (symToStringTag && symToStringTag in Object(value))\n ? getRawTag(value)\n : objectToString(value);\n}\n\nmodule.exports = baseGetTag;\n","var baseGetTag = require('./_baseGetTag'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]';\n\n/**\n * The base implementation of `_.isArguments`.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n */\nfunction baseIsArguments(value) {\n return isObjectLike(value) && baseGetTag(value) == argsTag;\n}\n\nmodule.exports = baseIsArguments;\n","var baseIsEqualDeep = require('./_baseIsEqualDeep'),\n isObjectLike = require('./isObjectLike');\n\n/**\n * The base implementation of `_.isEqual` which supports partial comparisons\n * and tracks traversed objects.\n *\n * @private\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @param {boolean} bitmask The bitmask flags.\n * 1 - Unordered comparison\n * 2 - Partial comparison\n * @param {Function} [customizer] The function to customize comparisons.\n * @param {Object} [stack] Tracks traversed `value` and `other` objects.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n */\nfunction baseIsEqual(value, other, bitmask, customizer, stack) {\n if (value === other) {\n return true;\n }\n if (value == null || other == null || (!isObjectLike(value) && !isObjectLike(other))) {\n return value !== value && other !== other;\n }\n return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack);\n}\n\nmodule.exports = baseIsEqual;\n","var Stack = require('./_Stack'),\n equalArrays = require('./_equalArrays'),\n equalByTag = require('./_equalByTag'),\n equalObjects = require('./_equalObjects'),\n getTag = require('./_getTag'),\n isArray = require('./isArray'),\n isBuffer = require('./isBuffer'),\n isTypedArray = require('./isTypedArray');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1;\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]',\n arrayTag = '[object Array]',\n objectTag = '[object Object]';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * A specialized version of `baseIsEqual` for arrays and objects which performs\n * deep comparisons and tracks traversed objects enabling objects with circular\n * references to be compared.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} [stack] Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) {\n var objIsArr = isArray(object),\n othIsArr = isArray(other),\n objTag = objIsArr ? arrayTag : getTag(object),\n othTag = othIsArr ? arrayTag : getTag(other);\n\n objTag = objTag == argsTag ? objectTag : objTag;\n othTag = othTag == argsTag ? objectTag : othTag;\n\n var objIsObj = objTag == objectTag,\n othIsObj = othTag == objectTag,\n isSameTag = objTag == othTag;\n\n if (isSameTag && isBuffer(object)) {\n if (!isBuffer(other)) {\n return false;\n }\n objIsArr = true;\n objIsObj = false;\n }\n if (isSameTag && !objIsObj) {\n stack || (stack = new Stack);\n return (objIsArr || isTypedArray(object))\n ? equalArrays(object, other, bitmask, customizer, equalFunc, stack)\n : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack);\n }\n if (!(bitmask & COMPARE_PARTIAL_FLAG)) {\n var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'),\n othIsWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__');\n\n if (objIsWrapped || othIsWrapped) {\n var objUnwrapped = objIsWrapped ? object.value() : object,\n othUnwrapped = othIsWrapped ? other.value() : other;\n\n stack || (stack = new Stack);\n return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack);\n }\n }\n if (!isSameTag) {\n return false;\n }\n stack || (stack = new Stack);\n return equalObjects(object, other, bitmask, customizer, equalFunc, stack);\n}\n\nmodule.exports = baseIsEqualDeep;\n","var isFunction = require('./isFunction'),\n isMasked = require('./_isMasked'),\n isObject = require('./isObject'),\n toSource = require('./_toSource');\n\n/**\n * Used to match `RegExp`\n * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).\n */\nvar reRegExpChar = /[\\\\^$.*+?()[\\]{}|]/g;\n\n/** Used to detect host constructors (Safari). */\nvar reIsHostCtor = /^\\[object .+?Constructor\\]$/;\n\n/** Used for built-in method references. */\nvar funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Used to detect if a method is native. */\nvar reIsNative = RegExp('^' +\n funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\\\$&')\n .replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, '$1.*?') + '$'\n);\n\n/**\n * The base implementation of `_.isNative` without bad shim checks.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a native function,\n * else `false`.\n */\nfunction baseIsNative(value) {\n if (!isObject(value) || isMasked(value)) {\n return false;\n }\n var pattern = isFunction(value) ? reIsNative : reIsHostCtor;\n return pattern.test(toSource(value));\n}\n\nmodule.exports = baseIsNative;\n","var baseGetTag = require('./_baseGetTag'),\n isLength = require('./isLength'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]',\n arrayTag = '[object Array]',\n boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n errorTag = '[object Error]',\n funcTag = '[object Function]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n objectTag = '[object Object]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n weakMapTag = '[object WeakMap]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]',\n float32Tag = '[object Float32Array]',\n float64Tag = '[object Float64Array]',\n int8Tag = '[object Int8Array]',\n int16Tag = '[object Int16Array]',\n int32Tag = '[object Int32Array]',\n uint8Tag = '[object Uint8Array]',\n uint8ClampedTag = '[object Uint8ClampedArray]',\n uint16Tag = '[object Uint16Array]',\n uint32Tag = '[object Uint32Array]';\n\n/** Used to identify `toStringTag` values of typed arrays. */\nvar typedArrayTags = {};\ntypedArrayTags[float32Tag] = typedArrayTags[float64Tag] =\ntypedArrayTags[int8Tag] = typedArrayTags[int16Tag] =\ntypedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =\ntypedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =\ntypedArrayTags[uint32Tag] = true;\ntypedArrayTags[argsTag] = typedArrayTags[arrayTag] =\ntypedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] =\ntypedArrayTags[dataViewTag] = typedArrayTags[dateTag] =\ntypedArrayTags[errorTag] = typedArrayTags[funcTag] =\ntypedArrayTags[mapTag] = typedArrayTags[numberTag] =\ntypedArrayTags[objectTag] = typedArrayTags[regexpTag] =\ntypedArrayTags[setTag] = typedArrayTags[stringTag] =\ntypedArrayTags[weakMapTag] = false;\n\n/**\n * The base implementation of `_.isTypedArray` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n */\nfunction baseIsTypedArray(value) {\n return isObjectLike(value) &&\n isLength(value.length) && !!typedArrayTags[baseGetTag(value)];\n}\n\nmodule.exports = baseIsTypedArray;\n","var isPrototype = require('./_isPrototype'),\n nativeKeys = require('./_nativeKeys');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * The base implementation of `_.keys` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction baseKeys(object) {\n if (!isPrototype(object)) {\n return nativeKeys(object);\n }\n var result = [];\n for (var key in Object(object)) {\n if (hasOwnProperty.call(object, key) && key != 'constructor') {\n result.push(key);\n }\n }\n return result;\n}\n\nmodule.exports = baseKeys;\n","var isObject = require('./isObject'),\n isPrototype = require('./_isPrototype'),\n nativeKeysIn = require('./_nativeKeysIn');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction baseKeysIn(object) {\n if (!isObject(object)) {\n return nativeKeysIn(object);\n }\n var isProto = isPrototype(object),\n result = [];\n\n for (var key in object) {\n if (!(key == 'constructor' && (isProto || !hasOwnProperty.call(object, key)))) {\n result.push(key);\n }\n }\n return result;\n}\n\nmodule.exports = baseKeysIn;\n","var Stack = require('./_Stack'),\n assignMergeValue = require('./_assignMergeValue'),\n baseFor = require('./_baseFor'),\n baseMergeDeep = require('./_baseMergeDeep'),\n isObject = require('./isObject'),\n keysIn = require('./keysIn'),\n safeGet = require('./_safeGet');\n\n/**\n * The base implementation of `_.merge` without support for multiple sources.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @param {number} srcIndex The index of `source`.\n * @param {Function} [customizer] The function to customize merged values.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n */\nfunction baseMerge(object, source, srcIndex, customizer, stack) {\n if (object === source) {\n return;\n }\n baseFor(source, function(srcValue, key) {\n stack || (stack = new Stack);\n if (isObject(srcValue)) {\n baseMergeDeep(object, source, key, srcIndex, baseMerge, customizer, stack);\n }\n else {\n var newValue = customizer\n ? customizer(safeGet(object, key), srcValue, (key + ''), object, source, stack)\n : undefined;\n\n if (newValue === undefined) {\n newValue = srcValue;\n }\n assignMergeValue(object, key, newValue);\n }\n }, keysIn);\n}\n\nmodule.exports = baseMerge;\n","var assignMergeValue = require('./_assignMergeValue'),\n cloneBuffer = require('./_cloneBuffer'),\n cloneTypedArray = require('./_cloneTypedArray'),\n copyArray = require('./_copyArray'),\n initCloneObject = require('./_initCloneObject'),\n isArguments = require('./isArguments'),\n isArray = require('./isArray'),\n isArrayLikeObject = require('./isArrayLikeObject'),\n isBuffer = require('./isBuffer'),\n isFunction = require('./isFunction'),\n isObject = require('./isObject'),\n isPlainObject = require('./isPlainObject'),\n isTypedArray = require('./isTypedArray'),\n safeGet = require('./_safeGet'),\n toPlainObject = require('./toPlainObject');\n\n/**\n * A specialized version of `baseMerge` for arrays and objects which performs\n * deep merges and tracks traversed objects enabling objects with circular\n * references to be merged.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @param {string} key The key of the value to merge.\n * @param {number} srcIndex The index of `source`.\n * @param {Function} mergeFunc The function to merge values.\n * @param {Function} [customizer] The function to customize assigned values.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n */\nfunction baseMergeDeep(object, source, key, srcIndex, mergeFunc, customizer, stack) {\n var objValue = safeGet(object, key),\n srcValue = safeGet(source, key),\n stacked = stack.get(srcValue);\n\n if (stacked) {\n assignMergeValue(object, key, stacked);\n return;\n }\n var newValue = customizer\n ? customizer(objValue, srcValue, (key + ''), object, source, stack)\n : undefined;\n\n var isCommon = newValue === undefined;\n\n if (isCommon) {\n var isArr = isArray(srcValue),\n isBuff = !isArr && isBuffer(srcValue),\n isTyped = !isArr && !isBuff && isTypedArray(srcValue);\n\n newValue = srcValue;\n if (isArr || isBuff || isTyped) {\n if (isArray(objValue)) {\n newValue = objValue;\n }\n else if (isArrayLikeObject(objValue)) {\n newValue = copyArray(objValue);\n }\n else if (isBuff) {\n isCommon = false;\n newValue = cloneBuffer(srcValue, true);\n }\n else if (isTyped) {\n isCommon = false;\n newValue = cloneTypedArray(srcValue, true);\n }\n else {\n newValue = [];\n }\n }\n else if (isPlainObject(srcValue) || isArguments(srcValue)) {\n newValue = objValue;\n if (isArguments(objValue)) {\n newValue = toPlainObject(objValue);\n }\n else if (!isObject(objValue) || isFunction(objValue)) {\n newValue = initCloneObject(srcValue);\n }\n }\n else {\n isCommon = false;\n }\n }\n if (isCommon) {\n // Recursively merge objects and arrays (susceptible to call stack limits).\n stack.set(srcValue, newValue);\n mergeFunc(newValue, srcValue, srcIndex, customizer, stack);\n stack['delete'](srcValue);\n }\n assignMergeValue(object, key, newValue);\n}\n\nmodule.exports = baseMergeDeep;\n","var identity = require('./identity'),\n overRest = require('./_overRest'),\n setToString = require('./_setToString');\n\n/**\n * The base implementation of `_.rest` which doesn't validate or coerce arguments.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @returns {Function} Returns the new function.\n */\nfunction baseRest(func, start) {\n return setToString(overRest(func, start, identity), func + '');\n}\n\nmodule.exports = baseRest;\n","var constant = require('./constant'),\n defineProperty = require('./_defineProperty'),\n identity = require('./identity');\n\n/**\n * The base implementation of `setToString` without support for hot loop shorting.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\nvar baseSetToString = !defineProperty ? identity : function(func, string) {\n return defineProperty(func, 'toString', {\n 'configurable': true,\n 'enumerable': false,\n 'value': constant(string),\n 'writable': true\n });\n};\n\nmodule.exports = baseSetToString;\n","/**\n * The base implementation of `_.times` without support for iteratee shorthands\n * or max array length checks.\n *\n * @private\n * @param {number} n The number of times to invoke `iteratee`.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the array of results.\n */\nfunction baseTimes(n, iteratee) {\n var index = -1,\n result = Array(n);\n\n while (++index < n) {\n result[index] = iteratee(index);\n }\n return result;\n}\n\nmodule.exports = baseTimes;\n","/**\n * The base implementation of `_.unary` without support for storing metadata.\n *\n * @private\n * @param {Function} func The function to cap arguments for.\n * @returns {Function} Returns the new capped function.\n */\nfunction baseUnary(func) {\n return function(value) {\n return func(value);\n };\n}\n\nmodule.exports = baseUnary;\n","/**\n * Checks if a `cache` value for `key` exists.\n *\n * @private\n * @param {Object} cache The cache to query.\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction cacheHas(cache, key) {\n return cache.has(key);\n}\n\nmodule.exports = cacheHas;\n","var Uint8Array = require('./_Uint8Array');\n\n/**\n * Creates a clone of `arrayBuffer`.\n *\n * @private\n * @param {ArrayBuffer} arrayBuffer The array buffer to clone.\n * @returns {ArrayBuffer} Returns the cloned array buffer.\n */\nfunction cloneArrayBuffer(arrayBuffer) {\n var result = new arrayBuffer.constructor(arrayBuffer.byteLength);\n new Uint8Array(result).set(new Uint8Array(arrayBuffer));\n return result;\n}\n\nmodule.exports = cloneArrayBuffer;\n","var root = require('./_root');\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Built-in value references. */\nvar Buffer = moduleExports ? root.Buffer : undefined,\n allocUnsafe = Buffer ? Buffer.allocUnsafe : undefined;\n\n/**\n * Creates a clone of `buffer`.\n *\n * @private\n * @param {Buffer} buffer The buffer to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Buffer} Returns the cloned buffer.\n */\nfunction cloneBuffer(buffer, isDeep) {\n if (isDeep) {\n return buffer.slice();\n }\n var length = buffer.length,\n result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length);\n\n buffer.copy(result);\n return result;\n}\n\nmodule.exports = cloneBuffer;\n","var cloneArrayBuffer = require('./_cloneArrayBuffer');\n\n/**\n * Creates a clone of `typedArray`.\n *\n * @private\n * @param {Object} typedArray The typed array to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the cloned typed array.\n */\nfunction cloneTypedArray(typedArray, isDeep) {\n var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer;\n return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length);\n}\n\nmodule.exports = cloneTypedArray;\n","/**\n * Copies the values of `source` to `array`.\n *\n * @private\n * @param {Array} source The array to copy values from.\n * @param {Array} [array=[]] The array to copy values to.\n * @returns {Array} Returns `array`.\n */\nfunction copyArray(source, array) {\n var index = -1,\n length = source.length;\n\n array || (array = Array(length));\n while (++index < length) {\n array[index] = source[index];\n }\n return array;\n}\n\nmodule.exports = copyArray;\n","var assignValue = require('./_assignValue'),\n baseAssignValue = require('./_baseAssignValue');\n\n/**\n * Copies properties of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy properties from.\n * @param {Array} props The property identifiers to copy.\n * @param {Object} [object={}] The object to copy properties to.\n * @param {Function} [customizer] The function to customize copied values.\n * @returns {Object} Returns `object`.\n */\nfunction copyObject(source, props, object, customizer) {\n var isNew = !object;\n object || (object = {});\n\n var index = -1,\n length = props.length;\n\n while (++index < length) {\n var key = props[index];\n\n var newValue = customizer\n ? customizer(object[key], source[key], key, object, source)\n : undefined;\n\n if (newValue === undefined) {\n newValue = source[key];\n }\n if (isNew) {\n baseAssignValue(object, key, newValue);\n } else {\n assignValue(object, key, newValue);\n }\n }\n return object;\n}\n\nmodule.exports = copyObject;\n","var root = require('./_root');\n\n/** Used to detect overreaching core-js shims. */\nvar coreJsData = root['__core-js_shared__'];\n\nmodule.exports = coreJsData;\n","var baseRest = require('./_baseRest'),\n isIterateeCall = require('./_isIterateeCall');\n\n/**\n * Creates a function like `_.assign`.\n *\n * @private\n * @param {Function} assigner The function to assign values.\n * @returns {Function} Returns the new assigner function.\n */\nfunction createAssigner(assigner) {\n return baseRest(function(object, sources) {\n var index = -1,\n length = sources.length,\n customizer = length > 1 ? sources[length - 1] : undefined,\n guard = length > 2 ? sources[2] : undefined;\n\n customizer = (assigner.length > 3 && typeof customizer == 'function')\n ? (length--, customizer)\n : undefined;\n\n if (guard && isIterateeCall(sources[0], sources[1], guard)) {\n customizer = length < 3 ? undefined : customizer;\n length = 1;\n }\n object = Object(object);\n while (++index < length) {\n var source = sources[index];\n if (source) {\n assigner(object, source, index, customizer);\n }\n }\n return object;\n });\n}\n\nmodule.exports = createAssigner;\n","/**\n * Creates a base function for methods like `_.forIn` and `_.forOwn`.\n *\n * @private\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new base function.\n */\nfunction createBaseFor(fromRight) {\n return function(object, iteratee, keysFunc) {\n var index = -1,\n iterable = Object(object),\n props = keysFunc(object),\n length = props.length;\n\n while (length--) {\n var key = props[fromRight ? length : ++index];\n if (iteratee(iterable[key], key, iterable) === false) {\n break;\n }\n }\n return object;\n };\n}\n\nmodule.exports = createBaseFor;\n","var getNative = require('./_getNative');\n\nvar defineProperty = (function() {\n try {\n var func = getNative(Object, 'defineProperty');\n func({}, '', {});\n return func;\n } catch (e) {}\n}());\n\nmodule.exports = defineProperty;\n","var SetCache = require('./_SetCache'),\n arraySome = require('./_arraySome'),\n cacheHas = require('./_cacheHas');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1,\n COMPARE_UNORDERED_FLAG = 2;\n\n/**\n * A specialized version of `baseIsEqualDeep` for arrays with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Array} array The array to compare.\n * @param {Array} other The other array to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `array` and `other` objects.\n * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`.\n */\nfunction equalArrays(array, other, bitmask, customizer, equalFunc, stack) {\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n arrLength = array.length,\n othLength = other.length;\n\n if (arrLength != othLength && !(isPartial && othLength > arrLength)) {\n return false;\n }\n // Check that cyclic values are equal.\n var arrStacked = stack.get(array);\n var othStacked = stack.get(other);\n if (arrStacked && othStacked) {\n return arrStacked == other && othStacked == array;\n }\n var index = -1,\n result = true,\n seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new SetCache : undefined;\n\n stack.set(array, other);\n stack.set(other, array);\n\n // Ignore non-index properties.\n while (++index < arrLength) {\n var arrValue = array[index],\n othValue = other[index];\n\n if (customizer) {\n var compared = isPartial\n ? customizer(othValue, arrValue, index, other, array, stack)\n : customizer(arrValue, othValue, index, array, other, stack);\n }\n if (compared !== undefined) {\n if (compared) {\n continue;\n }\n result = false;\n break;\n }\n // Recursively compare arrays (susceptible to call stack limits).\n if (seen) {\n if (!arraySome(other, function(othValue, othIndex) {\n if (!cacheHas(seen, othIndex) &&\n (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) {\n return seen.push(othIndex);\n }\n })) {\n result = false;\n break;\n }\n } else if (!(\n arrValue === othValue ||\n equalFunc(arrValue, othValue, bitmask, customizer, stack)\n )) {\n result = false;\n break;\n }\n }\n stack['delete'](array);\n stack['delete'](other);\n return result;\n}\n\nmodule.exports = equalArrays;\n","var Symbol = require('./_Symbol'),\n Uint8Array = require('./_Uint8Array'),\n eq = require('./eq'),\n equalArrays = require('./_equalArrays'),\n mapToArray = require('./_mapToArray'),\n setToArray = require('./_setToArray');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1,\n COMPARE_UNORDERED_FLAG = 2;\n\n/** `Object#toString` result references. */\nvar boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n errorTag = '[object Error]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n symbolTag = '[object Symbol]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]';\n\n/** Used to convert symbols to primitives and strings. */\nvar symbolProto = Symbol ? Symbol.prototype : undefined,\n symbolValueOf = symbolProto ? symbolProto.valueOf : undefined;\n\n/**\n * A specialized version of `baseIsEqualDeep` for comparing objects of\n * the same `toStringTag`.\n *\n * **Note:** This function only supports comparing values with tags of\n * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {string} tag The `toStringTag` of the objects to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) {\n switch (tag) {\n case dataViewTag:\n if ((object.byteLength != other.byteLength) ||\n (object.byteOffset != other.byteOffset)) {\n return false;\n }\n object = object.buffer;\n other = other.buffer;\n\n case arrayBufferTag:\n if ((object.byteLength != other.byteLength) ||\n !equalFunc(new Uint8Array(object), new Uint8Array(other))) {\n return false;\n }\n return true;\n\n case boolTag:\n case dateTag:\n case numberTag:\n // Coerce booleans to `1` or `0` and dates to milliseconds.\n // Invalid dates are coerced to `NaN`.\n return eq(+object, +other);\n\n case errorTag:\n return object.name == other.name && object.message == other.message;\n\n case regexpTag:\n case stringTag:\n // Coerce regexes to strings and treat strings, primitives and objects,\n // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring\n // for more details.\n return object == (other + '');\n\n case mapTag:\n var convert = mapToArray;\n\n case setTag:\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG;\n convert || (convert = setToArray);\n\n if (object.size != other.size && !isPartial) {\n return false;\n }\n // Assume cyclic values are equal.\n var stacked = stack.get(object);\n if (stacked) {\n return stacked == other;\n }\n bitmask |= COMPARE_UNORDERED_FLAG;\n\n // Recursively compare objects (susceptible to call stack limits).\n stack.set(object, other);\n var result = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack);\n stack['delete'](object);\n return result;\n\n case symbolTag:\n if (symbolValueOf) {\n return symbolValueOf.call(object) == symbolValueOf.call(other);\n }\n }\n return false;\n}\n\nmodule.exports = equalByTag;\n","var getAllKeys = require('./_getAllKeys');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1;\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * A specialized version of `baseIsEqualDeep` for objects with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction equalObjects(object, other, bitmask, customizer, equalFunc, stack) {\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n objProps = getAllKeys(object),\n objLength = objProps.length,\n othProps = getAllKeys(other),\n othLength = othProps.length;\n\n if (objLength != othLength && !isPartial) {\n return false;\n }\n var index = objLength;\n while (index--) {\n var key = objProps[index];\n if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) {\n return false;\n }\n }\n // Check that cyclic values are equal.\n var objStacked = stack.get(object);\n var othStacked = stack.get(other);\n if (objStacked && othStacked) {\n return objStacked == other && othStacked == object;\n }\n var result = true;\n stack.set(object, other);\n stack.set(other, object);\n\n var skipCtor = isPartial;\n while (++index < objLength) {\n key = objProps[index];\n var objValue = object[key],\n othValue = other[key];\n\n if (customizer) {\n var compared = isPartial\n ? customizer(othValue, objValue, key, other, object, stack)\n : customizer(objValue, othValue, key, object, other, stack);\n }\n // Recursively compare objects (susceptible to call stack limits).\n if (!(compared === undefined\n ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack))\n : compared\n )) {\n result = false;\n break;\n }\n skipCtor || (skipCtor = key == 'constructor');\n }\n if (result && !skipCtor) {\n var objCtor = object.constructor,\n othCtor = other.constructor;\n\n // Non `Object` object instances with different constructors are not equal.\n if (objCtor != othCtor &&\n ('constructor' in object && 'constructor' in other) &&\n !(typeof objCtor == 'function' && objCtor instanceof objCtor &&\n typeof othCtor == 'function' && othCtor instanceof othCtor)) {\n result = false;\n }\n }\n stack['delete'](object);\n stack['delete'](other);\n return result;\n}\n\nmodule.exports = equalObjects;\n","/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\nmodule.exports = freeGlobal;\n","var baseGetAllKeys = require('./_baseGetAllKeys'),\n getSymbols = require('./_getSymbols'),\n keys = require('./keys');\n\n/**\n * Creates an array of own enumerable property names and symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction getAllKeys(object) {\n return baseGetAllKeys(object, keys, getSymbols);\n}\n\nmodule.exports = getAllKeys;\n","var isKeyable = require('./_isKeyable');\n\n/**\n * Gets the data for `map`.\n *\n * @private\n * @param {Object} map The map to query.\n * @param {string} key The reference key.\n * @returns {*} Returns the map data.\n */\nfunction getMapData(map, key) {\n var data = map.__data__;\n return isKeyable(key)\n ? data[typeof key == 'string' ? 'string' : 'hash']\n : data.map;\n}\n\nmodule.exports = getMapData;\n","var baseIsNative = require('./_baseIsNative'),\n getValue = require('./_getValue');\n\n/**\n * Gets the native function at `key` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the method to get.\n * @returns {*} Returns the function if it's native, else `undefined`.\n */\nfunction getNative(object, key) {\n var value = getValue(object, key);\n return baseIsNative(value) ? value : undefined;\n}\n\nmodule.exports = getNative;\n","var overArg = require('./_overArg');\n\n/** Built-in value references. */\nvar getPrototype = overArg(Object.getPrototypeOf, Object);\n\nmodule.exports = getPrototype;\n","var Symbol = require('./_Symbol');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\nfunction getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n}\n\nmodule.exports = getRawTag;\n","var arrayFilter = require('./_arrayFilter'),\n stubArray = require('./stubArray');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Built-in value references. */\nvar propertyIsEnumerable = objectProto.propertyIsEnumerable;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeGetSymbols = Object.getOwnPropertySymbols;\n\n/**\n * Creates an array of the own enumerable symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of symbols.\n */\nvar getSymbols = !nativeGetSymbols ? stubArray : function(object) {\n if (object == null) {\n return [];\n }\n object = Object(object);\n return arrayFilter(nativeGetSymbols(object), function(symbol) {\n return propertyIsEnumerable.call(object, symbol);\n });\n};\n\nmodule.exports = getSymbols;\n","var DataView = require('./_DataView'),\n Map = require('./_Map'),\n Promise = require('./_Promise'),\n Set = require('./_Set'),\n WeakMap = require('./_WeakMap'),\n baseGetTag = require('./_baseGetTag'),\n toSource = require('./_toSource');\n\n/** `Object#toString` result references. */\nvar mapTag = '[object Map]',\n objectTag = '[object Object]',\n promiseTag = '[object Promise]',\n setTag = '[object Set]',\n weakMapTag = '[object WeakMap]';\n\nvar dataViewTag = '[object DataView]';\n\n/** Used to detect maps, sets, and weakmaps. */\nvar dataViewCtorString = toSource(DataView),\n mapCtorString = toSource(Map),\n promiseCtorString = toSource(Promise),\n setCtorString = toSource(Set),\n weakMapCtorString = toSource(WeakMap);\n\n/**\n * Gets the `toStringTag` of `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nvar getTag = baseGetTag;\n\n// Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6.\nif ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) ||\n (Map && getTag(new Map) != mapTag) ||\n (Promise && getTag(Promise.resolve()) != promiseTag) ||\n (Set && getTag(new Set) != setTag) ||\n (WeakMap && getTag(new WeakMap) != weakMapTag)) {\n getTag = function(value) {\n var result = baseGetTag(value),\n Ctor = result == objectTag ? value.constructor : undefined,\n ctorString = Ctor ? toSource(Ctor) : '';\n\n if (ctorString) {\n switch (ctorString) {\n case dataViewCtorString: return dataViewTag;\n case mapCtorString: return mapTag;\n case promiseCtorString: return promiseTag;\n case setCtorString: return setTag;\n case weakMapCtorString: return weakMapTag;\n }\n }\n return result;\n };\n}\n\nmodule.exports = getTag;\n","/**\n * Gets the value at `key` of `object`.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction getValue(object, key) {\n return object == null ? undefined : object[key];\n}\n\nmodule.exports = getValue;\n","var nativeCreate = require('./_nativeCreate');\n\n/**\n * Removes all key-value entries from the hash.\n *\n * @private\n * @name clear\n * @memberOf Hash\n */\nfunction hashClear() {\n this.__data__ = nativeCreate ? nativeCreate(null) : {};\n this.size = 0;\n}\n\nmodule.exports = hashClear;\n","/**\n * Removes `key` and its value from the hash.\n *\n * @private\n * @name delete\n * @memberOf Hash\n * @param {Object} hash The hash to modify.\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction hashDelete(key) {\n var result = this.has(key) && delete this.__data__[key];\n this.size -= result ? 1 : 0;\n return result;\n}\n\nmodule.exports = hashDelete;\n","var nativeCreate = require('./_nativeCreate');\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Gets the hash value for `key`.\n *\n * @private\n * @name get\n * @memberOf Hash\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction hashGet(key) {\n var data = this.__data__;\n if (nativeCreate) {\n var result = data[key];\n return result === HASH_UNDEFINED ? undefined : result;\n }\n return hasOwnProperty.call(data, key) ? data[key] : undefined;\n}\n\nmodule.exports = hashGet;\n","var nativeCreate = require('./_nativeCreate');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Checks if a hash value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Hash\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction hashHas(key) {\n var data = this.__data__;\n return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key);\n}\n\nmodule.exports = hashHas;\n","var nativeCreate = require('./_nativeCreate');\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/**\n * Sets the hash `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Hash\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the hash instance.\n */\nfunction hashSet(key, value) {\n var data = this.__data__;\n this.size += this.has(key) ? 0 : 1;\n data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;\n return this;\n}\n\nmodule.exports = hashSet;\n","var baseCreate = require('./_baseCreate'),\n getPrototype = require('./_getPrototype'),\n isPrototype = require('./_isPrototype');\n\n/**\n * Initializes an object clone.\n *\n * @private\n * @param {Object} object The object to clone.\n * @returns {Object} Returns the initialized clone.\n */\nfunction initCloneObject(object) {\n return (typeof object.constructor == 'function' && !isPrototype(object))\n ? baseCreate(getPrototype(object))\n : {};\n}\n\nmodule.exports = initCloneObject;\n","/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 9007199254740991;\n\n/** Used to detect unsigned integer values. */\nvar reIsUint = /^(?:0|[1-9]\\d*)$/;\n\n/**\n * Checks if `value` is a valid array-like index.\n *\n * @private\n * @param {*} value The value to check.\n * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.\n * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.\n */\nfunction isIndex(value, length) {\n var type = typeof value;\n length = length == null ? MAX_SAFE_INTEGER : length;\n\n return !!length &&\n (type == 'number' ||\n (type != 'symbol' && reIsUint.test(value))) &&\n (value > -1 && value % 1 == 0 && value < length);\n}\n\nmodule.exports = isIndex;\n","var eq = require('./eq'),\n isArrayLike = require('./isArrayLike'),\n isIndex = require('./_isIndex'),\n isObject = require('./isObject');\n\n/**\n * Checks if the given arguments are from an iteratee call.\n *\n * @private\n * @param {*} value The potential iteratee value argument.\n * @param {*} index The potential iteratee index or key argument.\n * @param {*} object The potential iteratee object argument.\n * @returns {boolean} Returns `true` if the arguments are from an iteratee call,\n * else `false`.\n */\nfunction isIterateeCall(value, index, object) {\n if (!isObject(object)) {\n return false;\n }\n var type = typeof index;\n if (type == 'number'\n ? (isArrayLike(object) && isIndex(index, object.length))\n : (type == 'string' && index in object)\n ) {\n return eq(object[index], value);\n }\n return false;\n}\n\nmodule.exports = isIterateeCall;\n","/**\n * Checks if `value` is suitable for use as unique object key.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is suitable, else `false`.\n */\nfunction isKeyable(value) {\n var type = typeof value;\n return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')\n ? (value !== '__proto__')\n : (value === null);\n}\n\nmodule.exports = isKeyable;\n","var coreJsData = require('./_coreJsData');\n\n/** Used to detect methods masquerading as native. */\nvar maskSrcKey = (function() {\n var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');\n return uid ? ('Symbol(src)_1.' + uid) : '';\n}());\n\n/**\n * Checks if `func` has its source masked.\n *\n * @private\n * @param {Function} func The function to check.\n * @returns {boolean} Returns `true` if `func` is masked, else `false`.\n */\nfunction isMasked(func) {\n return !!maskSrcKey && (maskSrcKey in func);\n}\n\nmodule.exports = isMasked;\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Checks if `value` is likely a prototype object.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.\n */\nfunction isPrototype(value) {\n var Ctor = value && value.constructor,\n proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto;\n\n return value === proto;\n}\n\nmodule.exports = isPrototype;\n","/**\n * Removes all key-value entries from the list cache.\n *\n * @private\n * @name clear\n * @memberOf ListCache\n */\nfunction listCacheClear() {\n this.__data__ = [];\n this.size = 0;\n}\n\nmodule.exports = listCacheClear;\n","var assocIndexOf = require('./_assocIndexOf');\n\n/** Used for built-in method references. */\nvar arrayProto = Array.prototype;\n\n/** Built-in value references. */\nvar splice = arrayProto.splice;\n\n/**\n * Removes `key` and its value from the list cache.\n *\n * @private\n * @name delete\n * @memberOf ListCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction listCacheDelete(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n return false;\n }\n var lastIndex = data.length - 1;\n if (index == lastIndex) {\n data.pop();\n } else {\n splice.call(data, index, 1);\n }\n --this.size;\n return true;\n}\n\nmodule.exports = listCacheDelete;\n","var assocIndexOf = require('./_assocIndexOf');\n\n/**\n * Gets the list cache value for `key`.\n *\n * @private\n * @name get\n * @memberOf ListCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction listCacheGet(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n return index < 0 ? undefined : data[index][1];\n}\n\nmodule.exports = listCacheGet;\n","var assocIndexOf = require('./_assocIndexOf');\n\n/**\n * Checks if a list cache value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf ListCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction listCacheHas(key) {\n return assocIndexOf(this.__data__, key) > -1;\n}\n\nmodule.exports = listCacheHas;\n","var assocIndexOf = require('./_assocIndexOf');\n\n/**\n * Sets the list cache `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf ListCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the list cache instance.\n */\nfunction listCacheSet(key, value) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n ++this.size;\n data.push([key, value]);\n } else {\n data[index][1] = value;\n }\n return this;\n}\n\nmodule.exports = listCacheSet;\n","var Hash = require('./_Hash'),\n ListCache = require('./_ListCache'),\n Map = require('./_Map');\n\n/**\n * Removes all key-value entries from the map.\n *\n * @private\n * @name clear\n * @memberOf MapCache\n */\nfunction mapCacheClear() {\n this.size = 0;\n this.__data__ = {\n 'hash': new Hash,\n 'map': new (Map || ListCache),\n 'string': new Hash\n };\n}\n\nmodule.exports = mapCacheClear;\n","var getMapData = require('./_getMapData');\n\n/**\n * Removes `key` and its value from the map.\n *\n * @private\n * @name delete\n * @memberOf MapCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction mapCacheDelete(key) {\n var result = getMapData(this, key)['delete'](key);\n this.size -= result ? 1 : 0;\n return result;\n}\n\nmodule.exports = mapCacheDelete;\n","var getMapData = require('./_getMapData');\n\n/**\n * Gets the map value for `key`.\n *\n * @private\n * @name get\n * @memberOf MapCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction mapCacheGet(key) {\n return getMapData(this, key).get(key);\n}\n\nmodule.exports = mapCacheGet;\n","var getMapData = require('./_getMapData');\n\n/**\n * Checks if a map value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf MapCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction mapCacheHas(key) {\n return getMapData(this, key).has(key);\n}\n\nmodule.exports = mapCacheHas;\n","var getMapData = require('./_getMapData');\n\n/**\n * Sets the map `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf MapCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the map cache instance.\n */\nfunction mapCacheSet(key, value) {\n var data = getMapData(this, key),\n size = data.size;\n\n data.set(key, value);\n this.size += data.size == size ? 0 : 1;\n return this;\n}\n\nmodule.exports = mapCacheSet;\n","/**\n * Converts `map` to its key-value pairs.\n *\n * @private\n * @param {Object} map The map to convert.\n * @returns {Array} Returns the key-value pairs.\n */\nfunction mapToArray(map) {\n var index = -1,\n result = Array(map.size);\n\n map.forEach(function(value, key) {\n result[++index] = [key, value];\n });\n return result;\n}\n\nmodule.exports = mapToArray;\n","var getNative = require('./_getNative');\n\n/* Built-in method references that are verified to be native. */\nvar nativeCreate = getNative(Object, 'create');\n\nmodule.exports = nativeCreate;\n","var overArg = require('./_overArg');\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeKeys = overArg(Object.keys, Object);\n\nmodule.exports = nativeKeys;\n","/**\n * This function is like\n * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * except that it includes inherited enumerable properties.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction nativeKeysIn(object) {\n var result = [];\n if (object != null) {\n for (var key in Object(object)) {\n result.push(key);\n }\n }\n return result;\n}\n\nmodule.exports = nativeKeysIn;\n","var freeGlobal = require('./_freeGlobal');\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Detect free variable `process` from Node.js. */\nvar freeProcess = moduleExports && freeGlobal.process;\n\n/** Used to access faster Node.js helpers. */\nvar nodeUtil = (function() {\n try {\n // Use `util.types` for Node.js 10+.\n var types = freeModule && freeModule.require && freeModule.require('util').types;\n\n if (types) {\n return types;\n }\n\n // Legacy `process.binding('util')` for Node.js < 10.\n return freeProcess && freeProcess.binding && freeProcess.binding('util');\n } catch (e) {}\n}());\n\nmodule.exports = nodeUtil;\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\nfunction objectToString(value) {\n return nativeObjectToString.call(value);\n}\n\nmodule.exports = objectToString;\n","/**\n * Creates a unary function that invokes `func` with its argument transformed.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {Function} transform The argument transform.\n * @returns {Function} Returns the new function.\n */\nfunction overArg(func, transform) {\n return function(arg) {\n return func(transform(arg));\n };\n}\n\nmodule.exports = overArg;\n","var apply = require('./_apply');\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max;\n\n/**\n * A specialized version of `baseRest` which transforms the rest array.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @param {Function} transform The rest array transform.\n * @returns {Function} Returns the new function.\n */\nfunction overRest(func, start, transform) {\n start = nativeMax(start === undefined ? (func.length - 1) : start, 0);\n return function() {\n var args = arguments,\n index = -1,\n length = nativeMax(args.length - start, 0),\n array = Array(length);\n\n while (++index < length) {\n array[index] = args[start + index];\n }\n index = -1;\n var otherArgs = Array(start + 1);\n while (++index < start) {\n otherArgs[index] = args[index];\n }\n otherArgs[start] = transform(array);\n return apply(func, this, otherArgs);\n };\n}\n\nmodule.exports = overRest;\n","var freeGlobal = require('./_freeGlobal');\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\nmodule.exports = root;\n","/**\n * Gets the value at `key`, unless `key` is \"__proto__\" or \"constructor\".\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction safeGet(object, key) {\n if (key === 'constructor' && typeof object[key] === 'function') {\n return;\n }\n\n if (key == '__proto__') {\n return;\n }\n\n return object[key];\n}\n\nmodule.exports = safeGet;\n","/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/**\n * Adds `value` to the array cache.\n *\n * @private\n * @name add\n * @memberOf SetCache\n * @alias push\n * @param {*} value The value to cache.\n * @returns {Object} Returns the cache instance.\n */\nfunction setCacheAdd(value) {\n this.__data__.set(value, HASH_UNDEFINED);\n return this;\n}\n\nmodule.exports = setCacheAdd;\n","/**\n * Checks if `value` is in the array cache.\n *\n * @private\n * @name has\n * @memberOf SetCache\n * @param {*} value The value to search for.\n * @returns {number} Returns `true` if `value` is found, else `false`.\n */\nfunction setCacheHas(value) {\n return this.__data__.has(value);\n}\n\nmodule.exports = setCacheHas;\n","/**\n * Converts `set` to an array of its values.\n *\n * @private\n * @param {Object} set The set to convert.\n * @returns {Array} Returns the values.\n */\nfunction setToArray(set) {\n var index = -1,\n result = Array(set.size);\n\n set.forEach(function(value) {\n result[++index] = value;\n });\n return result;\n}\n\nmodule.exports = setToArray;\n","var baseSetToString = require('./_baseSetToString'),\n shortOut = require('./_shortOut');\n\n/**\n * Sets the `toString` method of `func` to return `string`.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\nvar setToString = shortOut(baseSetToString);\n\nmodule.exports = setToString;\n","/** Used to detect hot functions by number of calls within a span of milliseconds. */\nvar HOT_COUNT = 800,\n HOT_SPAN = 16;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeNow = Date.now;\n\n/**\n * Creates a function that'll short out and invoke `identity` instead\n * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN`\n * milliseconds.\n *\n * @private\n * @param {Function} func The function to restrict.\n * @returns {Function} Returns the new shortable function.\n */\nfunction shortOut(func) {\n var count = 0,\n lastCalled = 0;\n\n return function() {\n var stamp = nativeNow(),\n remaining = HOT_SPAN - (stamp - lastCalled);\n\n lastCalled = stamp;\n if (remaining > 0) {\n if (++count >= HOT_COUNT) {\n return arguments[0];\n }\n } else {\n count = 0;\n }\n return func.apply(undefined, arguments);\n };\n}\n\nmodule.exports = shortOut;\n","var ListCache = require('./_ListCache');\n\n/**\n * Removes all key-value entries from the stack.\n *\n * @private\n * @name clear\n * @memberOf Stack\n */\nfunction stackClear() {\n this.__data__ = new ListCache;\n this.size = 0;\n}\n\nmodule.exports = stackClear;\n","/**\n * Removes `key` and its value from the stack.\n *\n * @private\n * @name delete\n * @memberOf Stack\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction stackDelete(key) {\n var data = this.__data__,\n result = data['delete'](key);\n\n this.size = data.size;\n return result;\n}\n\nmodule.exports = stackDelete;\n","/**\n * Gets the stack value for `key`.\n *\n * @private\n * @name get\n * @memberOf Stack\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction stackGet(key) {\n return this.__data__.get(key);\n}\n\nmodule.exports = stackGet;\n","/**\n * Checks if a stack value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Stack\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction stackHas(key) {\n return this.__data__.has(key);\n}\n\nmodule.exports = stackHas;\n","var ListCache = require('./_ListCache'),\n Map = require('./_Map'),\n MapCache = require('./_MapCache');\n\n/** Used as the size to enable large array optimizations. */\nvar LARGE_ARRAY_SIZE = 200;\n\n/**\n * Sets the stack `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Stack\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the stack cache instance.\n */\nfunction stackSet(key, value) {\n var data = this.__data__;\n if (data instanceof ListCache) {\n var pairs = data.__data__;\n if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) {\n pairs.push([key, value]);\n this.size = ++data.size;\n return this;\n }\n data = this.__data__ = new MapCache(pairs);\n }\n data.set(key, value);\n this.size = data.size;\n return this;\n}\n\nmodule.exports = stackSet;\n","/** Used for built-in method references. */\nvar funcProto = Function.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/**\n * Converts `func` to its source code.\n *\n * @private\n * @param {Function} func The function to convert.\n * @returns {string} Returns the source code.\n */\nfunction toSource(func) {\n if (func != null) {\n try {\n return funcToString.call(func);\n } catch (e) {}\n try {\n return (func + '');\n } catch (e) {}\n }\n return '';\n}\n\nmodule.exports = toSource;\n","/**\n * Creates a function that returns `value`.\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Util\n * @param {*} value The value to return from the new function.\n * @returns {Function} Returns the new constant function.\n * @example\n *\n * var objects = _.times(2, _.constant({ 'a': 1 }));\n *\n * console.log(objects);\n * // => [{ 'a': 1 }, { 'a': 1 }]\n *\n * console.log(objects[0] === objects[1]);\n * // => true\n */\nfunction constant(value) {\n return function() {\n return value;\n };\n}\n\nmodule.exports = constant;\n","/**\n * Performs a\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * comparison between two values to determine if they are equivalent.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.eq(object, object);\n * // => true\n *\n * _.eq(object, other);\n * // => false\n *\n * _.eq('a', 'a');\n * // => true\n *\n * _.eq('a', Object('a'));\n * // => false\n *\n * _.eq(NaN, NaN);\n * // => true\n */\nfunction eq(value, other) {\n return value === other || (value !== value && other !== other);\n}\n\nmodule.exports = eq;\n","/**\n * This method returns the first argument it receives.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Util\n * @param {*} value Any value.\n * @returns {*} Returns `value`.\n * @example\n *\n * var object = { 'a': 1 };\n *\n * console.log(_.identity(object) === object);\n * // => true\n */\nfunction identity(value) {\n return value;\n}\n\nmodule.exports = identity;\n","var baseIsArguments = require('./_baseIsArguments'),\n isObjectLike = require('./isObjectLike');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Built-in value references. */\nvar propertyIsEnumerable = objectProto.propertyIsEnumerable;\n\n/**\n * Checks if `value` is likely an `arguments` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n * else `false`.\n * @example\n *\n * _.isArguments(function() { return arguments; }());\n * // => true\n *\n * _.isArguments([1, 2, 3]);\n * // => false\n */\nvar isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) {\n return isObjectLike(value) && hasOwnProperty.call(value, 'callee') &&\n !propertyIsEnumerable.call(value, 'callee');\n};\n\nmodule.exports = isArguments;\n","/**\n * Checks if `value` is classified as an `Array` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array, else `false`.\n * @example\n *\n * _.isArray([1, 2, 3]);\n * // => true\n *\n * _.isArray(document.body.children);\n * // => false\n *\n * _.isArray('abc');\n * // => false\n *\n * _.isArray(_.noop);\n * // => false\n */\nvar isArray = Array.isArray;\n\nmodule.exports = isArray;\n","var isFunction = require('./isFunction'),\n isLength = require('./isLength');\n\n/**\n * Checks if `value` is array-like. A value is considered array-like if it's\n * not a function and has a `value.length` that's an integer greater than or\n * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is array-like, else `false`.\n * @example\n *\n * _.isArrayLike([1, 2, 3]);\n * // => true\n *\n * _.isArrayLike(document.body.children);\n * // => true\n *\n * _.isArrayLike('abc');\n * // => true\n *\n * _.isArrayLike(_.noop);\n * // => false\n */\nfunction isArrayLike(value) {\n return value != null && isLength(value.length) && !isFunction(value);\n}\n\nmodule.exports = isArrayLike;\n","var isArrayLike = require('./isArrayLike'),\n isObjectLike = require('./isObjectLike');\n\n/**\n * This method is like `_.isArrayLike` except that it also checks if `value`\n * is an object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array-like object,\n * else `false`.\n * @example\n *\n * _.isArrayLikeObject([1, 2, 3]);\n * // => true\n *\n * _.isArrayLikeObject(document.body.children);\n * // => true\n *\n * _.isArrayLikeObject('abc');\n * // => false\n *\n * _.isArrayLikeObject(_.noop);\n * // => false\n */\nfunction isArrayLikeObject(value) {\n return isObjectLike(value) && isArrayLike(value);\n}\n\nmodule.exports = isArrayLikeObject;\n","var root = require('./_root'),\n stubFalse = require('./stubFalse');\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Built-in value references. */\nvar Buffer = moduleExports ? root.Buffer : undefined;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined;\n\n/**\n * Checks if `value` is a buffer.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.\n * @example\n *\n * _.isBuffer(new Buffer(2));\n * // => true\n *\n * _.isBuffer(new Uint8Array(2));\n * // => false\n */\nvar isBuffer = nativeIsBuffer || stubFalse;\n\nmodule.exports = isBuffer;\n","var baseIsEqual = require('./_baseIsEqual');\n\n/**\n * Performs a deep comparison between two values to determine if they are\n * equivalent.\n *\n * **Note:** This method supports comparing arrays, array buffers, booleans,\n * date objects, error objects, maps, numbers, `Object` objects, regexes,\n * sets, strings, symbols, and typed arrays. `Object` objects are compared\n * by their own, not inherited, enumerable properties. Functions and DOM\n * nodes are compared by strict equality, i.e. `===`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.isEqual(object, other);\n * // => true\n *\n * object === other;\n * // => false\n */\nfunction isEqual(value, other) {\n return baseIsEqual(value, other);\n}\n\nmodule.exports = isEqual;\n","var baseGetTag = require('./_baseGetTag'),\n isObject = require('./isObject');\n\n/** `Object#toString` result references. */\nvar asyncTag = '[object AsyncFunction]',\n funcTag = '[object Function]',\n genTag = '[object GeneratorFunction]',\n proxyTag = '[object Proxy]';\n\n/**\n * Checks if `value` is classified as a `Function` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a function, else `false`.\n * @example\n *\n * _.isFunction(_);\n * // => true\n *\n * _.isFunction(/abc/);\n * // => false\n */\nfunction isFunction(value) {\n if (!isObject(value)) {\n return false;\n }\n // The use of `Object#toString` avoids issues with the `typeof` operator\n // in Safari 9 which returns 'object' for typed arrays and other constructors.\n var tag = baseGetTag(value);\n return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;\n}\n\nmodule.exports = isFunction;\n","/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 9007199254740991;\n\n/**\n * Checks if `value` is a valid array-like length.\n *\n * **Note:** This method is loosely based on\n * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.\n * @example\n *\n * _.isLength(3);\n * // => true\n *\n * _.isLength(Number.MIN_VALUE);\n * // => false\n *\n * _.isLength(Infinity);\n * // => false\n *\n * _.isLength('3');\n * // => false\n */\nfunction isLength(value) {\n return typeof value == 'number' &&\n value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;\n}\n\nmodule.exports = isLength;\n","/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return value != null && (type == 'object' || type == 'function');\n}\n\nmodule.exports = isObject;\n","/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return value != null && typeof value == 'object';\n}\n\nmodule.exports = isObjectLike;\n","var baseGetTag = require('./_baseGetTag'),\n getPrototype = require('./_getPrototype'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar objectTag = '[object Object]';\n\n/** Used for built-in method references. */\nvar funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Used to infer the `Object` constructor. */\nvar objectCtorString = funcToString.call(Object);\n\n/**\n * Checks if `value` is a plain object, that is, an object created by the\n * `Object` constructor or one with a `[[Prototype]]` of `null`.\n *\n * @static\n * @memberOf _\n * @since 0.8.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a plain object, else `false`.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * }\n *\n * _.isPlainObject(new Foo);\n * // => false\n *\n * _.isPlainObject([1, 2, 3]);\n * // => false\n *\n * _.isPlainObject({ 'x': 0, 'y': 0 });\n * // => true\n *\n * _.isPlainObject(Object.create(null));\n * // => true\n */\nfunction isPlainObject(value) {\n if (!isObjectLike(value) || baseGetTag(value) != objectTag) {\n return false;\n }\n var proto = getPrototype(value);\n if (proto === null) {\n return true;\n }\n var Ctor = hasOwnProperty.call(proto, 'constructor') && proto.constructor;\n return typeof Ctor == 'function' && Ctor instanceof Ctor &&\n funcToString.call(Ctor) == objectCtorString;\n}\n\nmodule.exports = isPlainObject;\n","var baseIsTypedArray = require('./_baseIsTypedArray'),\n baseUnary = require('./_baseUnary'),\n nodeUtil = require('./_nodeUtil');\n\n/* Node.js helper references. */\nvar nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;\n\n/**\n * Checks if `value` is classified as a typed array.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n * @example\n *\n * _.isTypedArray(new Uint8Array);\n * // => true\n *\n * _.isTypedArray([]);\n * // => false\n */\nvar isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;\n\nmodule.exports = isTypedArray;\n","var arrayLikeKeys = require('./_arrayLikeKeys'),\n baseKeys = require('./_baseKeys'),\n isArrayLike = require('./isArrayLike');\n\n/**\n * Creates an array of the own enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects. See the\n * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * for more details.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keys(new Foo);\n * // => ['a', 'b'] (iteration order is not guaranteed)\n *\n * _.keys('hi');\n * // => ['0', '1']\n */\nfunction keys(object) {\n return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object);\n}\n\nmodule.exports = keys;\n","var arrayLikeKeys = require('./_arrayLikeKeys'),\n baseKeysIn = require('./_baseKeysIn'),\n isArrayLike = require('./isArrayLike');\n\n/**\n * Creates an array of the own and inherited enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keysIn(new Foo);\n * // => ['a', 'b', 'c'] (iteration order is not guaranteed)\n */\nfunction keysIn(object) {\n return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object);\n}\n\nmodule.exports = keysIn;\n","var baseMerge = require('./_baseMerge'),\n createAssigner = require('./_createAssigner');\n\n/**\n * This method is like `_.assign` except that it recursively merges own and\n * inherited enumerable string keyed properties of source objects into the\n * destination object. Source properties that resolve to `undefined` are\n * skipped if a destination value exists. Array and plain object properties\n * are merged recursively. Other objects and value types are overridden by\n * assignment. Source objects are applied from left to right. Subsequent\n * sources overwrite property assignments of previous sources.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 0.5.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} [sources] The source objects.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = {\n * 'a': [{ 'b': 2 }, { 'd': 4 }]\n * };\n *\n * var other = {\n * 'a': [{ 'c': 3 }, { 'e': 5 }]\n * };\n *\n * _.merge(object, other);\n * // => { 'a': [{ 'b': 2, 'c': 3 }, { 'd': 4, 'e': 5 }] }\n */\nvar merge = createAssigner(function(object, source, srcIndex) {\n baseMerge(object, source, srcIndex);\n});\n\nmodule.exports = merge;\n","/**\n * This method returns a new empty array.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {Array} Returns the new empty array.\n * @example\n *\n * var arrays = _.times(2, _.stubArray);\n *\n * console.log(arrays);\n * // => [[], []]\n *\n * console.log(arrays[0] === arrays[1]);\n * // => false\n */\nfunction stubArray() {\n return [];\n}\n\nmodule.exports = stubArray;\n","/**\n * This method returns `false`.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {boolean} Returns `false`.\n * @example\n *\n * _.times(2, _.stubFalse);\n * // => [false, false]\n */\nfunction stubFalse() {\n return false;\n}\n\nmodule.exports = stubFalse;\n","var copyObject = require('./_copyObject'),\n keysIn = require('./keysIn');\n\n/**\n * Converts `value` to a plain object flattening inherited enumerable string\n * keyed properties of `value` to own properties of the plain object.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {Object} Returns the converted plain object.\n * @example\n *\n * function Foo() {\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.assign({ 'a': 1 }, new Foo);\n * // => { 'a': 1, 'b': 2 }\n *\n * _.assign({ 'a': 1 }, _.toPlainObject(new Foo));\n * // => { 'a': 1, 'b': 2, 'c': 3 }\n */\nfunction toPlainObject(value) {\n return copyObject(value, keysIn(value));\n}\n\nmodule.exports = toPlainObject;\n","/**!\n * @fileOverview Kickass library to create and place poppers near their reference elements.\n * @version 1.16.1\n * @license\n * Copyright (c) 2016 Federico Zivolo and contributors\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n * SOFTWARE.\n */\nvar isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined' && typeof navigator !== 'undefined';\n\nvar timeoutDuration = function () {\n var longerTimeoutBrowsers = ['Edge', 'Trident', 'Firefox'];\n for (var i = 0; i < longerTimeoutBrowsers.length; i += 1) {\n if (isBrowser && navigator.userAgent.indexOf(longerTimeoutBrowsers[i]) >= 0) {\n return 1;\n }\n }\n return 0;\n}();\n\nfunction microtaskDebounce(fn) {\n var called = false;\n return function () {\n if (called) {\n return;\n }\n called = true;\n window.Promise.resolve().then(function () {\n called = false;\n fn();\n });\n };\n}\n\nfunction taskDebounce(fn) {\n var scheduled = false;\n return function () {\n if (!scheduled) {\n scheduled = true;\n setTimeout(function () {\n scheduled = false;\n fn();\n }, timeoutDuration);\n }\n };\n}\n\nvar supportsMicroTasks = isBrowser && window.Promise;\n\n/**\n* Create a debounced version of a method, that's asynchronously deferred\n* but called in the minimum time possible.\n*\n* @method\n* @memberof Popper.Utils\n* @argument {Function} fn\n* @returns {Function}\n*/\nvar debounce = supportsMicroTasks ? microtaskDebounce : taskDebounce;\n\n/**\n * Check if the given variable is a function\n * @method\n * @memberof Popper.Utils\n * @argument {Any} functionToCheck - variable to check\n * @returns {Boolean} answer to: is a function?\n */\nfunction isFunction(functionToCheck) {\n var getType = {};\n return functionToCheck && getType.toString.call(functionToCheck) === '[object Function]';\n}\n\n/**\n * Get CSS computed property of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Eement} element\n * @argument {String} property\n */\nfunction getStyleComputedProperty(element, property) {\n if (element.nodeType !== 1) {\n return [];\n }\n // NOTE: 1 DOM access here\n var window = element.ownerDocument.defaultView;\n var css = window.getComputedStyle(element, null);\n return property ? css[property] : css;\n}\n\n/**\n * Returns the parentNode or the host of the element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} parent\n */\nfunction getParentNode(element) {\n if (element.nodeName === 'HTML') {\n return element;\n }\n return element.parentNode || element.host;\n}\n\n/**\n * Returns the scrolling parent of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} scroll parent\n */\nfunction getScrollParent(element) {\n // Return body, `getScroll` will take care to get the correct `scrollTop` from it\n if (!element) {\n return document.body;\n }\n\n switch (element.nodeName) {\n case 'HTML':\n case 'BODY':\n return element.ownerDocument.body;\n case '#document':\n return element.body;\n }\n\n // Firefox want us to check `-x` and `-y` variations as well\n\n var _getStyleComputedProp = getStyleComputedProperty(element),\n overflow = _getStyleComputedProp.overflow,\n overflowX = _getStyleComputedProp.overflowX,\n overflowY = _getStyleComputedProp.overflowY;\n\n if (/(auto|scroll|overlay)/.test(overflow + overflowY + overflowX)) {\n return element;\n }\n\n return getScrollParent(getParentNode(element));\n}\n\n/**\n * Returns the reference node of the reference object, or the reference object itself.\n * @method\n * @memberof Popper.Utils\n * @param {Element|Object} reference - the reference element (the popper will be relative to this)\n * @returns {Element} parent\n */\nfunction getReferenceNode(reference) {\n return reference && reference.referenceNode ? reference.referenceNode : reference;\n}\n\nvar isIE11 = isBrowser && !!(window.MSInputMethodContext && document.documentMode);\nvar isIE10 = isBrowser && /MSIE 10/.test(navigator.userAgent);\n\n/**\n * Determines if the browser is Internet Explorer\n * @method\n * @memberof Popper.Utils\n * @param {Number} version to check\n * @returns {Boolean} isIE\n */\nfunction isIE(version) {\n if (version === 11) {\n return isIE11;\n }\n if (version === 10) {\n return isIE10;\n }\n return isIE11 || isIE10;\n}\n\n/**\n * Returns the offset parent of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} offset parent\n */\nfunction getOffsetParent(element) {\n if (!element) {\n return document.documentElement;\n }\n\n var noOffsetParent = isIE(10) ? document.body : null;\n\n // NOTE: 1 DOM access here\n var offsetParent = element.offsetParent || null;\n // Skip hidden elements which don't have an offsetParent\n while (offsetParent === noOffsetParent && element.nextElementSibling) {\n offsetParent = (element = element.nextElementSibling).offsetParent;\n }\n\n var nodeName = offsetParent && offsetParent.nodeName;\n\n if (!nodeName || nodeName === 'BODY' || nodeName === 'HTML') {\n return element ? element.ownerDocument.documentElement : document.documentElement;\n }\n\n // .offsetParent will return the closest TH, TD or TABLE in case\n // no offsetParent is present, I hate this job...\n if (['TH', 'TD', 'TABLE'].indexOf(offsetParent.nodeName) !== -1 && getStyleComputedProperty(offsetParent, 'position') === 'static') {\n return getOffsetParent(offsetParent);\n }\n\n return offsetParent;\n}\n\nfunction isOffsetContainer(element) {\n var nodeName = element.nodeName;\n\n if (nodeName === 'BODY') {\n return false;\n }\n return nodeName === 'HTML' || getOffsetParent(element.firstElementChild) === element;\n}\n\n/**\n * Finds the root node (document, shadowDOM root) of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} node\n * @returns {Element} root node\n */\nfunction getRoot(node) {\n if (node.parentNode !== null) {\n return getRoot(node.parentNode);\n }\n\n return node;\n}\n\n/**\n * Finds the offset parent common to the two provided nodes\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element1\n * @argument {Element} element2\n * @returns {Element} common offset parent\n */\nfunction findCommonOffsetParent(element1, element2) {\n // This check is needed to avoid errors in case one of the elements isn't defined for any reason\n if (!element1 || !element1.nodeType || !element2 || !element2.nodeType) {\n return document.documentElement;\n }\n\n // Here we make sure to give as \"start\" the element that comes first in the DOM\n var order = element1.compareDocumentPosition(element2) & Node.DOCUMENT_POSITION_FOLLOWING;\n var start = order ? element1 : element2;\n var end = order ? element2 : element1;\n\n // Get common ancestor container\n var range = document.createRange();\n range.setStart(start, 0);\n range.setEnd(end, 0);\n var commonAncestorContainer = range.commonAncestorContainer;\n\n // Both nodes are inside #document\n\n if (element1 !== commonAncestorContainer && element2 !== commonAncestorContainer || start.contains(end)) {\n if (isOffsetContainer(commonAncestorContainer)) {\n return commonAncestorContainer;\n }\n\n return getOffsetParent(commonAncestorContainer);\n }\n\n // one of the nodes is inside shadowDOM, find which one\n var element1root = getRoot(element1);\n if (element1root.host) {\n return findCommonOffsetParent(element1root.host, element2);\n } else {\n return findCommonOffsetParent(element1, getRoot(element2).host);\n }\n}\n\n/**\n * Gets the scroll value of the given element in the given side (top and left)\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @argument {String} side `top` or `left`\n * @returns {number} amount of scrolled pixels\n */\nfunction getScroll(element) {\n var side = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'top';\n\n var upperSide = side === 'top' ? 'scrollTop' : 'scrollLeft';\n var nodeName = element.nodeName;\n\n if (nodeName === 'BODY' || nodeName === 'HTML') {\n var html = element.ownerDocument.documentElement;\n var scrollingElement = element.ownerDocument.scrollingElement || html;\n return scrollingElement[upperSide];\n }\n\n return element[upperSide];\n}\n\n/*\n * Sum or subtract the element scroll values (left and top) from a given rect object\n * @method\n * @memberof Popper.Utils\n * @param {Object} rect - Rect object you want to change\n * @param {HTMLElement} element - The element from the function reads the scroll values\n * @param {Boolean} subtract - set to true if you want to subtract the scroll values\n * @return {Object} rect - The modifier rect object\n */\nfunction includeScroll(rect, element) {\n var subtract = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n\n var scrollTop = getScroll(element, 'top');\n var scrollLeft = getScroll(element, 'left');\n var modifier = subtract ? -1 : 1;\n rect.top += scrollTop * modifier;\n rect.bottom += scrollTop * modifier;\n rect.left += scrollLeft * modifier;\n rect.right += scrollLeft * modifier;\n return rect;\n}\n\n/*\n * Helper to detect borders of a given element\n * @method\n * @memberof Popper.Utils\n * @param {CSSStyleDeclaration} styles\n * Result of `getStyleComputedProperty` on the given element\n * @param {String} axis - `x` or `y`\n * @return {number} borders - The borders size of the given axis\n */\n\nfunction getBordersSize(styles, axis) {\n var sideA = axis === 'x' ? 'Left' : 'Top';\n var sideB = sideA === 'Left' ? 'Right' : 'Bottom';\n\n return parseFloat(styles['border' + sideA + 'Width']) + parseFloat(styles['border' + sideB + 'Width']);\n}\n\nfunction getSize(axis, body, html, computedStyle) {\n return Math.max(body['offset' + axis], body['scroll' + axis], html['client' + axis], html['offset' + axis], html['scroll' + axis], isIE(10) ? parseInt(html['offset' + axis]) + parseInt(computedStyle['margin' + (axis === 'Height' ? 'Top' : 'Left')]) + parseInt(computedStyle['margin' + (axis === 'Height' ? 'Bottom' : 'Right')]) : 0);\n}\n\nfunction getWindowSizes(document) {\n var body = document.body;\n var html = document.documentElement;\n var computedStyle = isIE(10) && getComputedStyle(html);\n\n return {\n height: getSize('Height', body, html, computedStyle),\n width: getSize('Width', body, html, computedStyle)\n };\n}\n\nvar classCallCheck = function (instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n};\n\nvar createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\n\n\n\n\n\nvar defineProperty = function (obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n};\n\nvar _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n};\n\n/**\n * Given element offsets, generate an output similar to getBoundingClientRect\n * @method\n * @memberof Popper.Utils\n * @argument {Object} offsets\n * @returns {Object} ClientRect like output\n */\nfunction getClientRect(offsets) {\n return _extends({}, offsets, {\n right: offsets.left + offsets.width,\n bottom: offsets.top + offsets.height\n });\n}\n\n/**\n * Get bounding client rect of given element\n * @method\n * @memberof Popper.Utils\n * @param {HTMLElement} element\n * @return {Object} client rect\n */\nfunction getBoundingClientRect(element) {\n var rect = {};\n\n // IE10 10 FIX: Please, don't ask, the element isn't\n // considered in DOM in some circumstances...\n // This isn't reproducible in IE10 compatibility mode of IE11\n try {\n if (isIE(10)) {\n rect = element.getBoundingClientRect();\n var scrollTop = getScroll(element, 'top');\n var scrollLeft = getScroll(element, 'left');\n rect.top += scrollTop;\n rect.left += scrollLeft;\n rect.bottom += scrollTop;\n rect.right += scrollLeft;\n } else {\n rect = element.getBoundingClientRect();\n }\n } catch (e) {}\n\n var result = {\n left: rect.left,\n top: rect.top,\n width: rect.right - rect.left,\n height: rect.bottom - rect.top\n };\n\n // subtract scrollbar size from sizes\n var sizes = element.nodeName === 'HTML' ? getWindowSizes(element.ownerDocument) : {};\n var width = sizes.width || element.clientWidth || result.width;\n var height = sizes.height || element.clientHeight || result.height;\n\n var horizScrollbar = element.offsetWidth - width;\n var vertScrollbar = element.offsetHeight - height;\n\n // if an hypothetical scrollbar is detected, we must be sure it's not a `border`\n // we make this check conditional for performance reasons\n if (horizScrollbar || vertScrollbar) {\n var styles = getStyleComputedProperty(element);\n horizScrollbar -= getBordersSize(styles, 'x');\n vertScrollbar -= getBordersSize(styles, 'y');\n\n result.width -= horizScrollbar;\n result.height -= vertScrollbar;\n }\n\n return getClientRect(result);\n}\n\nfunction getOffsetRectRelativeToArbitraryNode(children, parent) {\n var fixedPosition = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n\n var isIE10 = isIE(10);\n var isHTML = parent.nodeName === 'HTML';\n var childrenRect = getBoundingClientRect(children);\n var parentRect = getBoundingClientRect(parent);\n var scrollParent = getScrollParent(children);\n\n var styles = getStyleComputedProperty(parent);\n var borderTopWidth = parseFloat(styles.borderTopWidth);\n var borderLeftWidth = parseFloat(styles.borderLeftWidth);\n\n // In cases where the parent is fixed, we must ignore negative scroll in offset calc\n if (fixedPosition && isHTML) {\n parentRect.top = Math.max(parentRect.top, 0);\n parentRect.left = Math.max(parentRect.left, 0);\n }\n var offsets = getClientRect({\n top: childrenRect.top - parentRect.top - borderTopWidth,\n left: childrenRect.left - parentRect.left - borderLeftWidth,\n width: childrenRect.width,\n height: childrenRect.height\n });\n offsets.marginTop = 0;\n offsets.marginLeft = 0;\n\n // Subtract margins of documentElement in case it's being used as parent\n // we do this only on HTML because it's the only element that behaves\n // differently when margins are applied to it. The margins are included in\n // the box of the documentElement, in the other cases not.\n if (!isIE10 && isHTML) {\n var marginTop = parseFloat(styles.marginTop);\n var marginLeft = parseFloat(styles.marginLeft);\n\n offsets.top -= borderTopWidth - marginTop;\n offsets.bottom -= borderTopWidth - marginTop;\n offsets.left -= borderLeftWidth - marginLeft;\n offsets.right -= borderLeftWidth - marginLeft;\n\n // Attach marginTop and marginLeft because in some circumstances we may need them\n offsets.marginTop = marginTop;\n offsets.marginLeft = marginLeft;\n }\n\n if (isIE10 && !fixedPosition ? parent.contains(scrollParent) : parent === scrollParent && scrollParent.nodeName !== 'BODY') {\n offsets = includeScroll(offsets, parent);\n }\n\n return offsets;\n}\n\nfunction getViewportOffsetRectRelativeToArtbitraryNode(element) {\n var excludeScroll = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n var html = element.ownerDocument.documentElement;\n var relativeOffset = getOffsetRectRelativeToArbitraryNode(element, html);\n var width = Math.max(html.clientWidth, window.innerWidth || 0);\n var height = Math.max(html.clientHeight, window.innerHeight || 0);\n\n var scrollTop = !excludeScroll ? getScroll(html) : 0;\n var scrollLeft = !excludeScroll ? getScroll(html, 'left') : 0;\n\n var offset = {\n top: scrollTop - relativeOffset.top + relativeOffset.marginTop,\n left: scrollLeft - relativeOffset.left + relativeOffset.marginLeft,\n width: width,\n height: height\n };\n\n return getClientRect(offset);\n}\n\n/**\n * Check if the given element is fixed or is inside a fixed parent\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @argument {Element} customContainer\n * @returns {Boolean} answer to \"isFixed?\"\n */\nfunction isFixed(element) {\n var nodeName = element.nodeName;\n if (nodeName === 'BODY' || nodeName === 'HTML') {\n return false;\n }\n if (getStyleComputedProperty(element, 'position') === 'fixed') {\n return true;\n }\n var parentNode = getParentNode(element);\n if (!parentNode) {\n return false;\n }\n return isFixed(parentNode);\n}\n\n/**\n * Finds the first parent of an element that has a transformed property defined\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} first transformed parent or documentElement\n */\n\nfunction getFixedPositionOffsetParent(element) {\n // This check is needed to avoid errors in case one of the elements isn't defined for any reason\n if (!element || !element.parentElement || isIE()) {\n return document.documentElement;\n }\n var el = element.parentElement;\n while (el && getStyleComputedProperty(el, 'transform') === 'none') {\n el = el.parentElement;\n }\n return el || document.documentElement;\n}\n\n/**\n * Computed the boundaries limits and return them\n * @method\n * @memberof Popper.Utils\n * @param {HTMLElement} popper\n * @param {HTMLElement} reference\n * @param {number} padding\n * @param {HTMLElement} boundariesElement - Element used to define the boundaries\n * @param {Boolean} fixedPosition - Is in fixed position mode\n * @returns {Object} Coordinates of the boundaries\n */\nfunction getBoundaries(popper, reference, padding, boundariesElement) {\n var fixedPosition = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;\n\n // NOTE: 1 DOM access here\n\n var boundaries = { top: 0, left: 0 };\n var offsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, getReferenceNode(reference));\n\n // Handle viewport case\n if (boundariesElement === 'viewport') {\n boundaries = getViewportOffsetRectRelativeToArtbitraryNode(offsetParent, fixedPosition);\n } else {\n // Handle other cases based on DOM element used as boundaries\n var boundariesNode = void 0;\n if (boundariesElement === 'scrollParent') {\n boundariesNode = getScrollParent(getParentNode(reference));\n if (boundariesNode.nodeName === 'BODY') {\n boundariesNode = popper.ownerDocument.documentElement;\n }\n } else if (boundariesElement === 'window') {\n boundariesNode = popper.ownerDocument.documentElement;\n } else {\n boundariesNode = boundariesElement;\n }\n\n var offsets = getOffsetRectRelativeToArbitraryNode(boundariesNode, offsetParent, fixedPosition);\n\n // In case of HTML, we need a different computation\n if (boundariesNode.nodeName === 'HTML' && !isFixed(offsetParent)) {\n var _getWindowSizes = getWindowSizes(popper.ownerDocument),\n height = _getWindowSizes.height,\n width = _getWindowSizes.width;\n\n boundaries.top += offsets.top - offsets.marginTop;\n boundaries.bottom = height + offsets.top;\n boundaries.left += offsets.left - offsets.marginLeft;\n boundaries.right = width + offsets.left;\n } else {\n // for all the other DOM elements, this one is good\n boundaries = offsets;\n }\n }\n\n // Add paddings\n padding = padding || 0;\n var isPaddingNumber = typeof padding === 'number';\n boundaries.left += isPaddingNumber ? padding : padding.left || 0;\n boundaries.top += isPaddingNumber ? padding : padding.top || 0;\n boundaries.right -= isPaddingNumber ? padding : padding.right || 0;\n boundaries.bottom -= isPaddingNumber ? padding : padding.bottom || 0;\n\n return boundaries;\n}\n\nfunction getArea(_ref) {\n var width = _ref.width,\n height = _ref.height;\n\n return width * height;\n}\n\n/**\n * Utility used to transform the `auto` placement to the placement with more\n * available space.\n * @method\n * @memberof Popper.Utils\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction computeAutoPlacement(placement, refRect, popper, reference, boundariesElement) {\n var padding = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 0;\n\n if (placement.indexOf('auto') === -1) {\n return placement;\n }\n\n var boundaries = getBoundaries(popper, reference, padding, boundariesElement);\n\n var rects = {\n top: {\n width: boundaries.width,\n height: refRect.top - boundaries.top\n },\n right: {\n width: boundaries.right - refRect.right,\n height: boundaries.height\n },\n bottom: {\n width: boundaries.width,\n height: boundaries.bottom - refRect.bottom\n },\n left: {\n width: refRect.left - boundaries.left,\n height: boundaries.height\n }\n };\n\n var sortedAreas = Object.keys(rects).map(function (key) {\n return _extends({\n key: key\n }, rects[key], {\n area: getArea(rects[key])\n });\n }).sort(function (a, b) {\n return b.area - a.area;\n });\n\n var filteredAreas = sortedAreas.filter(function (_ref2) {\n var width = _ref2.width,\n height = _ref2.height;\n return width >= popper.clientWidth && height >= popper.clientHeight;\n });\n\n var computedPlacement = filteredAreas.length > 0 ? filteredAreas[0].key : sortedAreas[0].key;\n\n var variation = placement.split('-')[1];\n\n return computedPlacement + (variation ? '-' + variation : '');\n}\n\n/**\n * Get offsets to the reference element\n * @method\n * @memberof Popper.Utils\n * @param {Object} state\n * @param {Element} popper - the popper element\n * @param {Element} reference - the reference element (the popper will be relative to this)\n * @param {Element} fixedPosition - is in fixed position mode\n * @returns {Object} An object containing the offsets which will be applied to the popper\n */\nfunction getReferenceOffsets(state, popper, reference) {\n var fixedPosition = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;\n\n var commonOffsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, getReferenceNode(reference));\n return getOffsetRectRelativeToArbitraryNode(reference, commonOffsetParent, fixedPosition);\n}\n\n/**\n * Get the outer sizes of the given element (offset size + margins)\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Object} object containing width and height properties\n */\nfunction getOuterSizes(element) {\n var window = element.ownerDocument.defaultView;\n var styles = window.getComputedStyle(element);\n var x = parseFloat(styles.marginTop || 0) + parseFloat(styles.marginBottom || 0);\n var y = parseFloat(styles.marginLeft || 0) + parseFloat(styles.marginRight || 0);\n var result = {\n width: element.offsetWidth + y,\n height: element.offsetHeight + x\n };\n return result;\n}\n\n/**\n * Get the opposite placement of the given one\n * @method\n * @memberof Popper.Utils\n * @argument {String} placement\n * @returns {String} flipped placement\n */\nfunction getOppositePlacement(placement) {\n var hash = { left: 'right', right: 'left', bottom: 'top', top: 'bottom' };\n return placement.replace(/left|right|bottom|top/g, function (matched) {\n return hash[matched];\n });\n}\n\n/**\n * Get offsets to the popper\n * @method\n * @memberof Popper.Utils\n * @param {Object} position - CSS position the Popper will get applied\n * @param {HTMLElement} popper - the popper element\n * @param {Object} referenceOffsets - the reference offsets (the popper will be relative to this)\n * @param {String} placement - one of the valid placement options\n * @returns {Object} popperOffsets - An object containing the offsets which will be applied to the popper\n */\nfunction getPopperOffsets(popper, referenceOffsets, placement) {\n placement = placement.split('-')[0];\n\n // Get popper node sizes\n var popperRect = getOuterSizes(popper);\n\n // Add position, width and height to our offsets object\n var popperOffsets = {\n width: popperRect.width,\n height: popperRect.height\n };\n\n // depending by the popper placement we have to compute its offsets slightly differently\n var isHoriz = ['right', 'left'].indexOf(placement) !== -1;\n var mainSide = isHoriz ? 'top' : 'left';\n var secondarySide = isHoriz ? 'left' : 'top';\n var measurement = isHoriz ? 'height' : 'width';\n var secondaryMeasurement = !isHoriz ? 'height' : 'width';\n\n popperOffsets[mainSide] = referenceOffsets[mainSide] + referenceOffsets[measurement] / 2 - popperRect[measurement] / 2;\n if (placement === secondarySide) {\n popperOffsets[secondarySide] = referenceOffsets[secondarySide] - popperRect[secondaryMeasurement];\n } else {\n popperOffsets[secondarySide] = referenceOffsets[getOppositePlacement(secondarySide)];\n }\n\n return popperOffsets;\n}\n\n/**\n * Mimics the `find` method of Array\n * @method\n * @memberof Popper.Utils\n * @argument {Array} arr\n * @argument prop\n * @argument value\n * @returns index or -1\n */\nfunction find(arr, check) {\n // use native find if supported\n if (Array.prototype.find) {\n return arr.find(check);\n }\n\n // use `filter` to obtain the same behavior of `find`\n return arr.filter(check)[0];\n}\n\n/**\n * Return the index of the matching object\n * @method\n * @memberof Popper.Utils\n * @argument {Array} arr\n * @argument prop\n * @argument value\n * @returns index or -1\n */\nfunction findIndex(arr, prop, value) {\n // use native findIndex if supported\n if (Array.prototype.findIndex) {\n return arr.findIndex(function (cur) {\n return cur[prop] === value;\n });\n }\n\n // use `find` + `indexOf` if `findIndex` isn't supported\n var match = find(arr, function (obj) {\n return obj[prop] === value;\n });\n return arr.indexOf(match);\n}\n\n/**\n * Loop trough the list of modifiers and run them in order,\n * each of them will then edit the data object.\n * @method\n * @memberof Popper.Utils\n * @param {dataObject} data\n * @param {Array} modifiers\n * @param {String} ends - Optional modifier name used as stopper\n * @returns {dataObject}\n */\nfunction runModifiers(modifiers, data, ends) {\n var modifiersToRun = ends === undefined ? modifiers : modifiers.slice(0, findIndex(modifiers, 'name', ends));\n\n modifiersToRun.forEach(function (modifier) {\n if (modifier['function']) {\n // eslint-disable-line dot-notation\n console.warn('`modifier.function` is deprecated, use `modifier.fn`!');\n }\n var fn = modifier['function'] || modifier.fn; // eslint-disable-line dot-notation\n if (modifier.enabled && isFunction(fn)) {\n // Add properties to offsets to make them a complete clientRect object\n // we do this before each modifier to make sure the previous one doesn't\n // mess with these values\n data.offsets.popper = getClientRect(data.offsets.popper);\n data.offsets.reference = getClientRect(data.offsets.reference);\n\n data = fn(data, modifier);\n }\n });\n\n return data;\n}\n\n/**\n * Updates the position of the popper, computing the new offsets and applying\n * the new style.
\n * Prefer `scheduleUpdate` over `update` because of performance reasons.\n * @method\n * @memberof Popper\n */\nfunction update() {\n // if popper is destroyed, don't perform any further update\n if (this.state.isDestroyed) {\n return;\n }\n\n var data = {\n instance: this,\n styles: {},\n arrowStyles: {},\n attributes: {},\n flipped: false,\n offsets: {}\n };\n\n // compute reference element offsets\n data.offsets.reference = getReferenceOffsets(this.state, this.popper, this.reference, this.options.positionFixed);\n\n // compute auto placement, store placement inside the data object,\n // modifiers will be able to edit `placement` if needed\n // and refer to originalPlacement to know the original value\n data.placement = computeAutoPlacement(this.options.placement, data.offsets.reference, this.popper, this.reference, this.options.modifiers.flip.boundariesElement, this.options.modifiers.flip.padding);\n\n // store the computed placement inside `originalPlacement`\n data.originalPlacement = data.placement;\n\n data.positionFixed = this.options.positionFixed;\n\n // compute the popper offsets\n data.offsets.popper = getPopperOffsets(this.popper, data.offsets.reference, data.placement);\n\n data.offsets.popper.position = this.options.positionFixed ? 'fixed' : 'absolute';\n\n // run the modifiers\n data = runModifiers(this.modifiers, data);\n\n // the first `update` will call `onCreate` callback\n // the other ones will call `onUpdate` callback\n if (!this.state.isCreated) {\n this.state.isCreated = true;\n this.options.onCreate(data);\n } else {\n this.options.onUpdate(data);\n }\n}\n\n/**\n * Helper used to know if the given modifier is enabled.\n * @method\n * @memberof Popper.Utils\n * @returns {Boolean}\n */\nfunction isModifierEnabled(modifiers, modifierName) {\n return modifiers.some(function (_ref) {\n var name = _ref.name,\n enabled = _ref.enabled;\n return enabled && name === modifierName;\n });\n}\n\n/**\n * Get the prefixed supported property name\n * @method\n * @memberof Popper.Utils\n * @argument {String} property (camelCase)\n * @returns {String} prefixed property (camelCase or PascalCase, depending on the vendor prefix)\n */\nfunction getSupportedPropertyName(property) {\n var prefixes = [false, 'ms', 'Webkit', 'Moz', 'O'];\n var upperProp = property.charAt(0).toUpperCase() + property.slice(1);\n\n for (var i = 0; i < prefixes.length; i++) {\n var prefix = prefixes[i];\n var toCheck = prefix ? '' + prefix + upperProp : property;\n if (typeof document.body.style[toCheck] !== 'undefined') {\n return toCheck;\n }\n }\n return null;\n}\n\n/**\n * Destroys the popper.\n * @method\n * @memberof Popper\n */\nfunction destroy() {\n this.state.isDestroyed = true;\n\n // touch DOM only if `applyStyle` modifier is enabled\n if (isModifierEnabled(this.modifiers, 'applyStyle')) {\n this.popper.removeAttribute('x-placement');\n this.popper.style.position = '';\n this.popper.style.top = '';\n this.popper.style.left = '';\n this.popper.style.right = '';\n this.popper.style.bottom = '';\n this.popper.style.willChange = '';\n this.popper.style[getSupportedPropertyName('transform')] = '';\n }\n\n this.disableEventListeners();\n\n // remove the popper if user explicitly asked for the deletion on destroy\n // do not use `remove` because IE11 doesn't support it\n if (this.options.removeOnDestroy) {\n this.popper.parentNode.removeChild(this.popper);\n }\n return this;\n}\n\n/**\n * Get the window associated with the element\n * @argument {Element} element\n * @returns {Window}\n */\nfunction getWindow(element) {\n var ownerDocument = element.ownerDocument;\n return ownerDocument ? ownerDocument.defaultView : window;\n}\n\nfunction attachToScrollParents(scrollParent, event, callback, scrollParents) {\n var isBody = scrollParent.nodeName === 'BODY';\n var target = isBody ? scrollParent.ownerDocument.defaultView : scrollParent;\n target.addEventListener(event, callback, { passive: true });\n\n if (!isBody) {\n attachToScrollParents(getScrollParent(target.parentNode), event, callback, scrollParents);\n }\n scrollParents.push(target);\n}\n\n/**\n * Setup needed event listeners used to update the popper position\n * @method\n * @memberof Popper.Utils\n * @private\n */\nfunction setupEventListeners(reference, options, state, updateBound) {\n // Resize event listener on window\n state.updateBound = updateBound;\n getWindow(reference).addEventListener('resize', state.updateBound, { passive: true });\n\n // Scroll event listener on scroll parents\n var scrollElement = getScrollParent(reference);\n attachToScrollParents(scrollElement, 'scroll', state.updateBound, state.scrollParents);\n state.scrollElement = scrollElement;\n state.eventsEnabled = true;\n\n return state;\n}\n\n/**\n * It will add resize/scroll events and start recalculating\n * position of the popper element when they are triggered.\n * @method\n * @memberof Popper\n */\nfunction enableEventListeners() {\n if (!this.state.eventsEnabled) {\n this.state = setupEventListeners(this.reference, this.options, this.state, this.scheduleUpdate);\n }\n}\n\n/**\n * Remove event listeners used to update the popper position\n * @method\n * @memberof Popper.Utils\n * @private\n */\nfunction removeEventListeners(reference, state) {\n // Remove resize event listener on window\n getWindow(reference).removeEventListener('resize', state.updateBound);\n\n // Remove scroll event listener on scroll parents\n state.scrollParents.forEach(function (target) {\n target.removeEventListener('scroll', state.updateBound);\n });\n\n // Reset state\n state.updateBound = null;\n state.scrollParents = [];\n state.scrollElement = null;\n state.eventsEnabled = false;\n return state;\n}\n\n/**\n * It will remove resize/scroll events and won't recalculate popper position\n * when they are triggered. It also won't trigger `onUpdate` callback anymore,\n * unless you call `update` method manually.\n * @method\n * @memberof Popper\n */\nfunction disableEventListeners() {\n if (this.state.eventsEnabled) {\n cancelAnimationFrame(this.scheduleUpdate);\n this.state = removeEventListeners(this.reference, this.state);\n }\n}\n\n/**\n * Tells if a given input is a number\n * @method\n * @memberof Popper.Utils\n * @param {*} input to check\n * @return {Boolean}\n */\nfunction isNumeric(n) {\n return n !== '' && !isNaN(parseFloat(n)) && isFinite(n);\n}\n\n/**\n * Set the style to the given popper\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element - Element to apply the style to\n * @argument {Object} styles\n * Object with a list of properties and values which will be applied to the element\n */\nfunction setStyles(element, styles) {\n Object.keys(styles).forEach(function (prop) {\n var unit = '';\n // add unit if the value is numeric and is one of the following\n if (['width', 'height', 'top', 'right', 'bottom', 'left'].indexOf(prop) !== -1 && isNumeric(styles[prop])) {\n unit = 'px';\n }\n element.style[prop] = styles[prop] + unit;\n });\n}\n\n/**\n * Set the attributes to the given popper\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element - Element to apply the attributes to\n * @argument {Object} styles\n * Object with a list of properties and values which will be applied to the element\n */\nfunction setAttributes(element, attributes) {\n Object.keys(attributes).forEach(function (prop) {\n var value = attributes[prop];\n if (value !== false) {\n element.setAttribute(prop, attributes[prop]);\n } else {\n element.removeAttribute(prop);\n }\n });\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} data.styles - List of style properties - values to apply to popper element\n * @argument {Object} data.attributes - List of attribute properties - values to apply to popper element\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The same data object\n */\nfunction applyStyle(data) {\n // any property present in `data.styles` will be applied to the popper,\n // in this way we can make the 3rd party modifiers add custom styles to it\n // Be aware, modifiers could override the properties defined in the previous\n // lines of this modifier!\n setStyles(data.instance.popper, data.styles);\n\n // any property present in `data.attributes` will be applied to the popper,\n // they will be set as HTML attributes of the element\n setAttributes(data.instance.popper, data.attributes);\n\n // if arrowElement is defined and arrowStyles has some properties\n if (data.arrowElement && Object.keys(data.arrowStyles).length) {\n setStyles(data.arrowElement, data.arrowStyles);\n }\n\n return data;\n}\n\n/**\n * Set the x-placement attribute before everything else because it could be used\n * to add margins to the popper margins needs to be calculated to get the\n * correct popper offsets.\n * @method\n * @memberof Popper.modifiers\n * @param {HTMLElement} reference - The reference element used to position the popper\n * @param {HTMLElement} popper - The HTML element used as popper\n * @param {Object} options - Popper.js options\n */\nfunction applyStyleOnLoad(reference, popper, options, modifierOptions, state) {\n // compute reference element offsets\n var referenceOffsets = getReferenceOffsets(state, popper, reference, options.positionFixed);\n\n // compute auto placement, store placement inside the data object,\n // modifiers will be able to edit `placement` if needed\n // and refer to originalPlacement to know the original value\n var placement = computeAutoPlacement(options.placement, referenceOffsets, popper, reference, options.modifiers.flip.boundariesElement, options.modifiers.flip.padding);\n\n popper.setAttribute('x-placement', placement);\n\n // Apply `position` to popper before anything else because\n // without the position applied we can't guarantee correct computations\n setStyles(popper, { position: options.positionFixed ? 'fixed' : 'absolute' });\n\n return options;\n}\n\n/**\n * @function\n * @memberof Popper.Utils\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Boolean} shouldRound - If the offsets should be rounded at all\n * @returns {Object} The popper's position offsets rounded\n *\n * The tale of pixel-perfect positioning. It's still not 100% perfect, but as\n * good as it can be within reason.\n * Discussion here: https://github.com/FezVrasta/popper.js/pull/715\n *\n * Low DPI screens cause a popper to be blurry if not using full pixels (Safari\n * as well on High DPI screens).\n *\n * Firefox prefers no rounding for positioning and does not have blurriness on\n * high DPI screens.\n *\n * Only horizontal placement and left/right values need to be considered.\n */\nfunction getRoundedOffsets(data, shouldRound) {\n var _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n var round = Math.round,\n floor = Math.floor;\n\n var noRound = function noRound(v) {\n return v;\n };\n\n var referenceWidth = round(reference.width);\n var popperWidth = round(popper.width);\n\n var isVertical = ['left', 'right'].indexOf(data.placement) !== -1;\n var isVariation = data.placement.indexOf('-') !== -1;\n var sameWidthParity = referenceWidth % 2 === popperWidth % 2;\n var bothOddWidth = referenceWidth % 2 === 1 && popperWidth % 2 === 1;\n\n var horizontalToInteger = !shouldRound ? noRound : isVertical || isVariation || sameWidthParity ? round : floor;\n var verticalToInteger = !shouldRound ? noRound : round;\n\n return {\n left: horizontalToInteger(bothOddWidth && !isVariation && shouldRound ? popper.left - 1 : popper.left),\n top: verticalToInteger(popper.top),\n bottom: verticalToInteger(popper.bottom),\n right: horizontalToInteger(popper.right)\n };\n}\n\nvar isFirefox = isBrowser && /Firefox/i.test(navigator.userAgent);\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction computeStyle(data, options) {\n var x = options.x,\n y = options.y;\n var popper = data.offsets.popper;\n\n // Remove this legacy support in Popper.js v2\n\n var legacyGpuAccelerationOption = find(data.instance.modifiers, function (modifier) {\n return modifier.name === 'applyStyle';\n }).gpuAcceleration;\n if (legacyGpuAccelerationOption !== undefined) {\n console.warn('WARNING: `gpuAcceleration` option moved to `computeStyle` modifier and will not be supported in future versions of Popper.js!');\n }\n var gpuAcceleration = legacyGpuAccelerationOption !== undefined ? legacyGpuAccelerationOption : options.gpuAcceleration;\n\n var offsetParent = getOffsetParent(data.instance.popper);\n var offsetParentRect = getBoundingClientRect(offsetParent);\n\n // Styles\n var styles = {\n position: popper.position\n };\n\n var offsets = getRoundedOffsets(data, window.devicePixelRatio < 2 || !isFirefox);\n\n var sideA = x === 'bottom' ? 'top' : 'bottom';\n var sideB = y === 'right' ? 'left' : 'right';\n\n // if gpuAcceleration is set to `true` and transform is supported,\n // we use `translate3d` to apply the position to the popper we\n // automatically use the supported prefixed version if needed\n var prefixedProperty = getSupportedPropertyName('transform');\n\n // now, let's make a step back and look at this code closely (wtf?)\n // If the content of the popper grows once it's been positioned, it\n // may happen that the popper gets misplaced because of the new content\n // overflowing its reference element\n // To avoid this problem, we provide two options (x and y), which allow\n // the consumer to define the offset origin.\n // If we position a popper on top of a reference element, we can set\n // `x` to `top` to make the popper grow towards its top instead of\n // its bottom.\n var left = void 0,\n top = void 0;\n if (sideA === 'bottom') {\n // when offsetParent is the positioning is relative to the bottom of the screen (excluding the scrollbar)\n // and not the bottom of the html element\n if (offsetParent.nodeName === 'HTML') {\n top = -offsetParent.clientHeight + offsets.bottom;\n } else {\n top = -offsetParentRect.height + offsets.bottom;\n }\n } else {\n top = offsets.top;\n }\n if (sideB === 'right') {\n if (offsetParent.nodeName === 'HTML') {\n left = -offsetParent.clientWidth + offsets.right;\n } else {\n left = -offsetParentRect.width + offsets.right;\n }\n } else {\n left = offsets.left;\n }\n if (gpuAcceleration && prefixedProperty) {\n styles[prefixedProperty] = 'translate3d(' + left + 'px, ' + top + 'px, 0)';\n styles[sideA] = 0;\n styles[sideB] = 0;\n styles.willChange = 'transform';\n } else {\n // othwerise, we use the standard `top`, `left`, `bottom` and `right` properties\n var invertTop = sideA === 'bottom' ? -1 : 1;\n var invertLeft = sideB === 'right' ? -1 : 1;\n styles[sideA] = top * invertTop;\n styles[sideB] = left * invertLeft;\n styles.willChange = sideA + ', ' + sideB;\n }\n\n // Attributes\n var attributes = {\n 'x-placement': data.placement\n };\n\n // Update `data` attributes, styles and arrowStyles\n data.attributes = _extends({}, attributes, data.attributes);\n data.styles = _extends({}, styles, data.styles);\n data.arrowStyles = _extends({}, data.offsets.arrow, data.arrowStyles);\n\n return data;\n}\n\n/**\n * Helper used to know if the given modifier depends from another one.
\n * It checks if the needed modifier is listed and enabled.\n * @method\n * @memberof Popper.Utils\n * @param {Array} modifiers - list of modifiers\n * @param {String} requestingName - name of requesting modifier\n * @param {String} requestedName - name of requested modifier\n * @returns {Boolean}\n */\nfunction isModifierRequired(modifiers, requestingName, requestedName) {\n var requesting = find(modifiers, function (_ref) {\n var name = _ref.name;\n return name === requestingName;\n });\n\n var isRequired = !!requesting && modifiers.some(function (modifier) {\n return modifier.name === requestedName && modifier.enabled && modifier.order < requesting.order;\n });\n\n if (!isRequired) {\n var _requesting = '`' + requestingName + '`';\n var requested = '`' + requestedName + '`';\n console.warn(requested + ' modifier is required by ' + _requesting + ' modifier in order to work, be sure to include it before ' + _requesting + '!');\n }\n return isRequired;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction arrow(data, options) {\n var _data$offsets$arrow;\n\n // arrow depends on keepTogether in order to work\n if (!isModifierRequired(data.instance.modifiers, 'arrow', 'keepTogether')) {\n return data;\n }\n\n var arrowElement = options.element;\n\n // if arrowElement is a string, suppose it's a CSS selector\n if (typeof arrowElement === 'string') {\n arrowElement = data.instance.popper.querySelector(arrowElement);\n\n // if arrowElement is not found, don't run the modifier\n if (!arrowElement) {\n return data;\n }\n } else {\n // if the arrowElement isn't a query selector we must check that the\n // provided DOM node is child of its popper node\n if (!data.instance.popper.contains(arrowElement)) {\n console.warn('WARNING: `arrow.element` must be child of its popper element!');\n return data;\n }\n }\n\n var placement = data.placement.split('-')[0];\n var _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n\n var isVertical = ['left', 'right'].indexOf(placement) !== -1;\n\n var len = isVertical ? 'height' : 'width';\n var sideCapitalized = isVertical ? 'Top' : 'Left';\n var side = sideCapitalized.toLowerCase();\n var altSide = isVertical ? 'left' : 'top';\n var opSide = isVertical ? 'bottom' : 'right';\n var arrowElementSize = getOuterSizes(arrowElement)[len];\n\n //\n // extends keepTogether behavior making sure the popper and its\n // reference have enough pixels in conjunction\n //\n\n // top/left side\n if (reference[opSide] - arrowElementSize < popper[side]) {\n data.offsets.popper[side] -= popper[side] - (reference[opSide] - arrowElementSize);\n }\n // bottom/right side\n if (reference[side] + arrowElementSize > popper[opSide]) {\n data.offsets.popper[side] += reference[side] + arrowElementSize - popper[opSide];\n }\n data.offsets.popper = getClientRect(data.offsets.popper);\n\n // compute center of the popper\n var center = reference[side] + reference[len] / 2 - arrowElementSize / 2;\n\n // Compute the sideValue using the updated popper offsets\n // take popper margin in account because we don't have this info available\n var css = getStyleComputedProperty(data.instance.popper);\n var popperMarginSide = parseFloat(css['margin' + sideCapitalized]);\n var popperBorderSide = parseFloat(css['border' + sideCapitalized + 'Width']);\n var sideValue = center - data.offsets.popper[side] - popperMarginSide - popperBorderSide;\n\n // prevent arrowElement from being placed not contiguously to its popper\n sideValue = Math.max(Math.min(popper[len] - arrowElementSize, sideValue), 0);\n\n data.arrowElement = arrowElement;\n data.offsets.arrow = (_data$offsets$arrow = {}, defineProperty(_data$offsets$arrow, side, Math.round(sideValue)), defineProperty(_data$offsets$arrow, altSide, ''), _data$offsets$arrow);\n\n return data;\n}\n\n/**\n * Get the opposite placement variation of the given one\n * @method\n * @memberof Popper.Utils\n * @argument {String} placement variation\n * @returns {String} flipped placement variation\n */\nfunction getOppositeVariation(variation) {\n if (variation === 'end') {\n return 'start';\n } else if (variation === 'start') {\n return 'end';\n }\n return variation;\n}\n\n/**\n * List of accepted placements to use as values of the `placement` option.
\n * Valid placements are:\n * - `auto`\n * - `top`\n * - `right`\n * - `bottom`\n * - `left`\n *\n * Each placement can have a variation from this list:\n * - `-start`\n * - `-end`\n *\n * Variations are interpreted easily if you think of them as the left to right\n * written languages. Horizontally (`top` and `bottom`), `start` is left and `end`\n * is right.
\n * Vertically (`left` and `right`), `start` is top and `end` is bottom.\n *\n * Some valid examples are:\n * - `top-end` (on top of reference, right aligned)\n * - `right-start` (on right of reference, top aligned)\n * - `bottom` (on bottom, centered)\n * - `auto-end` (on the side with more space available, alignment depends by placement)\n *\n * @static\n * @type {Array}\n * @enum {String}\n * @readonly\n * @method placements\n * @memberof Popper\n */\nvar placements = ['auto-start', 'auto', 'auto-end', 'top-start', 'top', 'top-end', 'right-start', 'right', 'right-end', 'bottom-end', 'bottom', 'bottom-start', 'left-end', 'left', 'left-start'];\n\n// Get rid of `auto` `auto-start` and `auto-end`\nvar validPlacements = placements.slice(3);\n\n/**\n * Given an initial placement, returns all the subsequent placements\n * clockwise (or counter-clockwise).\n *\n * @method\n * @memberof Popper.Utils\n * @argument {String} placement - A valid placement (it accepts variations)\n * @argument {Boolean} counter - Set to true to walk the placements counterclockwise\n * @returns {Array} placements including their variations\n */\nfunction clockwise(placement) {\n var counter = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n var index = validPlacements.indexOf(placement);\n var arr = validPlacements.slice(index + 1).concat(validPlacements.slice(0, index));\n return counter ? arr.reverse() : arr;\n}\n\nvar BEHAVIORS = {\n FLIP: 'flip',\n CLOCKWISE: 'clockwise',\n COUNTERCLOCKWISE: 'counterclockwise'\n};\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction flip(data, options) {\n // if `inner` modifier is enabled, we can't use the `flip` modifier\n if (isModifierEnabled(data.instance.modifiers, 'inner')) {\n return data;\n }\n\n if (data.flipped && data.placement === data.originalPlacement) {\n // seems like flip is trying to loop, probably there's not enough space on any of the flippable sides\n return data;\n }\n\n var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, options.boundariesElement, data.positionFixed);\n\n var placement = data.placement.split('-')[0];\n var placementOpposite = getOppositePlacement(placement);\n var variation = data.placement.split('-')[1] || '';\n\n var flipOrder = [];\n\n switch (options.behavior) {\n case BEHAVIORS.FLIP:\n flipOrder = [placement, placementOpposite];\n break;\n case BEHAVIORS.CLOCKWISE:\n flipOrder = clockwise(placement);\n break;\n case BEHAVIORS.COUNTERCLOCKWISE:\n flipOrder = clockwise(placement, true);\n break;\n default:\n flipOrder = options.behavior;\n }\n\n flipOrder.forEach(function (step, index) {\n if (placement !== step || flipOrder.length === index + 1) {\n return data;\n }\n\n placement = data.placement.split('-')[0];\n placementOpposite = getOppositePlacement(placement);\n\n var popperOffsets = data.offsets.popper;\n var refOffsets = data.offsets.reference;\n\n // using floor because the reference offsets may contain decimals we are not going to consider here\n var floor = Math.floor;\n var overlapsRef = placement === 'left' && floor(popperOffsets.right) > floor(refOffsets.left) || placement === 'right' && floor(popperOffsets.left) < floor(refOffsets.right) || placement === 'top' && floor(popperOffsets.bottom) > floor(refOffsets.top) || placement === 'bottom' && floor(popperOffsets.top) < floor(refOffsets.bottom);\n\n var overflowsLeft = floor(popperOffsets.left) < floor(boundaries.left);\n var overflowsRight = floor(popperOffsets.right) > floor(boundaries.right);\n var overflowsTop = floor(popperOffsets.top) < floor(boundaries.top);\n var overflowsBottom = floor(popperOffsets.bottom) > floor(boundaries.bottom);\n\n var overflowsBoundaries = placement === 'left' && overflowsLeft || placement === 'right' && overflowsRight || placement === 'top' && overflowsTop || placement === 'bottom' && overflowsBottom;\n\n // flip the variation if required\n var isVertical = ['top', 'bottom'].indexOf(placement) !== -1;\n\n // flips variation if reference element overflows boundaries\n var flippedVariationByRef = !!options.flipVariations && (isVertical && variation === 'start' && overflowsLeft || isVertical && variation === 'end' && overflowsRight || !isVertical && variation === 'start' && overflowsTop || !isVertical && variation === 'end' && overflowsBottom);\n\n // flips variation if popper content overflows boundaries\n var flippedVariationByContent = !!options.flipVariationsByContent && (isVertical && variation === 'start' && overflowsRight || isVertical && variation === 'end' && overflowsLeft || !isVertical && variation === 'start' && overflowsBottom || !isVertical && variation === 'end' && overflowsTop);\n\n var flippedVariation = flippedVariationByRef || flippedVariationByContent;\n\n if (overlapsRef || overflowsBoundaries || flippedVariation) {\n // this boolean to detect any flip loop\n data.flipped = true;\n\n if (overlapsRef || overflowsBoundaries) {\n placement = flipOrder[index + 1];\n }\n\n if (flippedVariation) {\n variation = getOppositeVariation(variation);\n }\n\n data.placement = placement + (variation ? '-' + variation : '');\n\n // this object contains `position`, we want to preserve it along with\n // any additional property we may add in the future\n data.offsets.popper = _extends({}, data.offsets.popper, getPopperOffsets(data.instance.popper, data.offsets.reference, data.placement));\n\n data = runModifiers(data.instance.modifiers, data, 'flip');\n }\n });\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction keepTogether(data) {\n var _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n\n var placement = data.placement.split('-')[0];\n var floor = Math.floor;\n var isVertical = ['top', 'bottom'].indexOf(placement) !== -1;\n var side = isVertical ? 'right' : 'bottom';\n var opSide = isVertical ? 'left' : 'top';\n var measurement = isVertical ? 'width' : 'height';\n\n if (popper[side] < floor(reference[opSide])) {\n data.offsets.popper[opSide] = floor(reference[opSide]) - popper[measurement];\n }\n if (popper[opSide] > floor(reference[side])) {\n data.offsets.popper[opSide] = floor(reference[side]);\n }\n\n return data;\n}\n\n/**\n * Converts a string containing value + unit into a px value number\n * @function\n * @memberof {modifiers~offset}\n * @private\n * @argument {String} str - Value + unit string\n * @argument {String} measurement - `height` or `width`\n * @argument {Object} popperOffsets\n * @argument {Object} referenceOffsets\n * @returns {Number|String}\n * Value in pixels, or original string if no values were extracted\n */\nfunction toValue(str, measurement, popperOffsets, referenceOffsets) {\n // separate value from unit\n var split = str.match(/((?:\\-|\\+)?\\d*\\.?\\d*)(.*)/);\n var value = +split[1];\n var unit = split[2];\n\n // If it's not a number it's an operator, I guess\n if (!value) {\n return str;\n }\n\n if (unit.indexOf('%') === 0) {\n var element = void 0;\n switch (unit) {\n case '%p':\n element = popperOffsets;\n break;\n case '%':\n case '%r':\n default:\n element = referenceOffsets;\n }\n\n var rect = getClientRect(element);\n return rect[measurement] / 100 * value;\n } else if (unit === 'vh' || unit === 'vw') {\n // if is a vh or vw, we calculate the size based on the viewport\n var size = void 0;\n if (unit === 'vh') {\n size = Math.max(document.documentElement.clientHeight, window.innerHeight || 0);\n } else {\n size = Math.max(document.documentElement.clientWidth, window.innerWidth || 0);\n }\n return size / 100 * value;\n } else {\n // if is an explicit pixel unit, we get rid of the unit and keep the value\n // if is an implicit unit, it's px, and we return just the value\n return value;\n }\n}\n\n/**\n * Parse an `offset` string to extrapolate `x` and `y` numeric offsets.\n * @function\n * @memberof {modifiers~offset}\n * @private\n * @argument {String} offset\n * @argument {Object} popperOffsets\n * @argument {Object} referenceOffsets\n * @argument {String} basePlacement\n * @returns {Array} a two cells array with x and y offsets in numbers\n */\nfunction parseOffset(offset, popperOffsets, referenceOffsets, basePlacement) {\n var offsets = [0, 0];\n\n // Use height if placement is left or right and index is 0 otherwise use width\n // in this way the first offset will use an axis and the second one\n // will use the other one\n var useHeight = ['right', 'left'].indexOf(basePlacement) !== -1;\n\n // Split the offset string to obtain a list of values and operands\n // The regex addresses values with the plus or minus sign in front (+10, -20, etc)\n var fragments = offset.split(/(\\+|\\-)/).map(function (frag) {\n return frag.trim();\n });\n\n // Detect if the offset string contains a pair of values or a single one\n // they could be separated by comma or space\n var divider = fragments.indexOf(find(fragments, function (frag) {\n return frag.search(/,|\\s/) !== -1;\n }));\n\n if (fragments[divider] && fragments[divider].indexOf(',') === -1) {\n console.warn('Offsets separated by white space(s) are deprecated, use a comma (,) instead.');\n }\n\n // If divider is found, we divide the list of values and operands to divide\n // them by ofset X and Y.\n var splitRegex = /\\s*,\\s*|\\s+/;\n var ops = divider !== -1 ? [fragments.slice(0, divider).concat([fragments[divider].split(splitRegex)[0]]), [fragments[divider].split(splitRegex)[1]].concat(fragments.slice(divider + 1))] : [fragments];\n\n // Convert the values with units to absolute pixels to allow our computations\n ops = ops.map(function (op, index) {\n // Most of the units rely on the orientation of the popper\n var measurement = (index === 1 ? !useHeight : useHeight) ? 'height' : 'width';\n var mergeWithPrevious = false;\n return op\n // This aggregates any `+` or `-` sign that aren't considered operators\n // e.g.: 10 + +5 => [10, +, +5]\n .reduce(function (a, b) {\n if (a[a.length - 1] === '' && ['+', '-'].indexOf(b) !== -1) {\n a[a.length - 1] = b;\n mergeWithPrevious = true;\n return a;\n } else if (mergeWithPrevious) {\n a[a.length - 1] += b;\n mergeWithPrevious = false;\n return a;\n } else {\n return a.concat(b);\n }\n }, [])\n // Here we convert the string values into number values (in px)\n .map(function (str) {\n return toValue(str, measurement, popperOffsets, referenceOffsets);\n });\n });\n\n // Loop trough the offsets arrays and execute the operations\n ops.forEach(function (op, index) {\n op.forEach(function (frag, index2) {\n if (isNumeric(frag)) {\n offsets[index] += frag * (op[index2 - 1] === '-' ? -1 : 1);\n }\n });\n });\n return offsets;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @argument {Number|String} options.offset=0\n * The offset value as described in the modifier description\n * @returns {Object} The data object, properly modified\n */\nfunction offset(data, _ref) {\n var offset = _ref.offset;\n var placement = data.placement,\n _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n\n var basePlacement = placement.split('-')[0];\n\n var offsets = void 0;\n if (isNumeric(+offset)) {\n offsets = [+offset, 0];\n } else {\n offsets = parseOffset(offset, popper, reference, basePlacement);\n }\n\n if (basePlacement === 'left') {\n popper.top += offsets[0];\n popper.left -= offsets[1];\n } else if (basePlacement === 'right') {\n popper.top += offsets[0];\n popper.left += offsets[1];\n } else if (basePlacement === 'top') {\n popper.left += offsets[0];\n popper.top -= offsets[1];\n } else if (basePlacement === 'bottom') {\n popper.left += offsets[0];\n popper.top += offsets[1];\n }\n\n data.popper = popper;\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction preventOverflow(data, options) {\n var boundariesElement = options.boundariesElement || getOffsetParent(data.instance.popper);\n\n // If offsetParent is the reference element, we really want to\n // go one step up and use the next offsetParent as reference to\n // avoid to make this modifier completely useless and look like broken\n if (data.instance.reference === boundariesElement) {\n boundariesElement = getOffsetParent(boundariesElement);\n }\n\n // NOTE: DOM access here\n // resets the popper's position so that the document size can be calculated excluding\n // the size of the popper element itself\n var transformProp = getSupportedPropertyName('transform');\n var popperStyles = data.instance.popper.style; // assignment to help minification\n var top = popperStyles.top,\n left = popperStyles.left,\n transform = popperStyles[transformProp];\n\n popperStyles.top = '';\n popperStyles.left = '';\n popperStyles[transformProp] = '';\n\n var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, boundariesElement, data.positionFixed);\n\n // NOTE: DOM access here\n // restores the original style properties after the offsets have been computed\n popperStyles.top = top;\n popperStyles.left = left;\n popperStyles[transformProp] = transform;\n\n options.boundaries = boundaries;\n\n var order = options.priority;\n var popper = data.offsets.popper;\n\n var check = {\n primary: function primary(placement) {\n var value = popper[placement];\n if (popper[placement] < boundaries[placement] && !options.escapeWithReference) {\n value = Math.max(popper[placement], boundaries[placement]);\n }\n return defineProperty({}, placement, value);\n },\n secondary: function secondary(placement) {\n var mainSide = placement === 'right' ? 'left' : 'top';\n var value = popper[mainSide];\n if (popper[placement] > boundaries[placement] && !options.escapeWithReference) {\n value = Math.min(popper[mainSide], boundaries[placement] - (placement === 'right' ? popper.width : popper.height));\n }\n return defineProperty({}, mainSide, value);\n }\n };\n\n order.forEach(function (placement) {\n var side = ['left', 'top'].indexOf(placement) !== -1 ? 'primary' : 'secondary';\n popper = _extends({}, popper, check[side](placement));\n });\n\n data.offsets.popper = popper;\n\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction shift(data) {\n var placement = data.placement;\n var basePlacement = placement.split('-')[0];\n var shiftvariation = placement.split('-')[1];\n\n // if shift shiftvariation is specified, run the modifier\n if (shiftvariation) {\n var _data$offsets = data.offsets,\n reference = _data$offsets.reference,\n popper = _data$offsets.popper;\n\n var isVertical = ['bottom', 'top'].indexOf(basePlacement) !== -1;\n var side = isVertical ? 'left' : 'top';\n var measurement = isVertical ? 'width' : 'height';\n\n var shiftOffsets = {\n start: defineProperty({}, side, reference[side]),\n end: defineProperty({}, side, reference[side] + reference[measurement] - popper[measurement])\n };\n\n data.offsets.popper = _extends({}, popper, shiftOffsets[shiftvariation]);\n }\n\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction hide(data) {\n if (!isModifierRequired(data.instance.modifiers, 'hide', 'preventOverflow')) {\n return data;\n }\n\n var refRect = data.offsets.reference;\n var bound = find(data.instance.modifiers, function (modifier) {\n return modifier.name === 'preventOverflow';\n }).boundaries;\n\n if (refRect.bottom < bound.top || refRect.left > bound.right || refRect.top > bound.bottom || refRect.right < bound.left) {\n // Avoid unnecessary DOM access if visibility hasn't changed\n if (data.hide === true) {\n return data;\n }\n\n data.hide = true;\n data.attributes['x-out-of-boundaries'] = '';\n } else {\n // Avoid unnecessary DOM access if visibility hasn't changed\n if (data.hide === false) {\n return data;\n }\n\n data.hide = false;\n data.attributes['x-out-of-boundaries'] = false;\n }\n\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction inner(data) {\n var placement = data.placement;\n var basePlacement = placement.split('-')[0];\n var _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n\n var isHoriz = ['left', 'right'].indexOf(basePlacement) !== -1;\n\n var subtractLength = ['top', 'left'].indexOf(basePlacement) === -1;\n\n popper[isHoriz ? 'left' : 'top'] = reference[basePlacement] - (subtractLength ? popper[isHoriz ? 'width' : 'height'] : 0);\n\n data.placement = getOppositePlacement(placement);\n data.offsets.popper = getClientRect(popper);\n\n return data;\n}\n\n/**\n * Modifier function, each modifier can have a function of this type assigned\n * to its `fn` property.
\n * These functions will be called on each update, this means that you must\n * make sure they are performant enough to avoid performance bottlenecks.\n *\n * @function ModifierFn\n * @argument {dataObject} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {dataObject} The data object, properly modified\n */\n\n/**\n * Modifiers are plugins used to alter the behavior of your poppers.
\n * Popper.js uses a set of 9 modifiers to provide all the basic functionalities\n * needed by the library.\n *\n * Usually you don't want to override the `order`, `fn` and `onLoad` props.\n * All the other properties are configurations that could be tweaked.\n * @namespace modifiers\n */\nvar modifiers = {\n /**\n * Modifier used to shift the popper on the start or end of its reference\n * element.
\n * It will read the variation of the `placement` property.
\n * It can be one either `-end` or `-start`.\n * @memberof modifiers\n * @inner\n */\n shift: {\n /** @prop {number} order=100 - Index used to define the order of execution */\n order: 100,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: shift\n },\n\n /**\n * The `offset` modifier can shift your popper on both its axis.\n *\n * It accepts the following units:\n * - `px` or unit-less, interpreted as pixels\n * - `%` or `%r`, percentage relative to the length of the reference element\n * - `%p`, percentage relative to the length of the popper element\n * - `vw`, CSS viewport width unit\n * - `vh`, CSS viewport height unit\n *\n * For length is intended the main axis relative to the placement of the popper.
\n * This means that if the placement is `top` or `bottom`, the length will be the\n * `width`. In case of `left` or `right`, it will be the `height`.\n *\n * You can provide a single value (as `Number` or `String`), or a pair of values\n * as `String` divided by a comma or one (or more) white spaces.
\n * The latter is a deprecated method because it leads to confusion and will be\n * removed in v2.
\n * Additionally, it accepts additions and subtractions between different units.\n * Note that multiplications and divisions aren't supported.\n *\n * Valid examples are:\n * ```\n * 10\n * '10%'\n * '10, 10'\n * '10%, 10'\n * '10 + 10%'\n * '10 - 5vh + 3%'\n * '-10px + 5vh, 5px - 6%'\n * ```\n * > **NB**: If you desire to apply offsets to your poppers in a way that may make them overlap\n * > with their reference element, unfortunately, you will have to disable the `flip` modifier.\n * > You can read more on this at this [issue](https://github.com/FezVrasta/popper.js/issues/373).\n *\n * @memberof modifiers\n * @inner\n */\n offset: {\n /** @prop {number} order=200 - Index used to define the order of execution */\n order: 200,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: offset,\n /** @prop {Number|String} offset=0\n * The offset value as described in the modifier description\n */\n offset: 0\n },\n\n /**\n * Modifier used to prevent the popper from being positioned outside the boundary.\n *\n * A scenario exists where the reference itself is not within the boundaries.
\n * We can say it has \"escaped the boundaries\" — or just \"escaped\".
\n * In this case we need to decide whether the popper should either:\n *\n * - detach from the reference and remain \"trapped\" in the boundaries, or\n * - if it should ignore the boundary and \"escape with its reference\"\n *\n * When `escapeWithReference` is set to`true` and reference is completely\n * outside its boundaries, the popper will overflow (or completely leave)\n * the boundaries in order to remain attached to the edge of the reference.\n *\n * @memberof modifiers\n * @inner\n */\n preventOverflow: {\n /** @prop {number} order=300 - Index used to define the order of execution */\n order: 300,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: preventOverflow,\n /**\n * @prop {Array} [priority=['left','right','top','bottom']]\n * Popper will try to prevent overflow following these priorities by default,\n * then, it could overflow on the left and on top of the `boundariesElement`\n */\n priority: ['left', 'right', 'top', 'bottom'],\n /**\n * @prop {number} padding=5\n * Amount of pixel used to define a minimum distance between the boundaries\n * and the popper. This makes sure the popper always has a little padding\n * between the edges of its container\n */\n padding: 5,\n /**\n * @prop {String|HTMLElement} boundariesElement='scrollParent'\n * Boundaries used by the modifier. Can be `scrollParent`, `window`,\n * `viewport` or any DOM element.\n */\n boundariesElement: 'scrollParent'\n },\n\n /**\n * Modifier used to make sure the reference and its popper stay near each other\n * without leaving any gap between the two. Especially useful when the arrow is\n * enabled and you want to ensure that it points to its reference element.\n * It cares only about the first axis. You can still have poppers with margin\n * between the popper and its reference element.\n * @memberof modifiers\n * @inner\n */\n keepTogether: {\n /** @prop {number} order=400 - Index used to define the order of execution */\n order: 400,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: keepTogether\n },\n\n /**\n * This modifier is used to move the `arrowElement` of the popper to make\n * sure it is positioned between the reference element and its popper element.\n * It will read the outer size of the `arrowElement` node to detect how many\n * pixels of conjunction are needed.\n *\n * It has no effect if no `arrowElement` is provided.\n * @memberof modifiers\n * @inner\n */\n arrow: {\n /** @prop {number} order=500 - Index used to define the order of execution */\n order: 500,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: arrow,\n /** @prop {String|HTMLElement} element='[x-arrow]' - Selector or node used as arrow */\n element: '[x-arrow]'\n },\n\n /**\n * Modifier used to flip the popper's placement when it starts to overlap its\n * reference element.\n *\n * Requires the `preventOverflow` modifier before it in order to work.\n *\n * **NOTE:** this modifier will interrupt the current update cycle and will\n * restart it if it detects the need to flip the placement.\n * @memberof modifiers\n * @inner\n */\n flip: {\n /** @prop {number} order=600 - Index used to define the order of execution */\n order: 600,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: flip,\n /**\n * @prop {String|Array} behavior='flip'\n * The behavior used to change the popper's placement. It can be one of\n * `flip`, `clockwise`, `counterclockwise` or an array with a list of valid\n * placements (with optional variations)\n */\n behavior: 'flip',\n /**\n * @prop {number} padding=5\n * The popper will flip if it hits the edges of the `boundariesElement`\n */\n padding: 5,\n /**\n * @prop {String|HTMLElement} boundariesElement='viewport'\n * The element which will define the boundaries of the popper position.\n * The popper will never be placed outside of the defined boundaries\n * (except if `keepTogether` is enabled)\n */\n boundariesElement: 'viewport',\n /**\n * @prop {Boolean} flipVariations=false\n * The popper will switch placement variation between `-start` and `-end` when\n * the reference element overlaps its boundaries.\n *\n * The original placement should have a set variation.\n */\n flipVariations: false,\n /**\n * @prop {Boolean} flipVariationsByContent=false\n * The popper will switch placement variation between `-start` and `-end` when\n * the popper element overlaps its reference boundaries.\n *\n * The original placement should have a set variation.\n */\n flipVariationsByContent: false\n },\n\n /**\n * Modifier used to make the popper flow toward the inner of the reference element.\n * By default, when this modifier is disabled, the popper will be placed outside\n * the reference element.\n * @memberof modifiers\n * @inner\n */\n inner: {\n /** @prop {number} order=700 - Index used to define the order of execution */\n order: 700,\n /** @prop {Boolean} enabled=false - Whether the modifier is enabled or not */\n enabled: false,\n /** @prop {ModifierFn} */\n fn: inner\n },\n\n /**\n * Modifier used to hide the popper when its reference element is outside of the\n * popper boundaries. It will set a `x-out-of-boundaries` attribute which can\n * be used to hide with a CSS selector the popper when its reference is\n * out of boundaries.\n *\n * Requires the `preventOverflow` modifier before it in order to work.\n * @memberof modifiers\n * @inner\n */\n hide: {\n /** @prop {number} order=800 - Index used to define the order of execution */\n order: 800,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: hide\n },\n\n /**\n * Computes the style that will be applied to the popper element to gets\n * properly positioned.\n *\n * Note that this modifier will not touch the DOM, it just prepares the styles\n * so that `applyStyle` modifier can apply it. This separation is useful\n * in case you need to replace `applyStyle` with a custom implementation.\n *\n * This modifier has `850` as `order` value to maintain backward compatibility\n * with previous versions of Popper.js. Expect the modifiers ordering method\n * to change in future major versions of the library.\n *\n * @memberof modifiers\n * @inner\n */\n computeStyle: {\n /** @prop {number} order=850 - Index used to define the order of execution */\n order: 850,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: computeStyle,\n /**\n * @prop {Boolean} gpuAcceleration=true\n * If true, it uses the CSS 3D transformation to position the popper.\n * Otherwise, it will use the `top` and `left` properties\n */\n gpuAcceleration: true,\n /**\n * @prop {string} [x='bottom']\n * Where to anchor the X axis (`bottom` or `top`). AKA X offset origin.\n * Change this if your popper should grow in a direction different from `bottom`\n */\n x: 'bottom',\n /**\n * @prop {string} [x='left']\n * Where to anchor the Y axis (`left` or `right`). AKA Y offset origin.\n * Change this if your popper should grow in a direction different from `right`\n */\n y: 'right'\n },\n\n /**\n * Applies the computed styles to the popper element.\n *\n * All the DOM manipulations are limited to this modifier. This is useful in case\n * you want to integrate Popper.js inside a framework or view library and you\n * want to delegate all the DOM manipulations to it.\n *\n * Note that if you disable this modifier, you must make sure the popper element\n * has its position set to `absolute` before Popper.js can do its work!\n *\n * Just disable this modifier and define your own to achieve the desired effect.\n *\n * @memberof modifiers\n * @inner\n */\n applyStyle: {\n /** @prop {number} order=900 - Index used to define the order of execution */\n order: 900,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: applyStyle,\n /** @prop {Function} */\n onLoad: applyStyleOnLoad,\n /**\n * @deprecated since version 1.10.0, the property moved to `computeStyle` modifier\n * @prop {Boolean} gpuAcceleration=true\n * If true, it uses the CSS 3D transformation to position the popper.\n * Otherwise, it will use the `top` and `left` properties\n */\n gpuAcceleration: undefined\n }\n};\n\n/**\n * The `dataObject` is an object containing all the information used by Popper.js.\n * This object is passed to modifiers and to the `onCreate` and `onUpdate` callbacks.\n * @name dataObject\n * @property {Object} data.instance The Popper.js instance\n * @property {String} data.placement Placement applied to popper\n * @property {String} data.originalPlacement Placement originally defined on init\n * @property {Boolean} data.flipped True if popper has been flipped by flip modifier\n * @property {Boolean} data.hide True if the reference element is out of boundaries, useful to know when to hide the popper\n * @property {HTMLElement} data.arrowElement Node used as arrow by arrow modifier\n * @property {Object} data.styles Any CSS property defined here will be applied to the popper. It expects the JavaScript nomenclature (eg. `marginBottom`)\n * @property {Object} data.arrowStyles Any CSS property defined here will be applied to the popper arrow. It expects the JavaScript nomenclature (eg. `marginBottom`)\n * @property {Object} data.boundaries Offsets of the popper boundaries\n * @property {Object} data.offsets The measurements of popper, reference and arrow elements\n * @property {Object} data.offsets.popper `top`, `left`, `width`, `height` values\n * @property {Object} data.offsets.reference `top`, `left`, `width`, `height` values\n * @property {Object} data.offsets.arrow] `top` and `left` offsets, only one of them will be different from 0\n */\n\n/**\n * Default options provided to Popper.js constructor.
\n * These can be overridden using the `options` argument of Popper.js.
\n * To override an option, simply pass an object with the same\n * structure of the `options` object, as the 3rd argument. For example:\n * ```\n * new Popper(ref, pop, {\n * modifiers: {\n * preventOverflow: { enabled: false }\n * }\n * })\n * ```\n * @type {Object}\n * @static\n * @memberof Popper\n */\nvar Defaults = {\n /**\n * Popper's placement.\n * @prop {Popper.placements} placement='bottom'\n */\n placement: 'bottom',\n\n /**\n * Set this to true if you want popper to position it self in 'fixed' mode\n * @prop {Boolean} positionFixed=false\n */\n positionFixed: false,\n\n /**\n * Whether events (resize, scroll) are initially enabled.\n * @prop {Boolean} eventsEnabled=true\n */\n eventsEnabled: true,\n\n /**\n * Set to true if you want to automatically remove the popper when\n * you call the `destroy` method.\n * @prop {Boolean} removeOnDestroy=false\n */\n removeOnDestroy: false,\n\n /**\n * Callback called when the popper is created.
\n * By default, it is set to no-op.
\n * Access Popper.js instance with `data.instance`.\n * @prop {onCreate}\n */\n onCreate: function onCreate() {},\n\n /**\n * Callback called when the popper is updated. This callback is not called\n * on the initialization/creation of the popper, but only on subsequent\n * updates.
\n * By default, it is set to no-op.
\n * Access Popper.js instance with `data.instance`.\n * @prop {onUpdate}\n */\n onUpdate: function onUpdate() {},\n\n /**\n * List of modifiers used to modify the offsets before they are applied to the popper.\n * They provide most of the functionalities of Popper.js.\n * @prop {modifiers}\n */\n modifiers: modifiers\n};\n\n/**\n * @callback onCreate\n * @param {dataObject} data\n */\n\n/**\n * @callback onUpdate\n * @param {dataObject} data\n */\n\n// Utils\n// Methods\nvar Popper = function () {\n /**\n * Creates a new Popper.js instance.\n * @class Popper\n * @param {Element|referenceObject} reference - The reference element used to position the popper\n * @param {Element} popper - The HTML / XML element used as the popper\n * @param {Object} options - Your custom options to override the ones defined in [Defaults](#defaults)\n * @return {Object} instance - The generated Popper.js instance\n */\n function Popper(reference, popper) {\n var _this = this;\n\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n classCallCheck(this, Popper);\n\n this.scheduleUpdate = function () {\n return requestAnimationFrame(_this.update);\n };\n\n // make update() debounced, so that it only runs at most once-per-tick\n this.update = debounce(this.update.bind(this));\n\n // with {} we create a new object with the options inside it\n this.options = _extends({}, Popper.Defaults, options);\n\n // init state\n this.state = {\n isDestroyed: false,\n isCreated: false,\n scrollParents: []\n };\n\n // get reference and popper elements (allow jQuery wrappers)\n this.reference = reference && reference.jquery ? reference[0] : reference;\n this.popper = popper && popper.jquery ? popper[0] : popper;\n\n // Deep merge modifiers options\n this.options.modifiers = {};\n Object.keys(_extends({}, Popper.Defaults.modifiers, options.modifiers)).forEach(function (name) {\n _this.options.modifiers[name] = _extends({}, Popper.Defaults.modifiers[name] || {}, options.modifiers ? options.modifiers[name] : {});\n });\n\n // Refactoring modifiers' list (Object => Array)\n this.modifiers = Object.keys(this.options.modifiers).map(function (name) {\n return _extends({\n name: name\n }, _this.options.modifiers[name]);\n })\n // sort the modifiers by order\n .sort(function (a, b) {\n return a.order - b.order;\n });\n\n // modifiers have the ability to execute arbitrary code when Popper.js get inited\n // such code is executed in the same order of its modifier\n // they could add new properties to their options configuration\n // BE AWARE: don't add options to `options.modifiers.name` but to `modifierOptions`!\n this.modifiers.forEach(function (modifierOptions) {\n if (modifierOptions.enabled && isFunction(modifierOptions.onLoad)) {\n modifierOptions.onLoad(_this.reference, _this.popper, _this.options, modifierOptions, _this.state);\n }\n });\n\n // fire the first update to position the popper in the right place\n this.update();\n\n var eventsEnabled = this.options.eventsEnabled;\n if (eventsEnabled) {\n // setup event listeners, they will take care of update the position in specific situations\n this.enableEventListeners();\n }\n\n this.state.eventsEnabled = eventsEnabled;\n }\n\n // We can't use class properties because they don't get listed in the\n // class prototype and break stuff like Sinon stubs\n\n\n createClass(Popper, [{\n key: 'update',\n value: function update$$1() {\n return update.call(this);\n }\n }, {\n key: 'destroy',\n value: function destroy$$1() {\n return destroy.call(this);\n }\n }, {\n key: 'enableEventListeners',\n value: function enableEventListeners$$1() {\n return enableEventListeners.call(this);\n }\n }, {\n key: 'disableEventListeners',\n value: function disableEventListeners$$1() {\n return disableEventListeners.call(this);\n }\n\n /**\n * Schedules an update. It will run on the next UI update available.\n * @method scheduleUpdate\n * @memberof Popper\n */\n\n\n /**\n * Collection of utilities useful when writing custom modifiers.\n * Starting from version 1.7, this method is available only if you\n * include `popper-utils.js` before `popper.js`.\n *\n * **DEPRECATION**: This way to access PopperUtils is deprecated\n * and will be removed in v2! Use the PopperUtils module directly instead.\n * Due to the high instability of the methods contained in Utils, we can't\n * guarantee them to follow semver. Use them at your own risk!\n * @static\n * @private\n * @type {Object}\n * @deprecated since version 1.8\n * @member Utils\n * @memberof Popper\n */\n\n }]);\n return Popper;\n}();\n\n/**\n * The `referenceObject` is an object that provides an interface compatible with Popper.js\n * and lets you use it as replacement of a real DOM node.
\n * You can use this method to position a popper relatively to a set of coordinates\n * in case you don't have a DOM node to use as reference.\n *\n * ```\n * new Popper(referenceObject, popperNode);\n * ```\n *\n * NB: This feature isn't supported in Internet Explorer 10.\n * @name referenceObject\n * @property {Function} data.getBoundingClientRect\n * A function that returns a set of coordinates compatible with the native `getBoundingClientRect` method.\n * @property {number} data.clientWidth\n * An ES6 getter that will return the width of the virtual reference element.\n * @property {number} data.clientHeight\n * An ES6 getter that will return the height of the virtual reference element.\n */\n\n\nPopper.Utils = (typeof window !== 'undefined' ? window : global).PopperUtils;\nPopper.placements = placements;\nPopper.Defaults = Defaults;\n\nexport default Popper;\n//# sourceMappingURL=popper.js.map\n","import _typeof from '@babel/runtime/helpers/typeof';\nimport _defineProperty from '@babel/runtime/helpers/defineProperty';\nimport _classCallCheck from '@babel/runtime/helpers/classCallCheck';\nimport _createClass from '@babel/runtime/helpers/createClass';\nimport Popper from 'popper.js';\nimport isEqual from 'lodash/isEqual';\nimport { ResizeObserver } from 'vue-resize';\nimport merge from 'lodash/merge';\n\nvar SVGAnimatedString = function SVGAnimatedString() {};\n\nif (typeof window !== 'undefined') {\n SVGAnimatedString = window.SVGAnimatedString;\n}\n\nfunction convertToArray(value) {\n if (typeof value === 'string') {\n value = value.split(' ');\n }\n\n return value;\n}\n/**\n * Add classes to an element.\n * This method checks to ensure that the classes don't already exist before adding them.\n * It uses el.className rather than classList in order to be IE friendly.\n * @param {object} el - The element to add the classes to.\n * @param {classes} string - List of space separated classes to be added to the element.\n */\n\nfunction addClasses(el, classes) {\n var newClasses = convertToArray(classes);\n var classList;\n\n if (el.className instanceof SVGAnimatedString) {\n classList = convertToArray(el.className.baseVal);\n } else {\n classList = convertToArray(el.className);\n }\n\n newClasses.forEach(function (newClass) {\n if (classList.indexOf(newClass) === -1) {\n classList.push(newClass);\n }\n });\n\n if (el instanceof SVGElement) {\n el.setAttribute('class', classList.join(' '));\n } else {\n el.className = classList.join(' ');\n }\n}\n/**\n * Remove classes from an element.\n * It uses el.className rather than classList in order to be IE friendly.\n * @export\n * @param {any} el The element to remove the classes from.\n * @param {any} classes List of space separated classes to be removed from the element.\n */\n\nfunction removeClasses(el, classes) {\n var newClasses = convertToArray(classes);\n var classList;\n\n if (el.className instanceof SVGAnimatedString) {\n classList = convertToArray(el.className.baseVal);\n } else {\n classList = convertToArray(el.className);\n }\n\n newClasses.forEach(function (newClass) {\n var index = classList.indexOf(newClass);\n\n if (index !== -1) {\n classList.splice(index, 1);\n }\n });\n\n if (el instanceof SVGElement) {\n el.setAttribute('class', classList.join(' '));\n } else {\n el.className = classList.join(' ');\n }\n}\nvar supportsPassive = false;\n\nif (typeof window !== 'undefined') {\n supportsPassive = false;\n\n try {\n var opts = Object.defineProperty({}, 'passive', {\n get: function get() {\n supportsPassive = true;\n }\n });\n window.addEventListener('test', null, opts);\n } catch (e) {}\n}\n\nfunction ownKeys$2(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread$2(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$2(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$2(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\nvar DEFAULT_OPTIONS = {\n container: false,\n delay: 0,\n html: false,\n placement: 'top',\n title: '',\n template: '
',\n trigger: 'hover focus',\n offset: 0\n};\nvar openTooltips = [];\n\nvar Tooltip = /*#__PURE__*/function () {\n /**\n * Create a new Tooltip.js instance\n * @class Tooltip\n * @param {HTMLElement} reference - The DOM node used as reference of the tooltip (it can be a jQuery element).\n * @param {Object} options\n * @param {String} options.placement=bottom\n * Placement of the popper accepted values: `top(-start, -end), right(-start, -end), bottom(-start, -end),\n * left(-start, -end)`\n * @param {HTMLElement|String|false} options.container=false - Append the tooltip to a specific element.\n * @param {Number|Object} options.delay=0\n * Delay showing and hiding the tooltip (ms) - does not apply to manual trigger type.\n * If a number is supplied, delay is applied to both hide/show.\n * Object structure is: `{ show: 500, hide: 100 }`\n * @param {Boolean} options.html=false - Insert HTML into the tooltip. If false, the content will inserted with `innerText`.\n * @param {String|PlacementFunction} options.placement='top' - One of the allowed placements, or a function returning one of them.\n * @param {String} [options.template='
']\n * Base HTML to used when creating the tooltip.\n * The tooltip's `title` will be injected into the `.tooltip-inner` or `.tooltip__inner`.\n * `.tooltip-arrow` or `.tooltip__arrow` will become the tooltip's arrow.\n * The outermost wrapper element should have the `.tooltip` class.\n * @param {String|HTMLElement|TitleFunction} options.title='' - Default title value if `title` attribute isn't present.\n * @param {String} [options.trigger='hover focus']\n * How tooltip is triggered - click, hover, focus, manual.\n * You may pass multiple triggers; separate them with a space. `manual` cannot be combined with any other trigger.\n * @param {HTMLElement} options.boundariesElement\n * The element used as boundaries for the tooltip. For more information refer to Popper.js'\n * [boundariesElement docs](https://popper.js.org/popper-documentation.html)\n * @param {Number|String} options.offset=0 - Offset of the tooltip relative to its reference. For more information refer to Popper.js'\n * [offset docs](https://popper.js.org/popper-documentation.html)\n * @param {Object} options.popperOptions={} - Popper options, will be passed directly to popper instance. For more information refer to Popper.js'\n * [options docs](https://popper.js.org/popper-documentation.html)\n * @param {string} [options.ariaId] Id used for accessibility\n * @return {Object} instance - The generated tooltip instance\n */\n function Tooltip(_reference, _options) {\n var _this = this;\n\n _classCallCheck(this, Tooltip);\n\n _defineProperty(this, \"_events\", []);\n\n _defineProperty(this, \"_setTooltipNodeEvent\", function (evt, reference, delay, options) {\n var relatedreference = evt.relatedreference || evt.toElement || evt.relatedTarget;\n\n var callback = function callback(evt2) {\n var relatedreference2 = evt2.relatedreference || evt2.toElement || evt2.relatedTarget; // Remove event listener after call\n\n _this._tooltipNode.removeEventListener(evt.type, callback); // If the new reference is not the reference element\n\n\n if (!reference.contains(relatedreference2)) {\n // Schedule to hide tooltip\n _this._scheduleHide(reference, options.delay, options, evt2);\n }\n };\n\n if (_this._tooltipNode.contains(relatedreference)) {\n // listen to mouseleave on the tooltip element to be able to hide the tooltip\n _this._tooltipNode.addEventListener(evt.type, callback);\n\n return true;\n }\n\n return false;\n });\n\n // apply user options over default ones\n _options = _objectSpread$2(_objectSpread$2({}, DEFAULT_OPTIONS), _options);\n _reference.jquery && (_reference = _reference[0]);\n this.show = this.show.bind(this);\n this.hide = this.hide.bind(this); // cache reference and options\n\n this.reference = _reference;\n this.options = _options; // set initial state\n\n this._isOpen = false;\n\n this._init();\n } //\n // Public methods\n //\n\n /**\n * Reveals an element's tooltip. This is considered a \"manual\" triggering of the tooltip.\n * Tooltips with zero-length titles are never displayed.\n * @method Tooltip#show\n * @memberof Tooltip\n */\n\n\n _createClass(Tooltip, [{\n key: \"show\",\n value: function show() {\n this._show(this.reference, this.options);\n }\n /**\n * Hides an element’s tooltip. This is considered a “manual” triggering of the tooltip.\n * @method Tooltip#hide\n * @memberof Tooltip\n */\n\n }, {\n key: \"hide\",\n value: function hide() {\n this._hide();\n }\n /**\n * Hides and destroys an element’s tooltip.\n * @method Tooltip#dispose\n * @memberof Tooltip\n */\n\n }, {\n key: \"dispose\",\n value: function dispose() {\n this._dispose();\n }\n /**\n * Toggles an element’s tooltip. This is considered a “manual” triggering of the tooltip.\n * @method Tooltip#toggle\n * @memberof Tooltip\n */\n\n }, {\n key: \"toggle\",\n value: function toggle() {\n if (this._isOpen) {\n return this.hide();\n } else {\n return this.show();\n }\n }\n }, {\n key: \"setClasses\",\n value: function setClasses(classes) {\n this._classes = classes;\n }\n }, {\n key: \"setContent\",\n value: function setContent(content) {\n this.options.title = content;\n\n if (this._tooltipNode) {\n this._setContent(content, this.options);\n }\n }\n }, {\n key: \"setOptions\",\n value: function setOptions(options) {\n var classesUpdated = false;\n var classes = options && options.classes || directive.options.defaultClass;\n\n if (!isEqual(this._classes, classes)) {\n this.setClasses(classes);\n classesUpdated = true;\n }\n\n options = getOptions(options);\n var needPopperUpdate = false;\n var needRestart = false;\n\n if (this.options.offset !== options.offset || this.options.placement !== options.placement) {\n needPopperUpdate = true;\n }\n\n if (this.options.template !== options.template || this.options.trigger !== options.trigger || this.options.container !== options.container || classesUpdated) {\n needRestart = true;\n }\n\n for (var key in options) {\n this.options[key] = options[key];\n }\n\n if (this._tooltipNode) {\n if (needRestart) {\n var isOpen = this._isOpen;\n this.dispose();\n\n this._init();\n\n if (isOpen) {\n this.show();\n }\n } else if (needPopperUpdate) {\n this.popperInstance.update();\n }\n }\n } //\n // Private methods\n //\n\n }, {\n key: \"_init\",\n value: function _init() {\n // get events list\n var events = typeof this.options.trigger === 'string' ? this.options.trigger.split(' ') : [];\n this._isDisposed = false;\n this._enableDocumentTouch = events.indexOf('manual') === -1;\n events = events.filter(function (trigger) {\n return ['click', 'hover', 'focus'].indexOf(trigger) !== -1;\n }); // set event listeners\n\n this._setEventListeners(this.reference, events, this.options); // title attribute\n\n\n this.$_originalTitle = this.reference.getAttribute('title');\n this.reference.removeAttribute('title');\n this.reference.setAttribute('data-original-title', this.$_originalTitle);\n }\n /**\n * Creates a new tooltip node\n * @memberof Tooltip\n * @private\n * @param {HTMLElement} reference\n * @param {String} template\n * @param {String|HTMLElement|TitleFunction} title\n * @param {Boolean} allowHtml\n * @return {HTMLelement} tooltipNode\n */\n\n }, {\n key: \"_create\",\n value: function _create(reference, template) {\n var _this2 = this;\n\n // create tooltip element\n var tooltipGenerator = window.document.createElement('div');\n tooltipGenerator.innerHTML = template.trim();\n var tooltipNode = tooltipGenerator.childNodes[0]; // add unique ID to our tooltip (needed for accessibility reasons)\n\n tooltipNode.id = this.options.ariaId || \"tooltip_\".concat(Math.random().toString(36).substr(2, 10)); // Initially hide the tooltip\n // The attribute will be switched in a next frame so\n // CSS transitions can play\n\n tooltipNode.setAttribute('aria-hidden', 'true');\n\n if (this.options.autoHide && this.options.trigger.indexOf('hover') !== -1) {\n tooltipNode.addEventListener('mouseenter', function (evt) {\n return _this2._scheduleHide(reference, _this2.options.delay, _this2.options, evt);\n });\n tooltipNode.addEventListener('click', function (evt) {\n return _this2._scheduleHide(reference, _this2.options.delay, _this2.options, evt);\n });\n } // return the generated tooltip node\n\n\n return tooltipNode;\n }\n }, {\n key: \"_setContent\",\n value: function _setContent(content, options) {\n var _this3 = this;\n\n this.asyncContent = false;\n\n this._applyContent(content, options).then(function () {\n if (!_this3.popperInstance) return;\n\n _this3.popperInstance.update();\n });\n }\n }, {\n key: \"_applyContent\",\n value: function _applyContent(title, options) {\n var _this4 = this;\n\n return new Promise(function (resolve, reject) {\n var allowHtml = options.html;\n var rootNode = _this4._tooltipNode;\n if (!rootNode) return;\n var titleNode = rootNode.querySelector(_this4.options.innerSelector);\n\n if (title.nodeType === 1) {\n // if title is a node, append it only if allowHtml is true\n if (allowHtml) {\n while (titleNode.firstChild) {\n titleNode.removeChild(titleNode.firstChild);\n }\n\n titleNode.appendChild(title);\n }\n } else if (typeof title === 'function') {\n // if title is a function, call it and set innerText or innerHtml depending by `allowHtml` value\n var result = title();\n\n if (result && typeof result.then === 'function') {\n _this4.asyncContent = true;\n options.loadingClass && addClasses(rootNode, options.loadingClass);\n\n if (options.loadingContent) {\n _this4._applyContent(options.loadingContent, options);\n }\n\n result.then(function (asyncResult) {\n options.loadingClass && removeClasses(rootNode, options.loadingClass);\n return _this4._applyContent(asyncResult, options);\n }).then(resolve).catch(reject);\n } else {\n _this4._applyContent(result, options).then(resolve).catch(reject);\n }\n\n return;\n } else {\n // if it's just a simple text, set innerText or innerHtml depending by `allowHtml` value\n allowHtml ? titleNode.innerHTML = title : titleNode.innerText = title;\n }\n\n resolve();\n });\n }\n }, {\n key: \"_show\",\n value: function _show(reference, options) {\n if (options && typeof options.container === 'string') {\n var container = document.querySelector(options.container);\n if (!container) return;\n }\n\n clearTimeout(this._disposeTimer);\n options = Object.assign({}, options);\n delete options.offset;\n var updateClasses = true;\n\n if (this._tooltipNode) {\n addClasses(this._tooltipNode, this._classes);\n updateClasses = false;\n }\n\n var result = this._ensureShown(reference, options);\n\n if (updateClasses && this._tooltipNode) {\n addClasses(this._tooltipNode, this._classes);\n }\n\n addClasses(reference, ['v-tooltip-open']);\n return result;\n }\n }, {\n key: \"_ensureShown\",\n value: function _ensureShown(reference, options) {\n var _this5 = this;\n\n // don't show if it's already visible\n if (this._isOpen) {\n return this;\n }\n\n this._isOpen = true;\n openTooltips.push(this); // if the tooltipNode already exists, just show it\n\n if (this._tooltipNode) {\n this._tooltipNode.style.display = '';\n\n this._tooltipNode.setAttribute('aria-hidden', 'false');\n\n this.popperInstance.enableEventListeners();\n this.popperInstance.update();\n\n if (this.asyncContent) {\n this._setContent(options.title, options);\n }\n\n return this;\n } // get title\n\n\n var title = reference.getAttribute('title') || options.title; // don't show tooltip if no title is defined\n\n if (!title) {\n return this;\n } // create tooltip node\n\n\n var tooltipNode = this._create(reference, options.template);\n\n this._tooltipNode = tooltipNode; // Add `aria-describedby` to our reference element for accessibility reasons\n\n reference.setAttribute('aria-describedby', tooltipNode.id); // append tooltip to container\n\n var container = this._findContainer(options.container, reference);\n\n this._append(tooltipNode, container);\n\n var popperOptions = _objectSpread$2(_objectSpread$2({}, options.popperOptions), {}, {\n placement: options.placement\n });\n\n popperOptions.modifiers = _objectSpread$2(_objectSpread$2({}, popperOptions.modifiers), {}, {\n arrow: {\n element: this.options.arrowSelector\n }\n });\n\n if (options.boundariesElement) {\n popperOptions.modifiers.preventOverflow = {\n boundariesElement: options.boundariesElement\n };\n }\n\n this.popperInstance = new Popper(reference, tooltipNode, popperOptions);\n\n this._setContent(title, options); // Fix position\n\n\n requestAnimationFrame(function () {\n if (!_this5._isDisposed && _this5.popperInstance) {\n _this5.popperInstance.update(); // Show the tooltip\n\n\n requestAnimationFrame(function () {\n if (!_this5._isDisposed) {\n _this5._isOpen && tooltipNode.setAttribute('aria-hidden', 'false');\n } else {\n _this5.dispose();\n }\n });\n } else {\n _this5.dispose();\n }\n });\n return this;\n }\n }, {\n key: \"_noLongerOpen\",\n value: function _noLongerOpen() {\n var index = openTooltips.indexOf(this);\n\n if (index !== -1) {\n openTooltips.splice(index, 1);\n }\n }\n }, {\n key: \"_hide\",\n value: function _hide()\n /* reference, options */\n {\n var _this6 = this;\n\n // don't hide if it's already hidden\n if (!this._isOpen) {\n return this;\n }\n\n this._isOpen = false;\n\n this._noLongerOpen(); // hide tooltipNode\n\n\n this._tooltipNode.style.display = 'none';\n\n this._tooltipNode.setAttribute('aria-hidden', 'true');\n\n if (this.popperInstance) {\n this.popperInstance.disableEventListeners();\n }\n\n clearTimeout(this._disposeTimer);\n var disposeTime = directive.options.disposeTimeout;\n\n if (disposeTime !== null) {\n this._disposeTimer = setTimeout(function () {\n if (_this6._tooltipNode) {\n _this6._tooltipNode.removeEventListener('mouseenter', _this6.hide);\n\n _this6._tooltipNode.removeEventListener('click', _this6.hide); // Don't remove popper instance, just the HTML element\n\n\n _this6._removeTooltipNode();\n }\n }, disposeTime);\n }\n\n removeClasses(this.reference, ['v-tooltip-open']);\n return this;\n }\n }, {\n key: \"_removeTooltipNode\",\n value: function _removeTooltipNode() {\n if (!this._tooltipNode) return;\n var parentNode = this._tooltipNode.parentNode;\n\n if (parentNode) {\n parentNode.removeChild(this._tooltipNode);\n this.reference.removeAttribute('aria-describedby');\n }\n\n this._tooltipNode = null;\n }\n }, {\n key: \"_dispose\",\n value: function _dispose() {\n var _this7 = this;\n\n this._isDisposed = true;\n this.reference.removeAttribute('data-original-title');\n\n if (this.$_originalTitle) {\n this.reference.setAttribute('title', this.$_originalTitle);\n } // remove event listeners first to prevent any unexpected behaviour\n\n\n this._events.forEach(function (_ref) {\n var func = _ref.func,\n event = _ref.event;\n\n _this7.reference.removeEventListener(event, func);\n });\n\n this._events = [];\n\n if (this._tooltipNode) {\n this._hide();\n\n this._tooltipNode.removeEventListener('mouseenter', this.hide);\n\n this._tooltipNode.removeEventListener('click', this.hide); // destroy instance\n\n\n this.popperInstance.destroy(); // destroy tooltipNode if removeOnDestroy is not set, as popperInstance.destroy() already removes the element\n\n if (!this.popperInstance.options.removeOnDestroy) {\n this._removeTooltipNode();\n }\n } else {\n this._noLongerOpen();\n }\n\n return this;\n }\n }, {\n key: \"_findContainer\",\n value: function _findContainer(container, reference) {\n // if container is a query, get the relative element\n if (typeof container === 'string') {\n container = window.document.querySelector(container);\n } else if (container === false) {\n // if container is `false`, set it to reference parent\n container = reference.parentNode;\n }\n\n return container;\n }\n /**\n * Append tooltip to container\n * @memberof Tooltip\n * @private\n * @param {HTMLElement} tooltip\n * @param {HTMLElement|String|false} container\n */\n\n }, {\n key: \"_append\",\n value: function _append(tooltipNode, container) {\n container.appendChild(tooltipNode);\n }\n }, {\n key: \"_setEventListeners\",\n value: function _setEventListeners(reference, events, options) {\n var _this8 = this;\n\n var directEvents = [];\n var oppositeEvents = [];\n events.forEach(function (event) {\n switch (event) {\n case 'hover':\n directEvents.push('mouseenter');\n oppositeEvents.push('mouseleave');\n if (_this8.options.hideOnTargetClick) oppositeEvents.push('click');\n break;\n\n case 'focus':\n directEvents.push('focus');\n oppositeEvents.push('blur');\n if (_this8.options.hideOnTargetClick) oppositeEvents.push('click');\n break;\n\n case 'click':\n directEvents.push('click');\n oppositeEvents.push('click');\n break;\n }\n }); // schedule show tooltip\n\n directEvents.forEach(function (event) {\n var func = function func(evt) {\n if (_this8._isOpen === true) {\n return;\n }\n\n evt.usedByTooltip = true;\n\n _this8._scheduleShow(reference, options.delay, options, evt);\n };\n\n _this8._events.push({\n event: event,\n func: func\n });\n\n reference.addEventListener(event, func);\n }); // schedule hide tooltip\n\n oppositeEvents.forEach(function (event) {\n var func = function func(evt) {\n if (evt.usedByTooltip === true) {\n return;\n }\n\n _this8._scheduleHide(reference, options.delay, options, evt);\n };\n\n _this8._events.push({\n event: event,\n func: func\n });\n\n reference.addEventListener(event, func);\n });\n }\n }, {\n key: \"_onDocumentTouch\",\n value: function _onDocumentTouch(event) {\n if (this._enableDocumentTouch) {\n this._scheduleHide(this.reference, this.options.delay, this.options, event);\n }\n }\n }, {\n key: \"_scheduleShow\",\n value: function _scheduleShow(reference, delay, options\n /*, evt */\n ) {\n var _this9 = this;\n\n // defaults to 0\n var computedDelay = delay && delay.show || delay || 0;\n clearTimeout(this._scheduleTimer);\n this._scheduleTimer = window.setTimeout(function () {\n return _this9._show(reference, options);\n }, computedDelay);\n }\n }, {\n key: \"_scheduleHide\",\n value: function _scheduleHide(reference, delay, options, evt) {\n var _this10 = this;\n\n // defaults to 0\n var computedDelay = delay && delay.hide || delay || 0;\n clearTimeout(this._scheduleTimer);\n this._scheduleTimer = window.setTimeout(function () {\n if (_this10._isOpen === false) {\n return;\n }\n\n if (!_this10._tooltipNode.ownerDocument.body.contains(_this10._tooltipNode)) {\n return;\n } // if we are hiding because of a mouseleave, we must check that the new\n // reference isn't the tooltip, because in this case we don't want to hide it\n\n\n if (evt.type === 'mouseleave') {\n var isSet = _this10._setTooltipNodeEvent(evt, reference, delay, options); // if we set the new event, don't hide the tooltip yet\n // the new event will take care to hide it if necessary\n\n\n if (isSet) {\n return;\n }\n }\n\n _this10._hide(reference, options);\n }, computedDelay);\n }\n }]);\n\n return Tooltip;\n}(); // Hide tooltips on touch devices\n\nif (typeof document !== 'undefined') {\n document.addEventListener('touchstart', function (event) {\n for (var i = 0; i < openTooltips.length; i++) {\n openTooltips[i]._onDocumentTouch(event);\n }\n }, supportsPassive ? {\n passive: true,\n capture: true\n } : true);\n}\n/**\n * Placement function, its context is the Tooltip instance.\n * @memberof Tooltip\n * @callback PlacementFunction\n * @param {HTMLElement} tooltip - tooltip DOM node.\n * @param {HTMLElement} reference - reference DOM node.\n * @return {String} placement - One of the allowed placement options.\n */\n\n/**\n * Title function, its context is the Tooltip instance.\n * @memberof Tooltip\n * @callback TitleFunction\n * @return {String} placement - The desired title.\n */\n\nfunction ownKeys$1(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$1(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\nvar state = {\n enabled: true\n};\nvar positions = ['top', 'top-start', 'top-end', 'right', 'right-start', 'right-end', 'bottom', 'bottom-start', 'bottom-end', 'left', 'left-start', 'left-end'];\nvar defaultOptions = {\n // Default tooltip placement relative to target element\n defaultPlacement: 'top',\n // Default CSS classes applied to the tooltip element\n defaultClass: 'vue-tooltip-theme',\n // Default CSS classes applied to the target element of the tooltip\n defaultTargetClass: 'has-tooltip',\n // Is the content HTML by default?\n defaultHtml: true,\n // Default HTML template of the tooltip element\n // It must include `tooltip-arrow` & `tooltip-inner` CSS classes (can be configured, see below)\n // Change if the classes conflict with other libraries (for example bootstrap)\n defaultTemplate: '
',\n // Selector used to get the arrow element in the tooltip template\n defaultArrowSelector: '.tooltip-arrow, .tooltip__arrow',\n // Selector used to get the inner content element in the tooltip template\n defaultInnerSelector: '.tooltip-inner, .tooltip__inner',\n // Delay (ms)\n defaultDelay: 0,\n // Default events that trigger the tooltip\n defaultTrigger: 'hover focus',\n // Default position offset (px)\n defaultOffset: 0,\n // Default container where the tooltip will be appended\n defaultContainer: 'body',\n defaultBoundariesElement: undefined,\n defaultPopperOptions: {},\n // Class added when content is loading\n defaultLoadingClass: 'tooltip-loading',\n // Displayed when tooltip content is loading\n defaultLoadingContent: '...',\n // Hide on mouseover tooltip\n autoHide: true,\n // Close tooltip on click on tooltip target?\n defaultHideOnTargetClick: true,\n // Auto destroy tooltip DOM nodes (ms)\n disposeTimeout: 5000,\n // Options for popover\n popover: {\n defaultPlacement: 'bottom',\n // Use the `popoverClass` prop for theming\n defaultClass: 'vue-popover-theme',\n // Base class (change if conflicts with other libraries)\n defaultBaseClass: 'tooltip popover',\n // Wrapper class (contains arrow and inner)\n defaultWrapperClass: 'wrapper',\n // Inner content class\n defaultInnerClass: 'tooltip-inner popover-inner',\n // Arrow class\n defaultArrowClass: 'tooltip-arrow popover-arrow',\n // Class added when popover is open\n defaultOpenClass: 'open',\n defaultDelay: 0,\n defaultTrigger: 'click',\n defaultOffset: 0,\n defaultContainer: 'body',\n defaultBoundariesElement: undefined,\n defaultPopperOptions: {},\n // Hides if clicked outside of popover\n defaultAutoHide: true,\n // Update popper on content resize\n defaultHandleResize: true\n }\n};\nfunction getOptions(options) {\n var result = {\n placement: typeof options.placement !== 'undefined' ? options.placement : directive.options.defaultPlacement,\n delay: typeof options.delay !== 'undefined' ? options.delay : directive.options.defaultDelay,\n html: typeof options.html !== 'undefined' ? options.html : directive.options.defaultHtml,\n template: typeof options.template !== 'undefined' ? options.template : directive.options.defaultTemplate,\n arrowSelector: typeof options.arrowSelector !== 'undefined' ? options.arrowSelector : directive.options.defaultArrowSelector,\n innerSelector: typeof options.innerSelector !== 'undefined' ? options.innerSelector : directive.options.defaultInnerSelector,\n trigger: typeof options.trigger !== 'undefined' ? options.trigger : directive.options.defaultTrigger,\n offset: typeof options.offset !== 'undefined' ? options.offset : directive.options.defaultOffset,\n container: typeof options.container !== 'undefined' ? options.container : directive.options.defaultContainer,\n boundariesElement: typeof options.boundariesElement !== 'undefined' ? options.boundariesElement : directive.options.defaultBoundariesElement,\n autoHide: typeof options.autoHide !== 'undefined' ? options.autoHide : directive.options.autoHide,\n hideOnTargetClick: typeof options.hideOnTargetClick !== 'undefined' ? options.hideOnTargetClick : directive.options.defaultHideOnTargetClick,\n loadingClass: typeof options.loadingClass !== 'undefined' ? options.loadingClass : directive.options.defaultLoadingClass,\n loadingContent: typeof options.loadingContent !== 'undefined' ? options.loadingContent : directive.options.defaultLoadingContent,\n popperOptions: _objectSpread$1({}, typeof options.popperOptions !== 'undefined' ? options.popperOptions : directive.options.defaultPopperOptions)\n };\n\n if (result.offset) {\n var typeofOffset = _typeof(result.offset);\n\n var offset = result.offset; // One value -> switch\n\n if (typeofOffset === 'number' || typeofOffset === 'string' && offset.indexOf(',') === -1) {\n offset = \"0, \".concat(offset);\n }\n\n if (!result.popperOptions.modifiers) {\n result.popperOptions.modifiers = {};\n }\n\n result.popperOptions.modifiers.offset = {\n offset: offset\n };\n }\n\n if (result.trigger && result.trigger.indexOf('click') !== -1) {\n result.hideOnTargetClick = false;\n }\n\n return result;\n}\nfunction getPlacement(value, modifiers) {\n var placement = value.placement;\n\n for (var i = 0; i < positions.length; i++) {\n var pos = positions[i];\n\n if (modifiers[pos]) {\n placement = pos;\n }\n }\n\n return placement;\n}\nfunction getContent(value) {\n var type = _typeof(value);\n\n if (type === 'string') {\n return value;\n } else if (value && type === 'object') {\n return value.content;\n } else {\n return false;\n }\n}\nfunction createTooltip(el, value) {\n var modifiers = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var content = getContent(value);\n var classes = typeof value.classes !== 'undefined' ? value.classes : directive.options.defaultClass;\n\n var opts = _objectSpread$1({\n title: content\n }, getOptions(_objectSpread$1(_objectSpread$1({}, _typeof(value) === 'object' ? value : {}), {}, {\n placement: getPlacement(value, modifiers)\n })));\n\n var tooltip = el._tooltip = new Tooltip(el, opts);\n tooltip.setClasses(classes);\n tooltip._vueEl = el; // Class on target\n\n var targetClasses = typeof value.targetClasses !== 'undefined' ? value.targetClasses : directive.options.defaultTargetClass;\n el._tooltipTargetClasses = targetClasses;\n addClasses(el, targetClasses);\n return tooltip;\n}\nfunction destroyTooltip(el) {\n if (el._tooltip) {\n el._tooltip.dispose();\n\n delete el._tooltip;\n delete el._tooltipOldShow;\n }\n\n if (el._tooltipTargetClasses) {\n removeClasses(el, el._tooltipTargetClasses);\n delete el._tooltipTargetClasses;\n }\n}\nfunction bind(el, _ref) {\n var value = _ref.value;\n _ref.oldValue;\n var modifiers = _ref.modifiers;\n var content = getContent(value);\n\n if (!content || !state.enabled) {\n destroyTooltip(el);\n } else {\n var tooltip;\n\n if (el._tooltip) {\n tooltip = el._tooltip; // Content\n\n tooltip.setContent(content); // Options\n\n tooltip.setOptions(_objectSpread$1(_objectSpread$1({}, value), {}, {\n placement: getPlacement(value, modifiers)\n }));\n } else {\n tooltip = createTooltip(el, value, modifiers);\n } // Manual show\n\n\n if (typeof value.show !== 'undefined' && value.show !== el._tooltipOldShow) {\n el._tooltipOldShow = value.show;\n value.show ? tooltip.show() : tooltip.hide();\n }\n }\n}\nvar directive = {\n options: defaultOptions,\n bind: bind,\n update: bind,\n unbind: function unbind(el) {\n destroyTooltip(el);\n }\n};\n\nfunction addListeners(el) {\n el.addEventListener('click', onClick);\n el.addEventListener('touchstart', onTouchStart, supportsPassive ? {\n passive: true\n } : false);\n}\n\nfunction removeListeners(el) {\n el.removeEventListener('click', onClick);\n el.removeEventListener('touchstart', onTouchStart);\n el.removeEventListener('touchend', onTouchEnd);\n el.removeEventListener('touchcancel', onTouchCancel);\n}\n\nfunction onClick(event) {\n var el = event.currentTarget;\n event.closePopover = !el.$_vclosepopover_touch;\n event.closeAllPopover = el.$_closePopoverModifiers && !!el.$_closePopoverModifiers.all;\n}\n\nfunction onTouchStart(event) {\n if (event.changedTouches.length === 1) {\n var el = event.currentTarget;\n el.$_vclosepopover_touch = true;\n var touch = event.changedTouches[0];\n el.$_vclosepopover_touchPoint = touch;\n el.addEventListener('touchend', onTouchEnd);\n el.addEventListener('touchcancel', onTouchCancel);\n }\n}\n\nfunction onTouchEnd(event) {\n var el = event.currentTarget;\n el.$_vclosepopover_touch = false;\n\n if (event.changedTouches.length === 1) {\n var touch = event.changedTouches[0];\n var firstTouch = el.$_vclosepopover_touchPoint;\n event.closePopover = Math.abs(touch.screenY - firstTouch.screenY) < 20 && Math.abs(touch.screenX - firstTouch.screenX) < 20;\n event.closeAllPopover = el.$_closePopoverModifiers && !!el.$_closePopoverModifiers.all;\n }\n}\n\nfunction onTouchCancel(event) {\n var el = event.currentTarget;\n el.$_vclosepopover_touch = false;\n}\n\nvar vclosepopover = {\n bind: function bind(el, _ref) {\n var value = _ref.value,\n modifiers = _ref.modifiers;\n el.$_closePopoverModifiers = modifiers;\n\n if (typeof value === 'undefined' || value) {\n addListeners(el);\n }\n },\n update: function update(el, _ref2) {\n var value = _ref2.value,\n oldValue = _ref2.oldValue,\n modifiers = _ref2.modifiers;\n el.$_closePopoverModifiers = modifiers;\n\n if (value !== oldValue) {\n if (typeof value === 'undefined' || value) {\n addListeners(el);\n } else {\n removeListeners(el);\n }\n }\n },\n unbind: function unbind(el) {\n removeListeners(el);\n }\n};\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction getDefault(key) {\n var value = directive.options.popover[key];\n\n if (typeof value === 'undefined') {\n return directive.options[key];\n }\n\n return value;\n}\n\nvar isIOS = false;\n\nif (typeof window !== 'undefined' && typeof navigator !== 'undefined') {\n isIOS = /iPad|iPhone|iPod/.test(navigator.userAgent) && !window.MSStream;\n}\n\nvar openPopovers = [];\n\nvar Element = function Element() {};\n\nif (typeof window !== 'undefined') {\n Element = window.Element;\n}\n\nvar script = {\n name: 'VPopover',\n components: {\n ResizeObserver: ResizeObserver\n },\n props: {\n open: {\n type: Boolean,\n default: false\n },\n disabled: {\n type: Boolean,\n default: false\n },\n placement: {\n type: String,\n default: function _default() {\n return getDefault('defaultPlacement');\n }\n },\n delay: {\n type: [String, Number, Object],\n default: function _default() {\n return getDefault('defaultDelay');\n }\n },\n offset: {\n type: [String, Number],\n default: function _default() {\n return getDefault('defaultOffset');\n }\n },\n trigger: {\n type: String,\n default: function _default() {\n return getDefault('defaultTrigger');\n }\n },\n container: {\n type: [String, Object, Element, Boolean],\n default: function _default() {\n return getDefault('defaultContainer');\n }\n },\n boundariesElement: {\n type: [String, Element],\n default: function _default() {\n return getDefault('defaultBoundariesElement');\n }\n },\n popperOptions: {\n type: Object,\n default: function _default() {\n return getDefault('defaultPopperOptions');\n }\n },\n popoverClass: {\n type: [String, Array],\n default: function _default() {\n return getDefault('defaultClass');\n }\n },\n popoverBaseClass: {\n type: [String, Array],\n default: function _default() {\n return directive.options.popover.defaultBaseClass;\n }\n },\n popoverInnerClass: {\n type: [String, Array],\n default: function _default() {\n return directive.options.popover.defaultInnerClass;\n }\n },\n popoverWrapperClass: {\n type: [String, Array],\n default: function _default() {\n return directive.options.popover.defaultWrapperClass;\n }\n },\n popoverArrowClass: {\n type: [String, Array],\n default: function _default() {\n return directive.options.popover.defaultArrowClass;\n }\n },\n autoHide: {\n type: Boolean,\n default: function _default() {\n return directive.options.popover.defaultAutoHide;\n }\n },\n handleResize: {\n type: Boolean,\n default: function _default() {\n return directive.options.popover.defaultHandleResize;\n }\n },\n openGroup: {\n type: String,\n default: null\n },\n openClass: {\n type: [String, Array],\n default: function _default() {\n return directive.options.popover.defaultOpenClass;\n }\n },\n ariaId: {\n default: null\n }\n },\n data: function data() {\n return {\n isOpen: false,\n id: Math.random().toString(36).substr(2, 10)\n };\n },\n computed: {\n cssClass: function cssClass() {\n return _defineProperty({}, this.openClass, this.isOpen);\n },\n popoverId: function popoverId() {\n return \"popover_\".concat(this.ariaId != null ? this.ariaId : this.id);\n }\n },\n watch: {\n open: function open(val) {\n if (val) {\n this.show();\n } else {\n this.hide();\n }\n },\n disabled: function disabled(val, oldVal) {\n if (val !== oldVal) {\n if (val) {\n this.hide();\n } else if (this.open) {\n this.show();\n }\n }\n },\n container: function container(val) {\n if (this.isOpen && this.popperInstance) {\n var popoverNode = this.$refs.popover;\n var reference = this.$refs.trigger;\n var container = this.$_findContainer(this.container, reference);\n\n if (!container) {\n console.warn('No container for popover', this);\n return;\n }\n\n container.appendChild(popoverNode);\n this.popperInstance.scheduleUpdate();\n }\n },\n trigger: function trigger(val) {\n this.$_removeEventListeners();\n this.$_addEventListeners();\n },\n placement: function placement(val) {\n var _this = this;\n\n this.$_updatePopper(function () {\n _this.popperInstance.options.placement = val;\n });\n },\n offset: '$_restartPopper',\n boundariesElement: '$_restartPopper',\n popperOptions: {\n handler: '$_restartPopper',\n deep: true\n }\n },\n created: function created() {\n this.$_isDisposed = false;\n this.$_mounted = false;\n this.$_events = [];\n this.$_preventOpen = false;\n },\n mounted: function mounted() {\n var popoverNode = this.$refs.popover;\n popoverNode.parentNode && popoverNode.parentNode.removeChild(popoverNode);\n this.$_init();\n\n if (this.open) {\n this.show();\n }\n },\n deactivated: function deactivated() {\n this.hide();\n },\n beforeDestroy: function beforeDestroy() {\n this.dispose();\n },\n methods: {\n show: function show() {\n var _this2 = this;\n\n var _ref2 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n event = _ref2.event;\n _ref2.skipDelay;\n var _ref2$force = _ref2.force,\n force = _ref2$force === void 0 ? false : _ref2$force;\n\n if (force || !this.disabled) {\n this.$_scheduleShow(event);\n this.$emit('show');\n }\n\n this.$emit('update:open', true);\n this.$_beingShowed = true;\n requestAnimationFrame(function () {\n _this2.$_beingShowed = false;\n });\n },\n hide: function hide() {\n var _ref3 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n event = _ref3.event;\n _ref3.skipDelay;\n\n this.$_scheduleHide(event);\n this.$emit('hide');\n this.$emit('update:open', false);\n },\n dispose: function dispose() {\n this.$_isDisposed = true;\n this.$_removeEventListeners();\n this.hide({\n skipDelay: true\n });\n\n if (this.popperInstance) {\n this.popperInstance.destroy(); // destroy tooltipNode if removeOnDestroy is not set, as popperInstance.destroy() already removes the element\n\n if (!this.popperInstance.options.removeOnDestroy) {\n var popoverNode = this.$refs.popover;\n popoverNode.parentNode && popoverNode.parentNode.removeChild(popoverNode);\n }\n }\n\n this.$_mounted = false;\n this.popperInstance = null;\n this.isOpen = false;\n this.$emit('dispose');\n },\n $_init: function $_init() {\n if (this.trigger.indexOf('manual') === -1) {\n this.$_addEventListeners();\n }\n },\n $_show: function $_show() {\n var _this3 = this;\n\n var reference = this.$refs.trigger;\n var popoverNode = this.$refs.popover;\n clearTimeout(this.$_disposeTimer); // Already open\n\n if (this.isOpen) {\n return;\n } // Popper is already initialized\n\n\n if (this.popperInstance) {\n this.isOpen = true;\n this.popperInstance.enableEventListeners();\n this.popperInstance.scheduleUpdate();\n }\n\n if (!this.$_mounted) {\n var container = this.$_findContainer(this.container, reference);\n\n if (!container) {\n console.warn('No container for popover', this);\n return;\n }\n\n container.appendChild(popoverNode);\n this.$_mounted = true;\n this.isOpen = false;\n\n if (this.popperInstance) {\n requestAnimationFrame(function () {\n if (!_this3.hidden) {\n _this3.isOpen = true;\n }\n });\n }\n }\n\n if (!this.popperInstance) {\n var popperOptions = _objectSpread(_objectSpread({}, this.popperOptions), {}, {\n placement: this.placement\n });\n\n popperOptions.modifiers = _objectSpread(_objectSpread({}, popperOptions.modifiers), {}, {\n arrow: _objectSpread(_objectSpread({}, popperOptions.modifiers && popperOptions.modifiers.arrow), {}, {\n element: this.$refs.arrow\n })\n });\n\n if (this.offset) {\n var offset = this.$_getOffset();\n popperOptions.modifiers.offset = _objectSpread(_objectSpread({}, popperOptions.modifiers && popperOptions.modifiers.offset), {}, {\n offset: offset\n });\n }\n\n if (this.boundariesElement) {\n popperOptions.modifiers.preventOverflow = _objectSpread(_objectSpread({}, popperOptions.modifiers && popperOptions.modifiers.preventOverflow), {}, {\n boundariesElement: this.boundariesElement\n });\n }\n\n this.popperInstance = new Popper(reference, popoverNode, popperOptions); // Fix position\n\n requestAnimationFrame(function () {\n if (_this3.hidden) {\n _this3.hidden = false;\n\n _this3.$_hide();\n\n return;\n }\n\n if (!_this3.$_isDisposed && _this3.popperInstance) {\n _this3.popperInstance.scheduleUpdate(); // Show the tooltip\n\n\n requestAnimationFrame(function () {\n if (_this3.hidden) {\n _this3.hidden = false;\n\n _this3.$_hide();\n\n return;\n }\n\n if (!_this3.$_isDisposed) {\n _this3.isOpen = true;\n } else {\n _this3.dispose();\n }\n });\n } else {\n _this3.dispose();\n }\n });\n }\n\n var openGroup = this.openGroup;\n\n if (openGroup) {\n var popover;\n\n for (var i = 0; i < openPopovers.length; i++) {\n popover = openPopovers[i];\n\n if (popover.openGroup !== openGroup) {\n popover.hide();\n popover.$emit('close-group');\n }\n }\n }\n\n openPopovers.push(this);\n this.$emit('apply-show');\n },\n $_hide: function $_hide() {\n var _this4 = this;\n\n // Already hidden\n if (!this.isOpen) {\n return;\n }\n\n var index = openPopovers.indexOf(this);\n\n if (index !== -1) {\n openPopovers.splice(index, 1);\n }\n\n this.isOpen = false;\n\n if (this.popperInstance) {\n this.popperInstance.disableEventListeners();\n }\n\n clearTimeout(this.$_disposeTimer);\n var disposeTime = directive.options.popover.disposeTimeout || directive.options.disposeTimeout;\n\n if (disposeTime !== null) {\n this.$_disposeTimer = setTimeout(function () {\n var popoverNode = _this4.$refs.popover;\n\n if (popoverNode) {\n // Don't remove popper instance, just the HTML element\n popoverNode.parentNode && popoverNode.parentNode.removeChild(popoverNode);\n _this4.$_mounted = false;\n }\n }, disposeTime);\n }\n\n this.$emit('apply-hide');\n },\n $_findContainer: function $_findContainer(container, reference) {\n // if container is a query, get the relative element\n if (typeof container === 'string') {\n container = window.document.querySelector(container);\n } else if (container === false) {\n // if container is `false`, set it to reference parent\n container = reference.parentNode;\n }\n\n return container;\n },\n $_getOffset: function $_getOffset() {\n var typeofOffset = _typeof(this.offset);\n\n var offset = this.offset; // One value -> switch\n\n if (typeofOffset === 'number' || typeofOffset === 'string' && offset.indexOf(',') === -1) {\n offset = \"0, \".concat(offset);\n }\n\n return offset;\n },\n $_addEventListeners: function $_addEventListeners() {\n var _this5 = this;\n\n var reference = this.$refs.trigger;\n var directEvents = [];\n var oppositeEvents = [];\n var events = typeof this.trigger === 'string' ? this.trigger.split(' ').filter(function (trigger) {\n return ['click', 'hover', 'focus'].indexOf(trigger) !== -1;\n }) : [];\n events.forEach(function (event) {\n switch (event) {\n case 'hover':\n directEvents.push('mouseenter');\n oppositeEvents.push('mouseleave');\n break;\n\n case 'focus':\n directEvents.push('focus');\n oppositeEvents.push('blur');\n break;\n\n case 'click':\n directEvents.push('click');\n oppositeEvents.push('click');\n break;\n }\n }); // schedule show tooltip\n\n directEvents.forEach(function (event) {\n var func = function func(event) {\n if (_this5.isOpen) {\n return;\n }\n\n event.usedByTooltip = true;\n !_this5.$_preventOpen && _this5.show({\n event: event\n });\n _this5.hidden = false;\n };\n\n _this5.$_events.push({\n event: event,\n func: func\n });\n\n reference.addEventListener(event, func);\n }); // schedule hide tooltip\n\n oppositeEvents.forEach(function (event) {\n var func = function func(event) {\n if (event.usedByTooltip) {\n return;\n }\n\n _this5.hide({\n event: event\n });\n\n _this5.hidden = true;\n };\n\n _this5.$_events.push({\n event: event,\n func: func\n });\n\n reference.addEventListener(event, func);\n });\n },\n $_scheduleShow: function $_scheduleShow() {\n var skipDelay = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n clearTimeout(this.$_scheduleTimer);\n\n if (skipDelay) {\n this.$_show();\n } else {\n // defaults to 0\n var computedDelay = parseInt(this.delay && this.delay.show || this.delay || 0);\n this.$_scheduleTimer = setTimeout(this.$_show.bind(this), computedDelay);\n }\n },\n $_scheduleHide: function $_scheduleHide() {\n var _this6 = this;\n\n var event = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n var skipDelay = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n clearTimeout(this.$_scheduleTimer);\n\n if (skipDelay) {\n this.$_hide();\n } else {\n // defaults to 0\n var computedDelay = parseInt(this.delay && this.delay.hide || this.delay || 0);\n this.$_scheduleTimer = setTimeout(function () {\n if (!_this6.isOpen) {\n return;\n } // if we are hiding because of a mouseleave, we must check that the new\n // reference isn't the tooltip, because in this case we don't want to hide it\n\n\n if (event && event.type === 'mouseleave') {\n var isSet = _this6.$_setTooltipNodeEvent(event); // if we set the new event, don't hide the tooltip yet\n // the new event will take care to hide it if necessary\n\n\n if (isSet) {\n return;\n }\n }\n\n _this6.$_hide();\n }, computedDelay);\n }\n },\n $_setTooltipNodeEvent: function $_setTooltipNodeEvent(event) {\n var _this7 = this;\n\n var reference = this.$refs.trigger;\n var popoverNode = this.$refs.popover;\n var relatedreference = event.relatedreference || event.toElement || event.relatedTarget;\n\n var callback = function callback(event2) {\n var relatedreference2 = event2.relatedreference || event2.toElement || event2.relatedTarget; // Remove event listener after call\n\n popoverNode.removeEventListener(event.type, callback); // If the new reference is not the reference element\n\n if (!reference.contains(relatedreference2)) {\n // Schedule to hide tooltip\n _this7.hide({\n event: event2\n });\n }\n };\n\n if (popoverNode.contains(relatedreference)) {\n // listen to mouseleave on the tooltip element to be able to hide the tooltip\n popoverNode.addEventListener(event.type, callback);\n return true;\n }\n\n return false;\n },\n $_removeEventListeners: function $_removeEventListeners() {\n var reference = this.$refs.trigger;\n this.$_events.forEach(function (_ref4) {\n var func = _ref4.func,\n event = _ref4.event;\n reference.removeEventListener(event, func);\n });\n this.$_events = [];\n },\n $_updatePopper: function $_updatePopper(cb) {\n if (this.popperInstance) {\n cb();\n if (this.isOpen) this.popperInstance.scheduleUpdate();\n }\n },\n $_restartPopper: function $_restartPopper() {\n if (this.popperInstance) {\n var isOpen = this.isOpen;\n this.dispose();\n this.$_isDisposed = false;\n this.$_init();\n\n if (isOpen) {\n this.show({\n skipDelay: true,\n force: true\n });\n }\n }\n },\n $_handleGlobalClose: function $_handleGlobalClose(event) {\n var _this8 = this;\n\n var touch = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n if (this.$_beingShowed) return;\n this.hide({\n event: event\n });\n\n if (event.closePopover) {\n this.$emit('close-directive');\n } else {\n this.$emit('auto-hide');\n }\n\n if (touch) {\n this.$_preventOpen = true;\n setTimeout(function () {\n _this8.$_preventOpen = false;\n }, 300);\n }\n },\n $_handleResize: function $_handleResize() {\n if (this.isOpen && this.popperInstance) {\n this.popperInstance.scheduleUpdate();\n this.$emit('resize');\n }\n }\n }\n};\n\nif (typeof document !== 'undefined' && typeof window !== 'undefined') {\n if (isIOS) {\n document.addEventListener('touchend', handleGlobalTouchend, supportsPassive ? {\n passive: true,\n capture: true\n } : true);\n } else {\n window.addEventListener('click', handleGlobalClick, true);\n }\n}\n\nfunction handleGlobalClick(event) {\n handleGlobalClose(event);\n}\n\nfunction handleGlobalTouchend(event) {\n handleGlobalClose(event, true);\n}\n\nfunction handleGlobalClose(event) {\n var touch = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n var _loop = function _loop(i) {\n var popover = openPopovers[i];\n\n if (popover.$refs.popover) {\n var contains = popover.$refs.popover.contains(event.target);\n requestAnimationFrame(function () {\n if (event.closeAllPopover || event.closePopover && contains || popover.autoHide && !contains) {\n popover.$_handleGlobalClose(event, touch);\n }\n });\n }\n };\n\n // Delay so that close directive has time to set values\n for (var i = 0; i < openPopovers.length; i++) {\n _loop(i);\n }\n}\n\nfunction normalizeComponent(template, style, script, scopeId, isFunctionalTemplate, moduleIdentifier /* server only */, shadowMode, createInjector, createInjectorSSR, createInjectorShadow) {\r\n if (typeof shadowMode !== 'boolean') {\r\n createInjectorSSR = createInjector;\r\n createInjector = shadowMode;\r\n shadowMode = false;\r\n }\r\n // Vue.extend constructor export interop.\r\n const options = typeof script === 'function' ? script.options : script;\r\n // render functions\r\n if (template && template.render) {\r\n options.render = template.render;\r\n options.staticRenderFns = template.staticRenderFns;\r\n options._compiled = true;\r\n // functional template\r\n if (isFunctionalTemplate) {\r\n options.functional = true;\r\n }\r\n }\r\n // scopedId\r\n if (scopeId) {\r\n options._scopeId = scopeId;\r\n }\r\n let hook;\r\n if (moduleIdentifier) {\r\n // server build\r\n hook = function (context) {\r\n // 2.3 injection\r\n context =\r\n context || // cached call\r\n (this.$vnode && this.$vnode.ssrContext) || // stateful\r\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext); // functional\r\n // 2.2 with runInNewContext: true\r\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\r\n context = __VUE_SSR_CONTEXT__;\r\n }\r\n // inject component styles\r\n if (style) {\r\n style.call(this, createInjectorSSR(context));\r\n }\r\n // register component module identifier for async chunk inference\r\n if (context && context._registeredComponents) {\r\n context._registeredComponents.add(moduleIdentifier);\r\n }\r\n };\r\n // used by ssr in case component is cached and beforeCreate\r\n // never gets called\r\n options._ssrRegister = hook;\r\n }\r\n else if (style) {\r\n hook = shadowMode\r\n ? function (context) {\r\n style.call(this, createInjectorShadow(context, this.$root.$options.shadowRoot));\r\n }\r\n : function (context) {\r\n style.call(this, createInjector(context));\r\n };\r\n }\r\n if (hook) {\r\n if (options.functional) {\r\n // register for functional component in vue file\r\n const originalRender = options.render;\r\n options.render = function renderWithStyleInjection(h, context) {\r\n hook.call(context);\r\n return originalRender(h, context);\r\n };\r\n }\r\n else {\r\n // inject component registration as beforeCreate hook\r\n const existing = options.beforeCreate;\r\n options.beforeCreate = existing ? [].concat(existing, hook) : [hook];\r\n }\r\n }\r\n return script;\r\n}\n\n/* script */\nvar __vue_script__ = script;\n/* template */\n\nvar __vue_render__ = function __vue_render__() {\n var _vm = this;\n\n var _h = _vm.$createElement;\n\n var _c = _vm._self._c || _h;\n\n return _c(\"div\", {\n staticClass: \"v-popover\",\n class: _vm.cssClass\n }, [_c(\"div\", {\n ref: \"trigger\",\n staticClass: \"trigger\",\n staticStyle: {\n display: \"inline-block\"\n },\n attrs: {\n \"aria-describedby\": _vm.isOpen ? _vm.popoverId : undefined,\n tabindex: _vm.trigger.indexOf(\"focus\") !== -1 ? 0 : undefined\n }\n }, [_vm._t(\"default\")], 2), _vm._v(\" \"), _c(\"div\", {\n ref: \"popover\",\n class: [_vm.popoverBaseClass, _vm.popoverClass, _vm.cssClass],\n style: {\n visibility: _vm.isOpen ? \"visible\" : \"hidden\"\n },\n attrs: {\n id: _vm.popoverId,\n \"aria-hidden\": _vm.isOpen ? \"false\" : \"true\",\n tabindex: _vm.autoHide ? 0 : undefined\n },\n on: {\n keyup: function keyup($event) {\n if (!$event.type.indexOf(\"key\") && _vm._k($event.keyCode, \"esc\", 27, $event.key, [\"Esc\", \"Escape\"])) {\n return null;\n }\n\n _vm.autoHide && _vm.hide();\n }\n }\n }, [_c(\"div\", {\n class: _vm.popoverWrapperClass\n }, [_c(\"div\", {\n ref: \"inner\",\n class: _vm.popoverInnerClass,\n staticStyle: {\n position: \"relative\"\n }\n }, [_c(\"div\", [_vm._t(\"popover\", null, {\n isOpen: _vm.isOpen\n })], 2), _vm._v(\" \"), _vm.handleResize ? _c(\"ResizeObserver\", {\n on: {\n notify: _vm.$_handleResize\n }\n }) : _vm._e()], 1), _vm._v(\" \"), _c(\"div\", {\n ref: \"arrow\",\n class: _vm.popoverArrowClass\n })])])]);\n};\n\nvar __vue_staticRenderFns__ = [];\n__vue_render__._withStripped = true;\n/* style */\n\nvar __vue_inject_styles__ = undefined;\n/* scoped */\n\nvar __vue_scope_id__ = undefined;\n/* module identifier */\n\nvar __vue_module_identifier__ = undefined;\n/* functional template */\n\nvar __vue_is_functional_template__ = false;\n/* style inject */\n\n/* style inject SSR */\n\n/* style inject shadow dom */\n\nvar __vue_component__ = /*#__PURE__*/normalizeComponent({\n render: __vue_render__,\n staticRenderFns: __vue_staticRenderFns__\n}, __vue_inject_styles__, __vue_script__, __vue_scope_id__, __vue_is_functional_template__, __vue_module_identifier__, false, undefined, undefined, undefined);\n\nfunction styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nvar css_248z = \".resize-observer[data-v-8859cc6c]{position:absolute;top:0;left:0;z-index:-1;width:100%;height:100%;border:none;background-color:transparent;pointer-events:none;display:block;overflow:hidden;opacity:0}.resize-observer[data-v-8859cc6c] object{display:block;position:absolute;top:0;left:0;height:100%;width:100%;overflow:hidden;pointer-events:none;z-index:-1}\";\nstyleInject(css_248z);\n\nfunction install(Vue) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n if (install.installed) return;\n install.installed = true;\n var finalOptions = {};\n merge(finalOptions, defaultOptions, options);\n plugin.options = finalOptions;\n directive.options = finalOptions;\n Vue.directive('tooltip', directive);\n Vue.directive('close-popover', vclosepopover);\n Vue.component('VPopover', __vue_component__);\n}\nvar VTooltip = directive;\nvar VClosePopover = vclosepopover;\nvar VPopover = __vue_component__;\nvar plugin = {\n install: install,\n\n get enabled() {\n return state.enabled;\n },\n\n set enabled(value) {\n state.enabled = value;\n }\n\n}; // Auto-install\n\nvar GlobalVue = null;\n\nif (typeof window !== 'undefined') {\n GlobalVue = window.Vue;\n} else if (typeof global !== 'undefined') {\n GlobalVue = global.Vue;\n}\n\nif (GlobalVue) {\n GlobalVue.use(plugin);\n}\n\nexport default plugin;\nexport { VClosePopover, VPopover, VTooltip, createTooltip, destroyTooltip, install };\n","function getInternetExplorerVersion() {\n var ua = window.navigator.userAgent;\n var msie = ua.indexOf('MSIE ');\n\n if (msie > 0) {\n // IE 10 or older => return version number\n return parseInt(ua.substring(msie + 5, ua.indexOf('.', msie)), 10);\n }\n\n var trident = ua.indexOf('Trident/');\n\n if (trident > 0) {\n // IE 11 => return version number\n var rv = ua.indexOf('rv:');\n return parseInt(ua.substring(rv + 3, ua.indexOf('.', rv)), 10);\n }\n\n var edge = ua.indexOf('Edge/');\n\n if (edge > 0) {\n // Edge (IE 12+) => return version number\n return parseInt(ua.substring(edge + 5, ua.indexOf('.', edge)), 10);\n } // other browser\n\n\n return -1;\n}\n\n//\nvar isIE;\n\nfunction initCompat() {\n if (!initCompat.init) {\n initCompat.init = true;\n isIE = getInternetExplorerVersion() !== -1;\n }\n}\n\nvar script = {\n name: 'ResizeObserver',\n props: {\n emitOnMount: {\n type: Boolean,\n default: false\n },\n ignoreWidth: {\n type: Boolean,\n default: false\n },\n ignoreHeight: {\n type: Boolean,\n default: false\n }\n },\n mounted: function mounted() {\n var _this = this;\n\n initCompat();\n this.$nextTick(function () {\n _this._w = _this.$el.offsetWidth;\n _this._h = _this.$el.offsetHeight;\n\n if (_this.emitOnMount) {\n _this.emitSize();\n }\n });\n var object = document.createElement('object');\n this._resizeObject = object;\n object.setAttribute('aria-hidden', 'true');\n object.setAttribute('tabindex', -1);\n object.onload = this.addResizeHandlers;\n object.type = 'text/html';\n\n if (isIE) {\n this.$el.appendChild(object);\n }\n\n object.data = 'about:blank';\n\n if (!isIE) {\n this.$el.appendChild(object);\n }\n },\n beforeDestroy: function beforeDestroy() {\n this.removeResizeHandlers();\n },\n methods: {\n compareAndNotify: function compareAndNotify() {\n if (!this.ignoreWidth && this._w !== this.$el.offsetWidth || !this.ignoreHeight && this._h !== this.$el.offsetHeight) {\n this._w = this.$el.offsetWidth;\n this._h = this.$el.offsetHeight;\n this.emitSize();\n }\n },\n emitSize: function emitSize() {\n this.$emit('notify', {\n width: this._w,\n height: this._h\n });\n },\n addResizeHandlers: function addResizeHandlers() {\n this._resizeObject.contentDocument.defaultView.addEventListener('resize', this.compareAndNotify);\n\n this.compareAndNotify();\n },\n removeResizeHandlers: function removeResizeHandlers() {\n if (this._resizeObject && this._resizeObject.onload) {\n if (!isIE && this._resizeObject.contentDocument) {\n this._resizeObject.contentDocument.defaultView.removeEventListener('resize', this.compareAndNotify);\n }\n\n this.$el.removeChild(this._resizeObject);\n this._resizeObject.onload = null;\n this._resizeObject = null;\n }\n }\n }\n};\n\nfunction normalizeComponent(template, style, script, scopeId, isFunctionalTemplate, moduleIdentifier\n/* server only */\n, shadowMode, createInjector, createInjectorSSR, createInjectorShadow) {\n if (typeof shadowMode !== 'boolean') {\n createInjectorSSR = createInjector;\n createInjector = shadowMode;\n shadowMode = false;\n } // Vue.extend constructor export interop.\n\n\n var options = typeof script === 'function' ? script.options : script; // render functions\n\n if (template && template.render) {\n options.render = template.render;\n options.staticRenderFns = template.staticRenderFns;\n options._compiled = true; // functional template\n\n if (isFunctionalTemplate) {\n options.functional = true;\n }\n } // scopedId\n\n\n if (scopeId) {\n options._scopeId = scopeId;\n }\n\n var hook;\n\n if (moduleIdentifier) {\n // server build\n hook = function hook(context) {\n // 2.3 injection\n context = context || // cached call\n this.$vnode && this.$vnode.ssrContext || // stateful\n this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext; // functional\n // 2.2 with runInNewContext: true\n\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__;\n } // inject component styles\n\n\n if (style) {\n style.call(this, createInjectorSSR(context));\n } // register component module identifier for async chunk inference\n\n\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier);\n }\n }; // used by ssr in case component is cached and beforeCreate\n // never gets called\n\n\n options._ssrRegister = hook;\n } else if (style) {\n hook = shadowMode ? function (context) {\n style.call(this, createInjectorShadow(context, this.$root.$options.shadowRoot));\n } : function (context) {\n style.call(this, createInjector(context));\n };\n }\n\n if (hook) {\n if (options.functional) {\n // register for functional component in vue file\n var originalRender = options.render;\n\n options.render = function renderWithStyleInjection(h, context) {\n hook.call(context);\n return originalRender(h, context);\n };\n } else {\n // inject component registration as beforeCreate hook\n var existing = options.beforeCreate;\n options.beforeCreate = existing ? [].concat(existing, hook) : [hook];\n }\n }\n\n return script;\n}\n\n/* script */\nvar __vue_script__ = script;\n/* template */\n\nvar __vue_render__ = function __vue_render__() {\n var _vm = this;\n\n var _h = _vm.$createElement;\n\n var _c = _vm._self._c || _h;\n\n return _c(\"div\", {\n staticClass: \"resize-observer\",\n attrs: {\n tabindex: \"-1\"\n }\n });\n};\n\nvar __vue_staticRenderFns__ = [];\n__vue_render__._withStripped = true;\n/* style */\n\nvar __vue_inject_styles__ = undefined;\n/* scoped */\n\nvar __vue_scope_id__ = \"data-v-8859cc6c\";\n/* module identifier */\n\nvar __vue_module_identifier__ = undefined;\n/* functional template */\n\nvar __vue_is_functional_template__ = false;\n/* style inject */\n\n/* style inject SSR */\n\n/* style inject shadow dom */\n\nvar __vue_component__ = /*#__PURE__*/normalizeComponent({\n render: __vue_render__,\n staticRenderFns: __vue_staticRenderFns__\n}, __vue_inject_styles__, __vue_script__, __vue_scope_id__, __vue_is_functional_template__, __vue_module_identifier__, false, undefined, undefined, undefined);\n\nfunction install(Vue) {\n // eslint-disable-next-line vue/component-definition-name-casing\n Vue.component('resize-observer', __vue_component__);\n Vue.component('ResizeObserver', __vue_component__);\n}\n\nvar plugin = {\n // eslint-disable-next-line no-undef\n version: \"1.0.1\",\n install: install\n};\n\nvar GlobalVue = null;\n\nif (typeof window !== 'undefined') {\n GlobalVue = window.Vue;\n} else if (typeof global !== 'undefined') {\n GlobalVue = global.Vue;\n}\n\nif (GlobalVue) {\n GlobalVue.use(plugin);\n}\n\nexport default plugin;\nexport { __vue_component__ as ResizeObserver, install };\n//# sourceMappingURL=vue-resize.esm.js.map\n","import { render, staticRenderFns } from \"./DotsHorizontal.vue?vue&type=template&id=3174c38c&\"\nimport script from \"./DotsHorizontal.vue?vue&type=script&lang=js&\"\nexport * from \"./DotsHorizontal.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/admin/Docker/apps2/photos/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('3174c38c')) {\n api.createRecord('3174c38c', component.options)\n } else {\n api.reload('3174c38c', component.options)\n }\n module.hot.accept(\"./DotsHorizontal.vue?vue&type=template&id=3174c38c&\", function () {\n api.rerender('3174c38c', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"node_modules/vue-material-design-icons/DotsHorizontal.vue\"\nexport default component.exports","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nexport default {\n name: \"DotsHorizontalIcon\",\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./DotsHorizontal.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./DotsHorizontal.vue?vue&type=script&lang=js&\"","var render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"span\",\n _vm._b(\n {\n staticClass: \"material-design-icon dots-horizontal-icon\",\n attrs: {\n \"aria-hidden\": !_vm.title,\n \"aria-label\": _vm.title,\n role: \"img\",\n },\n on: {\n click: function ($event) {\n return _vm.$emit(\"click\", $event)\n },\n },\n },\n \"span\",\n _vm.$attrs,\n false\n ),\n [\n _c(\n \"svg\",\n {\n staticClass: \"material-design-icon__svg\",\n attrs: {\n fill: _vm.fillColor,\n width: _vm.size,\n height: _vm.size,\n viewBox: \"0 0 24 24\",\n },\n },\n [\n _c(\n \"path\",\n {\n attrs: {\n d: \"M16,12A2,2 0 0,1 18,10A2,2 0 0,1 20,12A2,2 0 0,1 18,14A2,2 0 0,1 16,12M10,12A2,2 0 0,1 12,10A2,2 0 0,1 14,12A2,2 0 0,1 12,14A2,2 0 0,1 10,12M4,12A2,2 0 0,1 6,10A2,2 0 0,1 8,12A2,2 0 0,1 6,14A2,2 0 0,1 4,12Z\",\n },\n },\n [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()]\n ),\n ]\n ),\n ]\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}","function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}","export default function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}","export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/js/photos-vendors-node_modules_nextcloud_upload_dist_index_esm_js-node_modules_nextcloud_vue_dist_Compo-9e098d.js b/js/photos-vendors-node_modules_nextcloud_upload_dist_index_esm_js-node_modules_nextcloud_vue_dist_Compo-9e098d.js deleted file mode 100644 index 45176ceb5..000000000 --- a/js/photos-vendors-node_modules_nextcloud_upload_dist_index_esm_js-node_modules_nextcloud_vue_dist_Compo-9e098d.js +++ /dev/null @@ -1,70530 +0,0 @@ -(self["webpackChunkphotos"] = self["webpackChunkphotos"] || []).push([["vendors-node_modules_nextcloud_upload_dist_index_esm_js-node_modules_nextcloud_vue_dist_Compo-9e098d"],{ - -/***/ "./node_modules/@nextcloud/files/dist/index.esm.js": -/*!*********************************************************!*\ - !*** ./node_modules/@nextcloud/files/dist/index.esm.js ***! - \*********************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "FileType": () => (/* binding */ FileType), -/* harmony export */ "addNewFileMenuEntry": () => (/* binding */ addNewFileMenuEntry), -/* harmony export */ "formatFileSize": () => (/* binding */ formatFileSize), -/* harmony export */ "getNewFileMenuEntries": () => (/* binding */ getNewFileMenuEntries), -/* harmony export */ "removeNewFileMenuEntry": () => (/* binding */ removeNewFileMenuEntry) -/* harmony export */ }); -/* harmony import */ var _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/l10n */ "./node_modules/@nextcloud/l10n/dist/index.js"); -/* harmony import */ var _nextcloud_auth__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/auth */ "./node_modules/@nextcloud/auth/dist/index.esm.js"); -/* harmony import */ var _nextcloud_logger__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @nextcloud/logger */ "./node_modules/@nextcloud/logger/dist/index.js"); - - - - -/** - * @copyright 2019 Christoph Wurst - * - * @author Christoph Wurst - * @author John Molakvoæ - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ -const humanList = ['B', 'KB', 'MB', 'GB', 'TB']; -/** - * Format a file size in a human-like format. e.g. 42GB - * - * @param size in bytes - * @param skipSmallSizes avoid rendering tiny sizes and return '< 1 KB' instead - */ -function formatFileSize(size, skipSmallSizes = false) { - if (typeof size === 'string') { - size = Number(size); - } - // Calculate Log with base 1024: size = 1024 ** order - let order = size > 0 ? Math.floor(Math.log(size) / Math.log(1024)) : 0; - // Stay in range of the byte sizes that are defined - order = Math.min(humanList.length - 1, order); - const readableFormat = humanList[order]; - let relativeSize = (size / Math.pow(1024, order)).toFixed(1); - if (skipSmallSizes === true && order === 0) { - if (relativeSize !== "0.0") { - return '< 1 KB'; - } - else { - return '0 KB'; - } - } - if (order < 2) { - relativeSize = parseFloat(relativeSize).toFixed(0); - } - else if (relativeSize.slice(-2) === '.0') { - relativeSize = relativeSize.slice(0, -2); - } - else { - relativeSize = parseFloat(relativeSize).toLocaleString((0,_nextcloud_l10n__WEBPACK_IMPORTED_MODULE_0__.getCanonicalLocale)()); - } - return relativeSize + ' ' + readableFormat; -} - -/** - * @copyright 2019 Christoph Wurst - * - * @author Christoph Wurst - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ -const getLogger = user => { - if (user === null) { - return (0,_nextcloud_logger__WEBPACK_IMPORTED_MODULE_2__.getLoggerBuilder)() - .setApp('files') - .build(); - } - return (0,_nextcloud_logger__WEBPACK_IMPORTED_MODULE_2__.getLoggerBuilder)() - .setApp('files') - .setUid(user.uid) - .build(); -}; -var logger = getLogger((0,_nextcloud_auth__WEBPACK_IMPORTED_MODULE_1__.getCurrentUser)()); - -/** - * @copyright Copyright (c) 2021 John Molakvoæ - * - * @author John Molakvoæ - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ -var FileType; -(function (FileType) { - FileType["FILE"] = "file"; - FileType["FOLDER"] = "folder"; -})(FileType || (FileType = {})); -class NewFileMenu { - _entries = []; - registerEntry(entry) { - this.validateEntry(entry); - this._entries.push(entry); - } - unregisterEntry(entry) { - const entryIndex = typeof entry === 'string' - ? this.getEntryIndex(entry) - : this.getEntryIndex(entry.id); - if (entryIndex === -1) { - logger.warn('Entry not found, nothing removed', { entry, entries: this.getEntries() }); - return; - } - this._entries.splice(entryIndex, 1); - } - getEntries() { - return this._entries; - } - getEntryIndex(id) { - return this._entries.findIndex(entry => entry.id === id); - } - validateEntry(entry) { - if (!entry.id || !entry.displayName || !entry.templateName || !(entry.iconSvgInline || entry.iconClass) || !entry.fileType || !entry.handler) { - throw new Error('Invalid entry'); - } - if (typeof entry.id !== 'string' - || typeof entry.displayName !== 'string' - || typeof entry.templateName !== 'string' - || (entry.iconClass && typeof entry.iconClass !== 'string') - || (entry.iconSvgInline && typeof entry.iconSvgInline !== 'string')) { - throw new Error('Invalid entry'); - } - if (typeof entry.fileType !== 'string' - || !(entry.fileType === FileType.FILE || entry.fileType === FileType.FOLDER)) { - throw new Error('Invalid entry fileType'); - } - if (typeof entry.handler !== 'function') { - throw new Error('Invalid entry handler'); - } - if (this.getEntryIndex(entry.id) !== -1) { - throw new Error('Duplicate entry'); - } - } -} -const getNewFileMenu = function () { - if (typeof window._nc_newfilemenu === 'undefined') { - window._nc_newfilemenu = new NewFileMenu(); - logger.debug('NewFileMenu initialized'); - } - return window._nc_newfilemenu; -}; - -/** - * @copyright 2019 Christoph Wurst - * - * @author Christoph Wurst - * @author John Molakvoæ - * - * @license AGPL-3.0-or-later - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ -/** - * Add a new menu entry to the upload manager menu - */ -const addNewFileMenuEntry = function (entry) { - const newFileMenu = getNewFileMenu(); - return newFileMenu.registerEntry(entry); -}; -/** - * Remove a previously registered entry from the upload menu - */ -const removeNewFileMenuEntry = function (entry) { - const newFileMenu = getNewFileMenu(); - return newFileMenu.unregisterEntry(entry); -}; -/** - * Get the list of registered entries from the upload menu - */ -const getNewFileMenuEntries = function () { - const newFileMenu = getNewFileMenu(); - return newFileMenu.getEntries(); -}; - - -//# sourceMappingURL=index.esm.js.map - - -/***/ }), - -/***/ "./node_modules/@nextcloud/upload/dist/index.esm.js": -/*!**********************************************************!*\ - !*** ./node_modules/@nextcloud/upload/dist/index.esm.js ***! - \**********************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "UploadPicker": () => (/* binding */ UploadPicker), -/* harmony export */ "UploadStatus": () => (/* binding */ Status$1), -/* harmony export */ "UploaderStatus": () => (/* binding */ Status), -/* harmony export */ "getUploader": () => (/* binding */ getUploader), -/* harmony export */ "upload": () => (/* binding */ upload) -/* harmony export */ }); -/* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! axios */ "./node_modules/axios/index.js"); -/* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(axios__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _nextcloud_router__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/router */ "./node_modules/@nextcloud/router/dist/index.js"); -/* harmony import */ var _nextcloud_auth__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @nextcloud/auth */ "./node_modules/@nextcloud/auth/dist/index.esm.js"); -/* harmony import */ var _nextcloud_axios__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @nextcloud/axios */ "./node_modules/@nextcloud/axios/dist/index.esm.js"); -/* harmony import */ var p_cancelable__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! p-cancelable */ "./node_modules/p-cancelable/index.js"); -/* harmony import */ var p_queue__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! p-queue */ "./node_modules/p-queue/dist/index.js"); -/* harmony import */ var crypto_browserify__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! crypto-browserify */ "./node_modules/crypto-browserify/index.js"); -/* harmony import */ var p_limit__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! p-limit */ "./node_modules/@nextcloud/upload/node_modules/p-limit/index.js"); -/* harmony import */ var _nextcloud_logger__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @nextcloud/logger */ "./node_modules/@nextcloud/logger/dist/index.js"); -/* harmony import */ var _nextcloud_files__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @nextcloud/files */ "./node_modules/@nextcloud/files/dist/index.esm.js"); -/* harmony import */ var vue_material_design_icons_DotsHorizontal__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! vue-material-design-icons/DotsHorizontal */ "./node_modules/vue-material-design-icons/DotsHorizontal.vue"); -/* harmony import */ var _skjnldsv_sanitize_svg__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @skjnldsv/sanitize-svg */ "./node_modules/@skjnldsv/sanitize-svg/dist/index.esm.js"); -/* provided dependency */ var process = __webpack_require__(/*! ./node_modules/process/browser.js */ "./node_modules/process/browser.js"); -/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js"); - - - - - - - - - - - - - -(function() { - const env = {"TRANSLATIONS":[{"locale":"af","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Afrikaans (https://www.transifex.com/nextcloud/teams/64236/af/)","Content-Type":"text/plain; charset=UTF-8","Language":"af","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Afrikaans (https://www.transifex.com/nextcloud/teams/64236/af/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: af\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"ar","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Arabic (https://www.transifex.com/nextcloud/teams/64236/ar/)","Content-Type":"text/plain; charset=UTF-8","Language":"ar","Plural-Forms":"nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Arabic (https://www.transifex.com/nextcloud/teams/64236/ar/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ar\nPlural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"ar_SA","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Arabic (Saudi Arabia) (https://www.transifex.com/nextcloud/teams/64236/ar_SA/)","Content-Type":"text/plain; charset=UTF-8","Language":"ar_SA","Plural-Forms":"nplurals=6; plural=(n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Arabic (Saudi Arabia) (https://www.transifex.com/nextcloud/teams/64236/ar_SA/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ar_SA\nPlural-Forms: nplurals=6; plural=(n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"ast","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Asturian (https://www.transifex.com/nextcloud/teams/64236/ast/)","Content-Type":"text/plain; charset=UTF-8","Language":"ast","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Asturian (https://www.transifex.com/nextcloud/teams/64236/ast/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ast\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"az","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Azerbaijani (https://www.transifex.com/nextcloud/teams/64236/az/)","Content-Type":"text/plain; charset=UTF-8","Language":"az","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Azerbaijani (https://www.transifex.com/nextcloud/teams/64236/az/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: az\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"be","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Belarusian (https://www.transifex.com/nextcloud/teams/64236/be/)","Content-Type":"text/plain; charset=UTF-8","Language":"be","Plural-Forms":"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Belarusian (https://www.transifex.com/nextcloud/teams/64236/be/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: be\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"bg_BG","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Bulgarian (Bulgaria) (https://www.transifex.com/nextcloud/teams/64236/bg_BG/)","Content-Type":"text/plain; charset=UTF-8","Language":"bg_BG","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Bulgarian (Bulgaria) (https://www.transifex.com/nextcloud/teams/64236/bg_BG/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: bg_BG\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"bn_BD","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Bengali (Bangladesh) (https://www.transifex.com/nextcloud/teams/64236/bn_BD/)","Content-Type":"text/plain; charset=UTF-8","Language":"bn_BD","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Bengali (Bangladesh) (https://www.transifex.com/nextcloud/teams/64236/bn_BD/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: bn_BD\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"br","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Breton (https://www.transifex.com/nextcloud/teams/64236/br/)","Content-Type":"text/plain; charset=UTF-8","Language":"br","Plural-Forms":"nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Breton (https://www.transifex.com/nextcloud/teams/64236/br/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: br\nPlural-Forms: nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"bs","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Bosnian (https://www.transifex.com/nextcloud/teams/64236/bs/)","Content-Type":"text/plain; charset=UTF-8","Language":"bs","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Bosnian (https://www.transifex.com/nextcloud/teams/64236/bs/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: bs\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"ca","json":{"charset":"utf-8","headers":{"Last-Translator":"Toni Hermoso Pulido , 2022","Language-Team":"Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)","Content-Type":"text/plain; charset=UTF-8","Language":"ca","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nMarc Riera , 2022\nToni Hermoso Pulido , 2022\n"},"msgstr":["Last-Translator: Toni Hermoso Pulido , 2022\nLanguage-Team: Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ca\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{"msgid":"{seconds} seconds left","msgstr":["Queden {seconds} segons"]},"{time} left":{"msgid":"{time} left","comments":{"extracted":"time has the format 00:00:00"},"msgstr":["Queden {time}"]},"a few seconds left":{"msgid":"a few seconds left","msgstr":["Queden uns segons"]},"Add":{"msgid":"Add","msgstr":["Afegeix"]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":["Cancel·la les pujades"]},"estimating time left":{"msgid":"estimating time left","msgstr":["S'està estimant el temps restant"]},"paused":{"msgid":"paused","msgstr":["En pausa"]},"Upload files":{"msgid":"Upload files","msgstr":["Puja els fitxers"]}}}}},{"locale":"cs","json":{"charset":"utf-8","headers":{"Last-Translator":"Pavel Borecki , 2022","Language-Team":"Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)","Content-Type":"text/plain; charset=UTF-8","Language":"cs","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nPavel Borecki , 2022\n"},"msgstr":["Last-Translator: Pavel Borecki , 2022\nLanguage-Team: Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: cs\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n"]},"{seconds} seconds left":{"msgid":"{seconds} seconds left","msgstr":["zbývá {seconds}"]},"{time} left":{"msgid":"{time} left","comments":{"extracted":"time has the format 00:00:00"},"msgstr":["zbývá {time}"]},"a few seconds left":{"msgid":"a few seconds left","msgstr":["zbývá několik sekund"]},"Add":{"msgid":"Add","msgstr":["Přidat"]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":["Zrušit nahrávání"]},"estimating time left":{"msgid":"estimating time left","msgstr":["odhadovaný zbývající čas"]},"paused":{"msgid":"paused","msgstr":["pozastaveno"]}}}}},{"locale":"cs_CZ","json":{"charset":"utf-8","headers":{"Last-Translator":"Pavel Borecki , 2022","Language-Team":"Czech (Czech Republic) (https://www.transifex.com/nextcloud/teams/64236/cs_CZ/)","Content-Type":"text/plain; charset=UTF-8","Language":"cs_CZ","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nPavel Borecki , 2022\n"},"msgstr":["Last-Translator: Pavel Borecki , 2022\nLanguage-Team: Czech (Czech Republic) (https://www.transifex.com/nextcloud/teams/64236/cs_CZ/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: cs_CZ\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n"]},"{seconds} seconds left":{"msgid":"{seconds} seconds left","msgstr":["zbývá {seconds}"]},"{time} left":{"msgid":"{time} left","comments":{"extracted":"time has the format 00:00:00"},"msgstr":["zbývá {time}"]},"a few seconds left":{"msgid":"a few seconds left","msgstr":["zbývá několik sekund"]},"Add":{"msgid":"Add","msgstr":["Přidat"]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":["Zrušit nahrávání"]},"estimating time left":{"msgid":"estimating time left","msgstr":["odhadovaný zbývající čas"]},"paused":{"msgid":"paused","msgstr":["pozastaveno"]},"Upload files":{"msgid":"Upload files","msgstr":["Nahrát soubory"]}}}}},{"locale":"cy_GB","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Welsh (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/cy_GB/)","Content-Type":"text/plain; charset=UTF-8","Language":"cy_GB","Plural-Forms":"nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Welsh (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/cy_GB/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: cy_GB\nPlural-Forms: nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"da","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Danish (https://www.transifex.com/nextcloud/teams/64236/da/)","Content-Type":"text/plain; charset=UTF-8","Language":"da","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Danish (https://www.transifex.com/nextcloud/teams/64236/da/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: da\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"de","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"German (https://www.transifex.com/nextcloud/teams/64236/de/)","Content-Type":"text/plain; charset=UTF-8","Language":"de","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: German (https://www.transifex.com/nextcloud/teams/64236/de/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: de\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"de_DE","json":{"charset":"utf-8","headers":{"Last-Translator":"Mario Siegmann , 2022","Language-Team":"German (Germany) (https://www.transifex.com/nextcloud/teams/64236/de_DE/)","Content-Type":"text/plain; charset=UTF-8","Language":"de_DE","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nMario Siegmann , 2022\n"},"msgstr":["Last-Translator: Mario Siegmann , 2022\nLanguage-Team: German (Germany) (https://www.transifex.com/nextcloud/teams/64236/de_DE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: de_DE\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{"msgid":"{seconds} seconds left","msgstr":["{seconds} Sekunden verbleibend"]},"{time} left":{"msgid":"{time} left","comments":{"extracted":"time has the format 00:00:00"},"msgstr":["{time} verbleibend"]},"a few seconds left":{"msgid":"a few seconds left","msgstr":["ein paar Sekunden verbleibend"]},"Add":{"msgid":"Add","msgstr":["Hinzufügen"]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":["Hochladen abbrechen"]},"estimating time left":{"msgid":"estimating time left","msgstr":["Geschätzte verbleibende Zeit"]},"paused":{"msgid":"paused","msgstr":["Pausiert"]},"Upload files":{"msgid":"Upload files","msgstr":["Dateien hochladen"]}}}}},{"locale":"el","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Greek (https://www.transifex.com/nextcloud/teams/64236/el/)","Content-Type":"text/plain; charset=UTF-8","Language":"el","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Greek (https://www.transifex.com/nextcloud/teams/64236/el/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: el\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"el_GR","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Greek (Greece) (https://www.transifex.com/nextcloud/teams/64236/el_GR/)","Content-Type":"text/plain; charset=UTF-8","Language":"el_GR","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Greek (Greece) (https://www.transifex.com/nextcloud/teams/64236/el_GR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: el_GR\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"en_GB","json":{"charset":"utf-8","headers":{"Last-Translator":"Andi Chandler , 2022","Language-Team":"English (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/en_GB/)","Content-Type":"text/plain; charset=UTF-8","Language":"en_GB","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nAndi Chandler , 2022\n"},"msgstr":["Last-Translator: Andi Chandler , 2022\nLanguage-Team: English (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/en_GB/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: en_GB\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{"msgid":"{seconds} seconds left","msgstr":["{seconds} seconds left"]},"{time} left":{"msgid":"{time} left","comments":{"extracted":"time has the format 00:00:00"},"msgstr":["{time} left"]},"a few seconds left":{"msgid":"a few seconds left","msgstr":["a few seconds left"]},"Add":{"msgid":"Add","msgstr":["Add"]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":["Cancel uploads"]},"estimating time left":{"msgid":"estimating time left","msgstr":["estimating time left"]},"paused":{"msgid":"paused","msgstr":["paused"]},"Upload files":{"msgid":"Upload files","msgstr":["Upload files"]}}}}},{"locale":"eo","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Esperanto (https://www.transifex.com/nextcloud/teams/64236/eo/)","Content-Type":"text/plain; charset=UTF-8","Language":"eo","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Esperanto (https://www.transifex.com/nextcloud/teams/64236/eo/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: eo\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"es","json":{"charset":"utf-8","headers":{"Last-Translator":"Next Cloud , 2022","Language-Team":"Spanish (https://www.transifex.com/nextcloud/teams/64236/es/)","Content-Type":"text/plain; charset=UTF-8","Language":"es","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nFlorin Baras, 2022\nHecbert Gonzalez, 2022\nNext Cloud , 2022\n"},"msgstr":["Last-Translator: Next Cloud , 2022\nLanguage-Team: Spanish (https://www.transifex.com/nextcloud/teams/64236/es/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{seconds} seconds left":{"msgid":"{seconds} seconds left","msgstr":["{seconds} segundos restantes"]},"{time} left":{"msgid":"{time} left","comments":{"extracted":"time has the format 00:00:00"},"msgstr":["{time} restante"]},"a few seconds left":{"msgid":"a few seconds left","msgstr":["quedan unos segundos"]},"Add":{"msgid":"Add","msgstr":["Añadir"]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":["Cancelar subidas"]},"estimating time left":{"msgid":"estimating time left","msgstr":["estimación del tiempo restante"]},"paused":{"msgid":"paused","msgstr":["pausado"]},"Upload files":{"msgid":"Upload files","msgstr":["Subir archivos"]}}}}},{"locale":"es_419","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Latin America) (https://www.transifex.com/nextcloud/teams/64236/es_419/)","Content-Type":"text/plain; charset=UTF-8","Language":"es_419","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Latin America) (https://www.transifex.com/nextcloud/teams/64236/es_419/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_419\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"es_AR","json":{"charset":"utf-8","headers":{"Last-Translator":"Matias Iglesias, 2022","Language-Team":"Spanish (Argentina) (https://www.transifex.com/nextcloud/teams/64236/es_AR/)","Content-Type":"text/plain; charset=UTF-8","Language":"es_AR","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nMatias Iglesias, 2022\n"},"msgstr":["Last-Translator: Matias Iglesias, 2022\nLanguage-Team: Spanish (Argentina) (https://www.transifex.com/nextcloud/teams/64236/es_AR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_AR\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{seconds} seconds left":{"msgid":"{seconds} seconds left","msgstr":["{seconds} segundos restantes"]},"{time} left":{"msgid":"{time} left","comments":{"extracted":"time has the format 00:00:00"},"msgstr":["{time} restante"]},"a few seconds left":{"msgid":"a few seconds left","msgstr":["quedan unos segundos"]},"Add":{"msgid":"Add","msgstr":["Añadir"]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":["Cancelar subidas"]},"estimating time left":{"msgid":"estimating time left","msgstr":["estimando tiempo restante"]},"paused":{"msgid":"paused","msgstr":["pausado"]},"Upload files":{"msgid":"Upload files","msgstr":["Subir archivos"]}}}}},{"locale":"es_CL","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Chile) (https://www.transifex.com/nextcloud/teams/64236/es_CL/)","Content-Type":"text/plain; charset=UTF-8","Language":"es_CL","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Chile) (https://www.transifex.com/nextcloud/teams/64236/es_CL/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_CL\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"es_CO","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Colombia) (https://www.transifex.com/nextcloud/teams/64236/es_CO/)","Content-Type":"text/plain; charset=UTF-8","Language":"es_CO","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Colombia) (https://www.transifex.com/nextcloud/teams/64236/es_CO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_CO\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"es_CR","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Costa Rica) (https://www.transifex.com/nextcloud/teams/64236/es_CR/)","Content-Type":"text/plain; charset=UTF-8","Language":"es_CR","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Costa Rica) (https://www.transifex.com/nextcloud/teams/64236/es_CR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_CR\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"es_DO","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Dominican Republic) (https://www.transifex.com/nextcloud/teams/64236/es_DO/)","Content-Type":"text/plain; charset=UTF-8","Language":"es_DO","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Dominican Republic) (https://www.transifex.com/nextcloud/teams/64236/es_DO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_DO\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"es_EC","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Ecuador) (https://www.transifex.com/nextcloud/teams/64236/es_EC/)","Content-Type":"text/plain; charset=UTF-8","Language":"es_EC","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Ecuador) (https://www.transifex.com/nextcloud/teams/64236/es_EC/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_EC\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"es_GT","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Guatemala) (https://www.transifex.com/nextcloud/teams/64236/es_GT/)","Content-Type":"text/plain; charset=UTF-8","Language":"es_GT","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Guatemala) (https://www.transifex.com/nextcloud/teams/64236/es_GT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_GT\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"es_HN","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Honduras) (https://www.transifex.com/nextcloud/teams/64236/es_HN/)","Content-Type":"text/plain; charset=UTF-8","Language":"es_HN","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Honduras) (https://www.transifex.com/nextcloud/teams/64236/es_HN/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_HN\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"es_MX","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Mexico) (https://www.transifex.com/nextcloud/teams/64236/es_MX/)","Content-Type":"text/plain; charset=UTF-8","Language":"es_MX","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Mexico) (https://www.transifex.com/nextcloud/teams/64236/es_MX/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_MX\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"es_NI","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Nicaragua) (https://www.transifex.com/nextcloud/teams/64236/es_NI/)","Content-Type":"text/plain; charset=UTF-8","Language":"es_NI","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Nicaragua) (https://www.transifex.com/nextcloud/teams/64236/es_NI/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_NI\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"es_PA","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Panama) (https://www.transifex.com/nextcloud/teams/64236/es_PA/)","Content-Type":"text/plain; charset=UTF-8","Language":"es_PA","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Panama) (https://www.transifex.com/nextcloud/teams/64236/es_PA/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PA\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"es_PE","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Peru) (https://www.transifex.com/nextcloud/teams/64236/es_PE/)","Content-Type":"text/plain; charset=UTF-8","Language":"es_PE","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Peru) (https://www.transifex.com/nextcloud/teams/64236/es_PE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PE\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"es_PR","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Puerto Rico) (https://www.transifex.com/nextcloud/teams/64236/es_PR/)","Content-Type":"text/plain; charset=UTF-8","Language":"es_PR","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Puerto Rico) (https://www.transifex.com/nextcloud/teams/64236/es_PR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PR\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"es_PY","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Paraguay) (https://www.transifex.com/nextcloud/teams/64236/es_PY/)","Content-Type":"text/plain; charset=UTF-8","Language":"es_PY","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Paraguay) (https://www.transifex.com/nextcloud/teams/64236/es_PY/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PY\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"es_SV","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (El Salvador) (https://www.transifex.com/nextcloud/teams/64236/es_SV/)","Content-Type":"text/plain; charset=UTF-8","Language":"es_SV","Plural-Forms":"nplurals=2; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (El Salvador) (https://www.transifex.com/nextcloud/teams/64236/es_SV/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_SV\nPlural-Forms: nplurals=2; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"es_UY","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Uruguay) (https://www.transifex.com/nextcloud/teams/64236/es_UY/)","Content-Type":"text/plain; charset=UTF-8","Language":"es_UY","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Uruguay) (https://www.transifex.com/nextcloud/teams/64236/es_UY/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_UY\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"et_EE","json":{"charset":"utf-8","headers":{"Last-Translator":"Mait R, 2022","Language-Team":"Estonian (Estonia) (https://www.transifex.com/nextcloud/teams/64236/et_EE/)","Content-Type":"text/plain; charset=UTF-8","Language":"et_EE","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nMait R, 2022\n"},"msgstr":["Last-Translator: Mait R, 2022\nLanguage-Team: Estonian (Estonia) (https://www.transifex.com/nextcloud/teams/64236/et_EE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: et_EE\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{"msgid":"{seconds} seconds left","msgstr":["{seconds} jäänud sekundid"]},"{time} left":{"msgid":"{time} left","comments":{"extracted":"time has the format 00:00:00"},"msgstr":["{time} aega jäänud"]},"a few seconds left":{"msgid":"a few seconds left","msgstr":["jäänud mõni sekund"]},"Add":{"msgid":"Add","msgstr":["Lisa"]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":["Tühista üleslaadimine"]},"estimating time left":{"msgid":"estimating time left","msgstr":["hinnanguline järelejäänud aeg"]},"paused":{"msgid":"paused","msgstr":["pausil"]}}}}},{"locale":"eu","json":{"charset":"utf-8","headers":{"Last-Translator":"Unai Tolosa Pontesta , 2022","Language-Team":"Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)","Content-Type":"text/plain; charset=UTF-8","Language":"eu","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nUnai Tolosa Pontesta , 2022\n"},"msgstr":["Last-Translator: Unai Tolosa Pontesta , 2022\nLanguage-Team: Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: eu\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{"msgid":"{seconds} seconds left","msgstr":["{seconds} segundo geratzen dira"]},"{time} left":{"msgid":"{time} left","comments":{"extracted":"time has the format 00:00:00"},"msgstr":["{time} geratzen da"]},"a few seconds left":{"msgid":"a few seconds left","msgstr":["segundo batzuk geratzen dira"]},"Add":{"msgid":"Add","msgstr":["Gehitu"]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":["Ezeztatu igoerak"]},"estimating time left":{"msgid":"estimating time left","msgstr":["kalkulatutako geratzen den denbora"]},"paused":{"msgid":"paused","msgstr":["geldituta"]},"Upload files":{"msgid":"Upload files","msgstr":["Igo fitxategiak"]}}}}},{"locale":"fa","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Persian (https://www.transifex.com/nextcloud/teams/64236/fa/)","Content-Type":"text/plain; charset=UTF-8","Language":"fa","Plural-Forms":"nplurals=2; plural=(n > 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Persian (https://www.transifex.com/nextcloud/teams/64236/fa/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fa\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"fi_FI","json":{"charset":"utf-8","headers":{"Last-Translator":"Jiri Grönroos , 2022","Language-Team":"Finnish (Finland) (https://www.transifex.com/nextcloud/teams/64236/fi_FI/)","Content-Type":"text/plain; charset=UTF-8","Language":"fi_FI","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nJiri Grönroos , 2022\n"},"msgstr":["Last-Translator: Jiri Grönroos , 2022\nLanguage-Team: Finnish (Finland) (https://www.transifex.com/nextcloud/teams/64236/fi_FI/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fi_FI\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{"msgid":"{seconds} seconds left","msgstr":["{seconds} sekuntia jäljellä"]},"{time} left":{"msgid":"{time} left","comments":{"extracted":"time has the format 00:00:00"},"msgstr":["{time} jäljellä"]},"a few seconds left":{"msgid":"a few seconds left","msgstr":["muutama sekunti jäljellä"]},"Add":{"msgid":"Add","msgstr":["Lisää"]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":["Peruuta lähetykset"]},"estimating time left":{"msgid":"estimating time left","msgstr":["arvioidaan jäljellä olevaa aikaa"]},"paused":{"msgid":"paused","msgstr":["keskeytetty"]},"Upload files":{"msgid":"Upload files","msgstr":["Lähetä tiedostoja"]}}}}},{"locale":"fo","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Faroese (https://www.transifex.com/nextcloud/teams/64236/fo/)","Content-Type":"text/plain; charset=UTF-8","Language":"fo","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Faroese (https://www.transifex.com/nextcloud/teams/64236/fo/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fo\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"fr","json":{"charset":"utf-8","headers":{"Last-Translator":"John Molakvoæ , 2022","Language-Team":"French (https://www.transifex.com/nextcloud/teams/64236/fr/)","Content-Type":"text/plain; charset=UTF-8","Language":"fr","Plural-Forms":"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nJohn Molakvoæ , 2022\n"},"msgstr":["Last-Translator: John Molakvoæ , 2022\nLanguage-Team: French (https://www.transifex.com/nextcloud/teams/64236/fr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fr\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{seconds} seconds left":{"msgid":"{seconds} seconds left","msgstr":["{seconds} secondes restantes"]},"{time} left":{"msgid":"{time} left","comments":{"extracted":"time has the format 00:00:00"},"msgstr":["{time} restant"]},"a few seconds left":{"msgid":"a few seconds left","msgstr":["quelques secondes restantes"]},"Add":{"msgid":"Add","msgstr":["Ajouter"]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":["Annuler les envois"]},"estimating time left":{"msgid":"estimating time left","msgstr":["estimation du temps restant"]},"paused":{"msgid":"paused","msgstr":["en pause"]}}}}},{"locale":"gd","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Gaelic, Scottish (https://www.transifex.com/nextcloud/teams/64236/gd/)","Content-Type":"text/plain; charset=UTF-8","Language":"gd","Plural-Forms":"nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Gaelic, Scottish (https://www.transifex.com/nextcloud/teams/64236/gd/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: gd\nPlural-Forms: nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"gl","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Galician (https://www.transifex.com/nextcloud/teams/64236/gl/)","Content-Type":"text/plain; charset=UTF-8","Language":"gl","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Galician (https://www.transifex.com/nextcloud/teams/64236/gl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: gl\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"he","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)","Content-Type":"text/plain; charset=UTF-8","Language":"he","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: he\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"hi_IN","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Hindi (India) (https://www.transifex.com/nextcloud/teams/64236/hi_IN/)","Content-Type":"text/plain; charset=UTF-8","Language":"hi_IN","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Hindi (India) (https://www.transifex.com/nextcloud/teams/64236/hi_IN/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hi_IN\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"hr","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Croatian (https://www.transifex.com/nextcloud/teams/64236/hr/)","Content-Type":"text/plain; charset=UTF-8","Language":"hr","Plural-Forms":"nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Croatian (https://www.transifex.com/nextcloud/teams/64236/hr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hr\nPlural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"hsb","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Upper Sorbian (https://www.transifex.com/nextcloud/teams/64236/hsb/)","Content-Type":"text/plain; charset=UTF-8","Language":"hsb","Plural-Forms":"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Upper Sorbian (https://www.transifex.com/nextcloud/teams/64236/hsb/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hsb\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"hu","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Hungarian (https://www.transifex.com/nextcloud/teams/64236/hu/)","Content-Type":"text/plain; charset=UTF-8","Language":"hu","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Hungarian (https://www.transifex.com/nextcloud/teams/64236/hu/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hu\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"hu_HU","json":{"charset":"utf-8","headers":{"Last-Translator":"Balázs Meskó , 2022","Language-Team":"Hungarian (Hungary) (https://www.transifex.com/nextcloud/teams/64236/hu_HU/)","Content-Type":"text/plain; charset=UTF-8","Language":"hu_HU","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nBalázs Meskó , 2022\n"},"msgstr":["Last-Translator: Balázs Meskó , 2022\nLanguage-Team: Hungarian (Hungary) (https://www.transifex.com/nextcloud/teams/64236/hu_HU/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hu_HU\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{"msgid":"{seconds} seconds left","msgstr":["{} másodperc van hátra"]},"{time} left":{"msgid":"{time} left","comments":{"extracted":"time has the format 00:00:00"},"msgstr":["{time} van hátra"]},"a few seconds left":{"msgid":"a few seconds left","msgstr":["pár másodperc van hátra"]},"Add":{"msgid":"Add","msgstr":["Hozzáadás"]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":["Feltöltések megszakítása"]},"estimating time left":{"msgid":"estimating time left","msgstr":["hátralévő idő becslése"]},"paused":{"msgid":"paused","msgstr":["szüneteltetve"]}}}}},{"locale":"hy","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Armenian (https://www.transifex.com/nextcloud/teams/64236/hy/)","Content-Type":"text/plain; charset=UTF-8","Language":"hy","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Armenian (https://www.transifex.com/nextcloud/teams/64236/hy/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hy\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"ia","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Interlingua (https://www.transifex.com/nextcloud/teams/64236/ia/)","Content-Type":"text/plain; charset=UTF-8","Language":"ia","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Interlingua (https://www.transifex.com/nextcloud/teams/64236/ia/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ia\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"id","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Indonesian (https://www.transifex.com/nextcloud/teams/64236/id/)","Content-Type":"text/plain; charset=UTF-8","Language":"id","Plural-Forms":"nplurals=1; plural=0;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Indonesian (https://www.transifex.com/nextcloud/teams/64236/id/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: id\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"ig","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Igbo (https://www.transifex.com/nextcloud/teams/64236/ig/)","Content-Type":"text/plain; charset=UTF-8","Language":"ig","Plural-Forms":"nplurals=1; plural=0;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Igbo (https://www.transifex.com/nextcloud/teams/64236/ig/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ig\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"is","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Icelandic (https://www.transifex.com/nextcloud/teams/64236/is/)","Content-Type":"text/plain; charset=UTF-8","Language":"is","Plural-Forms":"nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Icelandic (https://www.transifex.com/nextcloud/teams/64236/is/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: is\nPlural-Forms: nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"it","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Italian (https://www.transifex.com/nextcloud/teams/64236/it/)","Content-Type":"text/plain; charset=UTF-8","Language":"it","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Italian (https://www.transifex.com/nextcloud/teams/64236/it/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: it\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"it_IT","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Italian (Italy) (https://www.transifex.com/nextcloud/teams/64236/it_IT/)","Content-Type":"text/plain; charset=UTF-8","Language":"it_IT","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Italian (Italy) (https://www.transifex.com/nextcloud/teams/64236/it_IT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: it_IT\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"ja_JP","json":{"charset":"utf-8","headers":{"Last-Translator":"かたかめ, 2022","Language-Team":"Japanese (Japan) (https://www.transifex.com/nextcloud/teams/64236/ja_JP/)","Content-Type":"text/plain; charset=UTF-8","Language":"ja_JP","Plural-Forms":"nplurals=1; plural=0;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nT.S, 2022\nかたかめ, 2022\n"},"msgstr":["Last-Translator: かたかめ, 2022\nLanguage-Team: Japanese (Japan) (https://www.transifex.com/nextcloud/teams/64236/ja_JP/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ja_JP\nPlural-Forms: nplurals=1; plural=0;\n"]},"{seconds} seconds left":{"msgid":"{seconds} seconds left","msgstr":["残り {seconds} 秒"]},"{time} left":{"msgid":"{time} left","comments":{"extracted":"time has the format 00:00:00"},"msgstr":["残り {time}"]},"a few seconds left":{"msgid":"a few seconds left","msgstr":["残り数秒"]},"Add":{"msgid":"Add","msgstr":["追加"]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":["アップロードをキャンセル"]},"estimating time left":{"msgid":"estimating time left","msgstr":["概算残り時間"]},"paused":{"msgid":"paused","msgstr":["一時停止中"]},"Upload files":{"msgid":"Upload files","msgstr":["ファイルをアップデート"]}}}}},{"locale":"ka","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Georgian (https://www.transifex.com/nextcloud/teams/64236/ka/)","Content-Type":"text/plain; charset=UTF-8","Language":"ka","Plural-Forms":"nplurals=2; plural=(n!=1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Georgian (https://www.transifex.com/nextcloud/teams/64236/ka/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ka\nPlural-Forms: nplurals=2; plural=(n!=1);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"ka_GE","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Georgian (Georgia) (https://www.transifex.com/nextcloud/teams/64236/ka_GE/)","Content-Type":"text/plain; charset=UTF-8","Language":"ka_GE","Plural-Forms":"nplurals=2; plural=(n!=1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Georgian (Georgia) (https://www.transifex.com/nextcloud/teams/64236/ka_GE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ka_GE\nPlural-Forms: nplurals=2; plural=(n!=1);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"kab","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Kabyle (https://www.transifex.com/nextcloud/teams/64236/kab/)","Content-Type":"text/plain; charset=UTF-8","Language":"kab","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Kabyle (https://www.transifex.com/nextcloud/teams/64236/kab/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: kab\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"kk","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Kazakh (https://www.transifex.com/nextcloud/teams/64236/kk/)","Content-Type":"text/plain; charset=UTF-8","Language":"kk","Plural-Forms":"nplurals=2; plural=(n!=1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Kazakh (https://www.transifex.com/nextcloud/teams/64236/kk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: kk\nPlural-Forms: nplurals=2; plural=(n!=1);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"km","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Khmer (https://www.transifex.com/nextcloud/teams/64236/km/)","Content-Type":"text/plain; charset=UTF-8","Language":"km","Plural-Forms":"nplurals=1; plural=0;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Khmer (https://www.transifex.com/nextcloud/teams/64236/km/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: km\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"kn","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Kannada (https://www.transifex.com/nextcloud/teams/64236/kn/)","Content-Type":"text/plain; charset=UTF-8","Language":"kn","Plural-Forms":"nplurals=2; plural=(n > 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Kannada (https://www.transifex.com/nextcloud/teams/64236/kn/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: kn\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"ko","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Korean (https://www.transifex.com/nextcloud/teams/64236/ko/)","Content-Type":"text/plain; charset=UTF-8","Language":"ko","Plural-Forms":"nplurals=1; plural=0;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Korean (https://www.transifex.com/nextcloud/teams/64236/ko/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ko\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"la","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Latin (https://www.transifex.com/nextcloud/teams/64236/la/)","Content-Type":"text/plain; charset=UTF-8","Language":"la","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Latin (https://www.transifex.com/nextcloud/teams/64236/la/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: la\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"lb","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Luxembourgish (https://www.transifex.com/nextcloud/teams/64236/lb/)","Content-Type":"text/plain; charset=UTF-8","Language":"lb","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Luxembourgish (https://www.transifex.com/nextcloud/teams/64236/lb/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lb\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"lo","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Lao (https://www.transifex.com/nextcloud/teams/64236/lo/)","Content-Type":"text/plain; charset=UTF-8","Language":"lo","Plural-Forms":"nplurals=1; plural=0;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Lao (https://www.transifex.com/nextcloud/teams/64236/lo/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lo\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"lt_LT","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)","Content-Type":"text/plain; charset=UTF-8","Language":"lt_LT","Plural-Forms":"nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lt_LT\nPlural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"lv","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)","Content-Type":"text/plain; charset=UTF-8","Language":"lv","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lv\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"mk","json":{"charset":"utf-8","headers":{"Last-Translator":"Сашко Тодоров , 2022","Language-Team":"Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)","Content-Type":"text/plain; charset=UTF-8","Language":"mk","Plural-Forms":"nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nСашко Тодоров , 2022\n"},"msgstr":["Last-Translator: Сашко Тодоров , 2022\nLanguage-Team: Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: mk\nPlural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\n"]},"{seconds} seconds left":{"msgid":"{seconds} seconds left","msgstr":["преостануваат {seconds} секунди"]},"{time} left":{"msgid":"{time} left","comments":{"extracted":"time has the format 00:00:00"},"msgstr":["преостанува {time}"]},"a few seconds left":{"msgid":"a few seconds left","msgstr":["уште неколку секунди"]},"Add":{"msgid":"Add","msgstr":["Додади"]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":["Прекини прикачување"]},"estimating time left":{"msgid":"estimating time left","msgstr":["приближно преостанато време"]},"paused":{"msgid":"paused","msgstr":["паузирано"]},"Upload files":{"msgid":"Upload files","msgstr":["Прикачување датотеки"]}}}}},{"locale":"mn","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Mongolian (https://www.transifex.com/nextcloud/teams/64236/mn/)","Content-Type":"text/plain; charset=UTF-8","Language":"mn","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Mongolian (https://www.transifex.com/nextcloud/teams/64236/mn/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: mn\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"mr","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Marathi (https://www.transifex.com/nextcloud/teams/64236/mr/)","Content-Type":"text/plain; charset=UTF-8","Language":"mr","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Marathi (https://www.transifex.com/nextcloud/teams/64236/mr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: mr\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"ms_MY","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Malay (Malaysia) (https://www.transifex.com/nextcloud/teams/64236/ms_MY/)","Content-Type":"text/plain; charset=UTF-8","Language":"ms_MY","Plural-Forms":"nplurals=1; plural=0;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Malay (Malaysia) (https://www.transifex.com/nextcloud/teams/64236/ms_MY/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ms_MY\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"my","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Burmese (https://www.transifex.com/nextcloud/teams/64236/my/)","Content-Type":"text/plain; charset=UTF-8","Language":"my","Plural-Forms":"nplurals=1; plural=0;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Burmese (https://www.transifex.com/nextcloud/teams/64236/my/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: my\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"nb_NO","json":{"charset":"utf-8","headers":{"Last-Translator":"Ari Selseng , 2022","Language-Team":"Norwegian Bokmål (Norway) (https://www.transifex.com/nextcloud/teams/64236/nb_NO/)","Content-Type":"text/plain; charset=UTF-8","Language":"nb_NO","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nAri Selseng , 2022\n"},"msgstr":["Last-Translator: Ari Selseng , 2022\nLanguage-Team: Norwegian Bokmål (Norway) (https://www.transifex.com/nextcloud/teams/64236/nb_NO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nb_NO\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{"msgid":"{seconds} seconds left","msgstr":["{seconds} sekunder igjen"]},"{time} left":{"msgid":"{time} left","comments":{"extracted":"time has the format 00:00:00"},"msgstr":["{time} igjen"]},"a few seconds left":{"msgid":"a few seconds left","msgstr":["noen få sekunder igjen"]},"Add":{"msgid":"Add","msgstr":["Legg til"]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":["Avbryt opplastninger"]},"estimating time left":{"msgid":"estimating time left","msgstr":["Estimerer tid igjen"]},"paused":{"msgid":"paused","msgstr":["pauset"]},"Upload files":{"msgid":"Upload files","msgstr":["Last opp filer"]}}}}},{"locale":"ne","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Nepali (https://www.transifex.com/nextcloud/teams/64236/ne/)","Content-Type":"text/plain; charset=UTF-8","Language":"ne","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Nepali (https://www.transifex.com/nextcloud/teams/64236/ne/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ne\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"nl","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Dutch (https://www.transifex.com/nextcloud/teams/64236/nl/)","Content-Type":"text/plain; charset=UTF-8","Language":"nl","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Dutch (https://www.transifex.com/nextcloud/teams/64236/nl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nl\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"nn","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Norwegian Nynorsk (https://www.transifex.com/nextcloud/teams/64236/nn/)","Content-Type":"text/plain; charset=UTF-8","Language":"nn","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Norwegian Nynorsk (https://www.transifex.com/nextcloud/teams/64236/nn/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nn\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"nn_NO","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Norwegian Nynorsk (Norway) (https://www.transifex.com/nextcloud/teams/64236/nn_NO/)","Content-Type":"text/plain; charset=UTF-8","Language":"nn_NO","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Norwegian Nynorsk (Norway) (https://www.transifex.com/nextcloud/teams/64236/nn_NO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nn_NO\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"oc","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)","Content-Type":"text/plain; charset=UTF-8","Language":"oc","Plural-Forms":"nplurals=2; plural=(n > 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: oc\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"pl","json":{"charset":"utf-8","headers":{"Last-Translator":"Valdnet, 2022","Language-Team":"Polish (https://www.transifex.com/nextcloud/teams/64236/pl/)","Content-Type":"text/plain; charset=UTF-8","Language":"pl","Plural-Forms":"nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nValdnet, 2022\n"},"msgstr":["Last-Translator: Valdnet, 2022\nLanguage-Team: Polish (https://www.transifex.com/nextcloud/teams/64236/pl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pl\nPlural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n"]},"{seconds} seconds left":{"msgid":"{seconds} seconds left","msgstr":["Pozostało {seconds} sekund"]},"{time} left":{"msgid":"{time} left","comments":{"extracted":"time has the format 00:00:00"},"msgstr":["Pozostało {time}"]},"a few seconds left":{"msgid":"a few seconds left","msgstr":["Pozostało kilka sekund"]},"Add":{"msgid":"Add","msgstr":["Dodaj"]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":["Anuluj wysyłanie"]},"estimating time left":{"msgid":"estimating time left","msgstr":["Szacowanie pozostałego czasu"]},"paused":{"msgid":"paused","msgstr":["Wstrzymane"]},"Upload files":{"msgid":"Upload files","msgstr":["Wyślij pliki"]}}}}},{"locale":"ps","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Pashto (https://www.transifex.com/nextcloud/teams/64236/ps/)","Content-Type":"text/plain; charset=UTF-8","Language":"ps","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Pashto (https://www.transifex.com/nextcloud/teams/64236/ps/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ps\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"pt_BR","json":{"charset":"utf-8","headers":{"Last-Translator":"Flávio Veras , 2022","Language-Team":"Portuguese (Brazil) (https://www.transifex.com/nextcloud/teams/64236/pt_BR/)","Content-Type":"text/plain; charset=UTF-8","Language":"pt_BR","Plural-Forms":"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nLeonardo Colman , 2022\nJeann Cavalcante , 2022\nFlávio Veras , 2022\n"},"msgstr":["Last-Translator: Flávio Veras , 2022\nLanguage-Team: Portuguese (Brazil) (https://www.transifex.com/nextcloud/teams/64236/pt_BR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pt_BR\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{seconds} seconds left":{"msgid":"{seconds} seconds left","msgstr":["{seconds} segundos restantes"]},"{time} left":{"msgid":"{time} left","comments":{"extracted":"time has the format 00:00:00"},"msgstr":["{time} restante"]},"a few seconds left":{"msgid":"a few seconds left","msgstr":["alguns segundos restantes"]},"Add":{"msgid":"Add","msgstr":["Adicionar"]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":["Cancelar uploads"]},"estimating time left":{"msgid":"estimating time left","msgstr":["estimando tempo restante"]},"paused":{"msgid":"paused","msgstr":["pausado"]},"Upload files":{"msgid":"Upload files","msgstr":["Enviar arquivos"]}}}}},{"locale":"pt_PT","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)","Content-Type":"text/plain; charset=UTF-8","Language":"pt_PT","Plural-Forms":"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pt_PT\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"ro","json":{"charset":"utf-8","headers":{"Last-Translator":"Mădălin Vasiliu , 2022","Language-Team":"Romanian (https://www.transifex.com/nextcloud/teams/64236/ro/)","Content-Type":"text/plain; charset=UTF-8","Language":"ro","Plural-Forms":"nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nMădălin Vasiliu , 2022\n"},"msgstr":["Last-Translator: Mădălin Vasiliu , 2022\nLanguage-Team: Romanian (https://www.transifex.com/nextcloud/teams/64236/ro/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ro\nPlural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\n"]},"{seconds} seconds left":{"msgid":"{seconds} seconds left","msgstr":["{seconds} secunde rămase"]},"{time} left":{"msgid":"{time} left","comments":{"extracted":"time has the format 00:00:00"},"msgstr":["{time} rămas"]},"a few seconds left":{"msgid":"a few seconds left","msgstr":["câteva secunde rămase"]},"Add":{"msgid":"Add","msgstr":["Adaugă"]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":["Anulați încărcările"]},"estimating time left":{"msgid":"estimating time left","msgstr":["estimarea timpului rămas"]},"paused":{"msgid":"paused","msgstr":["pus pe pauză"]},"Upload files":{"msgid":"Upload files","msgstr":["Încarcă fișiere"]}}}}},{"locale":"ru","json":{"charset":"utf-8","headers":{"Last-Translator":"Тёма Лапин, 2022","Language-Team":"Russian (https://www.transifex.com/nextcloud/teams/64236/ru/)","Content-Type":"text/plain; charset=UTF-8","Language":"ru","Plural-Forms":"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nАлексей Хрусталёв, 2022\nТёма Лапин, 2022\n"},"msgstr":["Last-Translator: Тёма Лапин, 2022\nLanguage-Team: Russian (https://www.transifex.com/nextcloud/teams/64236/ru/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ru\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"]},"{seconds} seconds left":{"msgid":"{seconds} seconds left","msgstr":["осталось {seconds} секунд"]},"{time} left":{"msgid":"{time} left","comments":{"extracted":"time has the format 00:00:00"},"msgstr":["осталось {time}"]},"a few seconds left":{"msgid":"a few seconds left","msgstr":["осталось несколько секунд"]},"Add":{"msgid":"Add","msgstr":["Добавить"]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":["Отменить загрузки"]},"estimating time left":{"msgid":"estimating time left","msgstr":["Оценка оставшегося времени"]},"paused":{"msgid":"paused","msgstr":["Приостановлено"]},"Upload files":{"msgid":"Upload files","msgstr":["Загрузка файлов"]}}}}},{"locale":"ru_RU","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Russian (Russia) (https://www.transifex.com/nextcloud/teams/64236/ru_RU/)","Content-Type":"text/plain; charset=UTF-8","Language":"ru_RU","Plural-Forms":"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Russian (Russia) (https://www.transifex.com/nextcloud/teams/64236/ru_RU/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ru_RU\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"sc","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Sardinian (https://www.transifex.com/nextcloud/teams/64236/sc/)","Content-Type":"text/plain; charset=UTF-8","Language":"sc","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Sardinian (https://www.transifex.com/nextcloud/teams/64236/sc/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sc\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"si","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Sinhala (https://www.transifex.com/nextcloud/teams/64236/si/)","Content-Type":"text/plain; charset=UTF-8","Language":"si","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Sinhala (https://www.transifex.com/nextcloud/teams/64236/si/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: si\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"si_LK","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Sinhala (Sri Lanka) (https://www.transifex.com/nextcloud/teams/64236/si_LK/)","Content-Type":"text/plain; charset=UTF-8","Language":"si_LK","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Sinhala (Sri Lanka) (https://www.transifex.com/nextcloud/teams/64236/si_LK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: si_LK\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"sk_SK","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Slovak (Slovakia) (https://www.transifex.com/nextcloud/teams/64236/sk_SK/)","Content-Type":"text/plain; charset=UTF-8","Language":"sk_SK","Plural-Forms":"nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Slovak (Slovakia) (https://www.transifex.com/nextcloud/teams/64236/sk_SK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sk_SK\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"sl","json":{"charset":"utf-8","headers":{"Last-Translator":"Matej Urbančič <>, 2022","Language-Team":"Slovenian (https://www.transifex.com/nextcloud/teams/64236/sl/)","Content-Type":"text/plain; charset=UTF-8","Language":"sl","Plural-Forms":"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nMatej Urbančič <>, 2022\n"},"msgstr":["Last-Translator: Matej Urbančič <>, 2022\nLanguage-Team: Slovenian (https://www.transifex.com/nextcloud/teams/64236/sl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sl\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"]},"{seconds} seconds left":{"msgid":"{seconds} seconds left","msgstr":["še {seconds} sekund"]},"{time} left":{"msgid":"{time} left","comments":{"extracted":"time has the format 00:00:00"},"msgstr":["še {time}"]},"a few seconds left":{"msgid":"a few seconds left","msgstr":["še nekaj sekund"]},"Add":{"msgid":"Add","msgstr":["Dodaj"]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":["Prekliči pošiljanje"]},"estimating time left":{"msgid":"estimating time left","msgstr":["ocenjen čas do konca"]},"paused":{"msgid":"paused","msgstr":["v premoru"]},"Upload files":{"msgid":"Upload files","msgstr":["Pošlji datoteke"]}}}}},{"locale":"sl_SI","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Slovenian (Slovenia) (https://www.transifex.com/nextcloud/teams/64236/sl_SI/)","Content-Type":"text/plain; charset=UTF-8","Language":"sl_SI","Plural-Forms":"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Slovenian (Slovenia) (https://www.transifex.com/nextcloud/teams/64236/sl_SI/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sl_SI\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"sq","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)","Content-Type":"text/plain; charset=UTF-8","Language":"sq","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sq\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"sr","json":{"charset":"utf-8","headers":{"Last-Translator":"aleksandar jevtic, 2022","Language-Team":"Serbian (https://www.transifex.com/nextcloud/teams/64236/sr/)","Content-Type":"text/plain; charset=UTF-8","Language":"sr","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\naleksandar jevtic, 2022\n"},"msgstr":["Last-Translator: aleksandar jevtic, 2022\nLanguage-Team: Serbian (https://www.transifex.com/nextcloud/teams/64236/sr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sr\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"]},"{seconds} seconds left":{"msgid":"{seconds} seconds left","msgstr":["{seconds} sekundi preostalo"]},"{time} left":{"msgid":"{time} left","comments":{"extracted":"time has the format 00:00:00"},"msgstr":["{time} preostalo"]},"a few seconds left":{"msgid":"a few seconds left","msgstr":["preostalo je nekoliko sekundi"]},"Add":{"msgid":"Add","msgstr":["Dodaj"]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":["Obustavi otpremanja"]},"estimating time left":{"msgid":"estimating time left","msgstr":["procena preostalog vremena"]},"paused":{"msgid":"paused","msgstr":["pauziran"]},"Upload files":{"msgid":"Upload files","msgstr":["Otpremi fajlove"]}}}}},{"locale":"sr@latin","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Serbian (Latin) (https://www.transifex.com/nextcloud/teams/64236/sr@latin/)","Content-Type":"text/plain; charset=UTF-8","Language":"sr@latin","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Serbian (Latin) (https://www.transifex.com/nextcloud/teams/64236/sr@latin/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sr@latin\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"sv","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Swedish (https://www.transifex.com/nextcloud/teams/64236/sv/)","Content-Type":"text/plain; charset=UTF-8","Language":"sv","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Swedish (https://www.transifex.com/nextcloud/teams/64236/sv/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sv\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"sw","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Swahili (https://www.transifex.com/nextcloud/teams/64236/sw/)","Content-Type":"text/plain; charset=UTF-8","Language":"sw","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Swahili (https://www.transifex.com/nextcloud/teams/64236/sw/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sw\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"ta","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Tamil (https://www.transifex.com/nextcloud/teams/64236/ta/)","Content-Type":"text/plain; charset=UTF-8","Language":"ta","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Tamil (https://www.transifex.com/nextcloud/teams/64236/ta/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ta\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"ta_LK","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Tamil (Sri-Lanka) (https://www.transifex.com/nextcloud/teams/64236/ta_LK/)","Content-Type":"text/plain; charset=UTF-8","Language":"ta_LK","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Tamil (Sri-Lanka) (https://www.transifex.com/nextcloud/teams/64236/ta_LK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ta_LK\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"th","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Thai (https://www.transifex.com/nextcloud/teams/64236/th/)","Content-Type":"text/plain; charset=UTF-8","Language":"th","Plural-Forms":"nplurals=1; plural=0;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Thai (https://www.transifex.com/nextcloud/teams/64236/th/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: th\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"th_TH","json":{"charset":"utf-8","headers":{"Last-Translator":"Phongpanot Phairat , 2022","Language-Team":"Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)","Content-Type":"text/plain; charset=UTF-8","Language":"th_TH","Plural-Forms":"nplurals=1; plural=0;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nPhongpanot Phairat , 2022\n"},"msgstr":["Last-Translator: Phongpanot Phairat , 2022\nLanguage-Team: Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: th_TH\nPlural-Forms: nplurals=1; plural=0;\n"]},"{seconds} seconds left":{"msgid":"{seconds} seconds left","msgstr":["เหลืออีก {seconds} วินาที"]},"{time} left":{"msgid":"{time} left","comments":{"extracted":"time has the format 00:00:00"},"msgstr":["เหลืออีก {time}"]},"a few seconds left":{"msgid":"a few seconds left","msgstr":["เหลืออีกไม่กี่วินาที"]},"Add":{"msgid":"Add","msgstr":["เพิ่ม"]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":["ยกเลิกการอัปโหลด"]},"estimating time left":{"msgid":"estimating time left","msgstr":["กำลังคำนวณเวลาที่เหลือ"]},"paused":{"msgid":"paused","msgstr":["หยุดชั่วคราว"]},"Upload files":{"msgid":"Upload files","msgstr":["อัปโหลดไฟล์"]}}}}},{"locale":"tk","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Turkmen (https://www.transifex.com/nextcloud/teams/64236/tk/)","Content-Type":"text/plain; charset=UTF-8","Language":"tk","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Turkmen (https://www.transifex.com/nextcloud/teams/64236/tk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: tk\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"tr","json":{"charset":"utf-8","headers":{"Last-Translator":"Kaya Zeren , 2022","Language-Team":"Turkish (https://www.transifex.com/nextcloud/teams/64236/tr/)","Content-Type":"text/plain; charset=UTF-8","Language":"tr","Plural-Forms":"nplurals=2; plural=(n > 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nKaya Zeren , 2022\n"},"msgstr":["Last-Translator: Kaya Zeren , 2022\nLanguage-Team: Turkish (https://www.transifex.com/nextcloud/teams/64236/tr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: tr\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},"{seconds} seconds left":{"msgid":"{seconds} seconds left","msgstr":["{seconds} saniye kaldı"]},"{time} left":{"msgid":"{time} left","comments":{"extracted":"time has the format 00:00:00"},"msgstr":["{time} kaldı"]},"a few seconds left":{"msgid":"a few seconds left","msgstr":["bir kaç saniye kaldı"]},"Add":{"msgid":"Add","msgstr":["Ekle"]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":["Yüklemeleri iptal et"]},"estimating time left":{"msgid":"estimating time left","msgstr":["öngörülen kalan süre"]},"paused":{"msgid":"paused","msgstr":["duraklatıldı"]},"Upload files":{"msgid":"Upload files","msgstr":["Dosyaları yükle"]}}}}},{"locale":"ug","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Uyghur (https://www.transifex.com/nextcloud/teams/64236/ug/)","Content-Type":"text/plain; charset=UTF-8","Language":"ug","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Uyghur (https://www.transifex.com/nextcloud/teams/64236/ug/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ug\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"uk","json":{"charset":"utf-8","headers":{"Last-Translator":"Vitaliy , 2022","Language-Team":"Ukrainian (https://www.transifex.com/nextcloud/teams/64236/uk/)","Content-Type":"text/plain; charset=UTF-8","Language":"uk","Plural-Forms":"nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nVitaliy , 2022\n"},"msgstr":["Last-Translator: Vitaliy , 2022\nLanguage-Team: Ukrainian (https://www.transifex.com/nextcloud/teams/64236/uk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: uk\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\n"]},"{seconds} seconds left":{"msgid":"{seconds} seconds left","msgstr":["Залишилося {seconds} секунд"]},"{time} left":{"msgid":"{time} left","comments":{"extracted":"time has the format 00:00:00"},"msgstr":["Залишилося {time}"]},"a few seconds left":{"msgid":"a few seconds left","msgstr":["залишилося кілька секунд"]},"Add":{"msgid":"Add","msgstr":["Додати"]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":["Скасувати завантаження"]},"estimating time left":{"msgid":"estimating time left","msgstr":["оцінка часу, що залишився"]},"paused":{"msgid":"paused","msgstr":["призупинено"]},"Upload files":{"msgid":"Upload files","msgstr":["Завантажте файли"]}}}}},{"locale":"ur_PK","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Urdu (Pakistan) (https://www.transifex.com/nextcloud/teams/64236/ur_PK/)","Content-Type":"text/plain; charset=UTF-8","Language":"ur_PK","Plural-Forms":"nplurals=2; plural=(n != 1);"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Urdu (Pakistan) (https://www.transifex.com/nextcloud/teams/64236/ur_PK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ur_PK\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"uz","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Uzbek (https://www.transifex.com/nextcloud/teams/64236/uz/)","Content-Type":"text/plain; charset=UTF-8","Language":"uz","Plural-Forms":"nplurals=1; plural=0;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Uzbek (https://www.transifex.com/nextcloud/teams/64236/uz/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: uz\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"vi","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Vietnamese (https://www.transifex.com/nextcloud/teams/64236/vi/)","Content-Type":"text/plain; charset=UTF-8","Language":"vi","Plural-Forms":"nplurals=1; plural=0;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Vietnamese (https://www.transifex.com/nextcloud/teams/64236/vi/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: vi\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}},{"locale":"zh_CN","json":{"charset":"utf-8","headers":{"Last-Translator":"Jack Frost, 2022","Language-Team":"Chinese (China) (https://www.transifex.com/nextcloud/teams/64236/zh_CN/)","Content-Type":"text/plain; charset=UTF-8","Language":"zh_CN","Plural-Forms":"nplurals=1; plural=0;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nJack Frost, 2022\n"},"msgstr":["Last-Translator: Jack Frost, 2022\nLanguage-Team: Chinese (China) (https://www.transifex.com/nextcloud/teams/64236/zh_CN/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_CN\nPlural-Forms: nplurals=1; plural=0;\n"]},"{seconds} seconds left":{"msgid":"{seconds} seconds left","msgstr":["剩余 {seconds} 秒"]},"{time} left":{"msgid":"{time} left","comments":{"extracted":"time has the format 00:00:00"},"msgstr":["剩余 {time}"]},"a few seconds left":{"msgid":"a few seconds left","msgstr":["还剩几秒"]},"Add":{"msgid":"Add","msgstr":["添加"]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":["取消上传"]},"estimating time left":{"msgid":"estimating time left","msgstr":["估计剩余时间"]},"paused":{"msgid":"paused","msgstr":["已暂停"]}}}}},{"locale":"zh_HK","json":{"charset":"utf-8","headers":{"Last-Translator":"Café Tango, 2022","Language-Team":"Chinese (Hong Kong) (https://www.transifex.com/nextcloud/teams/64236/zh_HK/)","Content-Type":"text/plain; charset=UTF-8","Language":"zh_HK","Plural-Forms":"nplurals=1; plural=0;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nCafé Tango, 2022\n"},"msgstr":["Last-Translator: Café Tango, 2022\nLanguage-Team: Chinese (Hong Kong) (https://www.transifex.com/nextcloud/teams/64236/zh_HK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_HK\nPlural-Forms: nplurals=1; plural=0;\n"]},"{seconds} seconds left":{"msgid":"{seconds} seconds left","msgstr":["剩餘 {seconds} 秒"]},"{time} left":{"msgid":"{time} left","comments":{"extracted":"time has the format 00:00:00"},"msgstr":["剩餘 {time}"]},"a few seconds left":{"msgid":"a few seconds left","msgstr":["還剩幾秒"]},"Add":{"msgid":"Add","msgstr":["添加"]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":["取消上傳"]},"estimating time left":{"msgid":"estimating time left","msgstr":["估計剩餘時間"]},"paused":{"msgid":"paused","msgstr":["已暫停"]}}}}},{"locale":"zh_TW","json":{"charset":"utf-8","headers":{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Chinese (Taiwan) (https://www.transifex.com/nextcloud/teams/64236/zh_TW/)","Content-Type":"text/plain; charset=UTF-8","Language":"zh_TW","Plural-Forms":"nplurals=1; plural=0;"},"translations":{"":{"":{"msgid":"","comments":{"translator":"\nTranslators:\nTransifex Bot <>, 2022\n"},"msgstr":["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Chinese (Taiwan) (https://www.transifex.com/nextcloud/teams/64236/zh_TW/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_TW\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{"msgid":"{estimate} seconds left","msgstr":[""]},"{hours} hours and {minutes} minutes left":{"msgid":"{hours} hours and {minutes} minutes left","msgstr":[""]},"{minutes} minutes left":{"msgid":"{minutes} minutes left","msgstr":[""]},"a few seconds left":{"msgid":"a few seconds left","msgstr":[""]},"Add":{"msgid":"Add","msgstr":[""]},"Cancel uploads":{"msgid":"Cancel uploads","msgstr":[""]},"estimating time left":{"msgid":"estimating time left","msgstr":[""]},"paused":{"msgid":"paused","msgstr":[""]}}}}}]}; - try { - if (process) { - process.env = Object.assign({}, process.env); - Object.assign(process.env, env); - return; - } - } catch (e) {} // avoid ReferenceError: process is not defined - globalThis.process = { env:env }; -})(); - -const readerLimit = (0,p_limit__WEBPACK_IMPORTED_MODULE_7__["default"])(1); -const reader = new FileReader(); -/** - * Upload some data to a given path - */ -const uploadData = async function (url, data, signal, onUploadProgress = () => { }) { - if (typeof data === 'function') { - data = await data(); - } - return await _nextcloud_axios__WEBPACK_IMPORTED_MODULE_3__["default"].request({ - method: 'PUT', - url, - data, - signal, - onUploadProgress, - }); -}; -/** - * Get chunk of the file. Doing this on the fly - * give us a big performance boost and proper - * garbage collection - */ -const getChunk = function (file, start, length) { - if (!file.type) { - return Promise.reject(new Error('Unknown file type')); - } - // Since we use a global FileReader, we need to only read one chunk at a time - return readerLimit(() => new Promise((resolve, reject) => { - reader.onload = () => { - if (reader.result !== null) { - resolve(new Blob([reader.result], { - type: 'application/octet-stream', - })); - } - reject(new Error('Error while reading the file')); - }; - reader.readAsArrayBuffer(file.slice(start, start + length)); - })); -}; -/** - * Create a temporary upload workspace to upload the chunks to - */ -const initChunkWorkspace = async function () { - const chunksWorkspace = (0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_1__.generateRemoteUrl)(`dav/uploads/${(0,_nextcloud_auth__WEBPACK_IMPORTED_MODULE_2__.getCurrentUser)()?.uid}`); - const tempWorkspace = `web-file-upload-${crypto_browserify__WEBPACK_IMPORTED_MODULE_6__.randomBytes(16).toString('hex')}`; - const url = `${chunksWorkspace}/${tempWorkspace}`; - await _nextcloud_axios__WEBPACK_IMPORTED_MODULE_3__["default"].request({ - method: 'MKCOL', - url, - }); - return url; -}; - -const getMaxChunksSize = function () { - const maxChunkSize = __webpack_require__.g.OC?.appConfig?.files?.max_chunk_size; - if (maxChunkSize <= 0) { - return 0; - } - // If invalid return default - if (!Number(maxChunkSize)) { - return 10 * 1024 * 1024; - } - return Number(maxChunkSize); -}; - -var Status$1; -(function (Status) { - Status[Status["INITIALIZED"] = 0] = "INITIALIZED"; - Status[Status["UPLOADING"] = 1] = "UPLOADING"; - Status[Status["ASSEMBLING"] = 2] = "ASSEMBLING"; - Status[Status["FINISHED"] = 3] = "FINISHED"; - Status[Status["CANCELLED"] = 4] = "CANCELLED"; - Status[Status["FAILED"] = 5] = "FAILED"; -})(Status$1 || (Status$1 = {})); -class Upload$1 { - _path; - _isChunked; - _chunks; - _size; - _uploaded; - _startTime = 0; - _status; - _controller; - constructor(path, chunked = false, size) { - const chunks = getMaxChunksSize() > 0 ? Math.ceil(size / getMaxChunksSize()) : 1; - this._path = path; - this._isChunked = chunked && getMaxChunksSize() > 0 && chunks > 1; - this._chunks = this._isChunked ? chunks : 1; - this._size = size; - this._uploaded = 0; - this._status = Status$1.INITIALIZED; - this._controller = new AbortController(); - } - get path() { - return this._path; - } - get isChunked() { - return this._isChunked; - } - get chunks() { - return this._chunks; - } - get size() { - return this._size; - } - get uploaded() { - return this._uploaded; - } - get startTime() { - return this._startTime; - } - /** - * Update the uploaded bytes of this upload - */ - set uploaded(length) { - if (length >= this._size) { - this._status = this._isChunked - ? Status$1.ASSEMBLING - : Status$1.FINISHED; - this._uploaded = this._size; - return; - } - this._status = Status$1.UPLOADING; - this._uploaded = length; - // If first progress, let's log the start time - if (this._startTime === 0) { - this._startTime = new Date().getTime(); - } - } - get status() { - return this._status; - } - /** - * Update this upload status - */ - set status(status) { - this._status = status; - } - /** - * Returns the axios cancel token source - */ - get signal() { - return this._controller.signal; - } - /** - * Cancel any ongoing requests linked to this upload - */ - cancel() { - this._controller.abort(); - this._status = Status$1.CANCELLED; - } -} - -const getLogger = user => { - if (user === null) { - return (0,_nextcloud_logger__WEBPACK_IMPORTED_MODULE_8__.getLoggerBuilder)() - .setApp('uploader') - .build(); - } - return (0,_nextcloud_logger__WEBPACK_IMPORTED_MODULE_8__.getLoggerBuilder)() - .setApp('uploader') - .setUid(user.uid) - .build(); -}; -var logger = getLogger((0,_nextcloud_auth__WEBPACK_IMPORTED_MODULE_2__.getCurrentUser)()); - -var Status; -(function (Status) { - Status[Status["IDLE"] = 0] = "IDLE"; - Status[Status["UPLOADING"] = 1] = "UPLOADING"; - Status[Status["PAUSED"] = 2] = "PAUSED"; -})(Status || (Status = {})); -class Uploader { - _userRootFolder; - _destinationFolder = '/'; - _isPublic; - // Global upload queue - _uploadQueue = []; - _jobQueue = new p_queue__WEBPACK_IMPORTED_MODULE_5__["default"]({ concurrency: 3 }); - _queueSize = 0; - _queueProgress = 0; - _queueStatus = Status.IDLE; - /** - * Initialize uploader - * - * @param {boolean} isPublic are we in public mode ? - */ - constructor(isPublic = false) { - this._isPublic = isPublic; - this._userRootFolder = (0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_1__.generateRemoteUrl)(`dav/files/${(0,_nextcloud_auth__WEBPACK_IMPORTED_MODULE_2__.getCurrentUser)()?.uid}`); - logger.debug('Upload workspace initialized', { - destinationFolder: this._destinationFolder, - userRootFolder: this._userRootFolder, - isPublic, - maxChunksSize: getMaxChunksSize(), - }); - } - /** - * Get the upload destination path relative to the user root folder - */ - get destination() { - return this._destinationFolder; - } - /** - * Set the upload destination path relative to the user root folder - */ - set destination(path) { - if (typeof path !== 'string' || path === '') { - this._destinationFolder = '/'; - return; - } - if (!path.startsWith('/')) { - path = `/${path}`; - } - this._destinationFolder = path.replace(/\/$/, ''); - } - /** - * Get the upload queue - */ - get queue() { - return this._uploadQueue; - } - reset() { - this._uploadQueue = []; - this._jobQueue.clear(); - this._queueSize = 0; - this._queueProgress = 0; - this._queueStatus = Status.IDLE; - } - /** - * Pause any ongoing upload(s) - */ - pause() { - this._jobQueue.pause(); - this._queueStatus = Status.PAUSED; - } - /** - * Resume any pending upload(s) - */ - start() { - this._jobQueue.start(); - this._queueStatus = Status.UPLOADING; - this.updateStats(); - } - /** - * Get the upload queue stats - */ - get info() { - return { - size: this._queueSize, - progress: this._queueProgress, - status: this._queueStatus, - }; - } - updateStats() { - const size = this._uploadQueue.map(upload => upload.size) - .reduce((partialSum, a) => partialSum + a, 0); - const uploaded = this._uploadQueue.map(upload => upload.uploaded) - .reduce((partialSum, a) => partialSum + a, 0); - this._queueSize = size; - this._queueProgress = uploaded; - // If already paused keep it that way - if (this._queueStatus === Status.PAUSED) { - return; - } - this._queueStatus = this._jobQueue.size > 0 - ? Status.UPLOADING - : Status.IDLE; - } - /** - * Upload a file to the given path - */ - upload(destinationPath, file) { - const destinationFolder = this._destinationFolder === '/' ? '' : this._destinationFolder; - const destinationFile = `${this._userRootFolder}${destinationFolder}/${destinationPath.replace(/^\//, '')}`; - logger.debug(`Uploading ${file.name} to ${destinationFile}`); - // If manually disabled or if the file is too small - // TODO: support chunk uploading in public pages - const maxChunkSize = getMaxChunksSize(); - const disabledChunkUpload = maxChunkSize === 0 - || file.size < maxChunkSize - || this._isPublic; - const upload = new Upload$1(destinationFile, !disabledChunkUpload, file.size); - this._uploadQueue.push(upload); - this.updateStats(); - // eslint-disable-next-line no-async-promise-executor - const promise = new p_cancelable__WEBPACK_IMPORTED_MODULE_4__["default"](async (resolve, reject, onCancel) => { - // Register cancellation caller - onCancel(upload.cancel); - if (!disabledChunkUpload) { - logger.debug('Initializing chunked upload', { file, upload }); - // Let's initialize a chunk upload - const tempUrl = await initChunkWorkspace(); - const chunksQueue = []; - // Generate chunks array - for (let chunk = 0; chunk < upload.chunks; chunk++) { - const bufferStart = chunk * maxChunkSize; - // Don't go further than the file size - const bufferEnd = Math.min(bufferStart + maxChunkSize, upload.size); - // Make it a Promise function for better memory management - const blob = () => getChunk(file, bufferStart, maxChunkSize); - // Init request queue - const request = () => { - return uploadData(`${tempUrl}/${bufferEnd}`, blob, upload.signal, () => this.updateStats()) - // Update upload progress on chunk completion - .then(() => { upload.uploaded = upload.uploaded + maxChunkSize; }) - .catch((error) => { - if (!(error instanceof axios__WEBPACK_IMPORTED_MODULE_0__.CanceledError)) { - logger.error(`Chunk ${bufferStart} - ${bufferEnd} uploading failed`); - upload.status = Status$1.FAILED; - } - throw error; - }); - }; - chunksQueue.push(this._jobQueue.add(request)); - } - try { - // Once all chunks are sent, assemble the final file - await Promise.all(chunksQueue); - this.updateStats(); - await _nextcloud_axios__WEBPACK_IMPORTED_MODULE_3__["default"].request({ - method: 'MOVE', - url: `${tempUrl}/.file`, - headers: { - Destination: destinationFile, - }, - }); - this.updateStats(); - upload.status = Status$1.FINISHED; - logger.debug(`Successfully uploaded ${file.name}`, { file, upload }); - resolve(upload); - } - catch (error) { - if (!(error instanceof axios__WEBPACK_IMPORTED_MODULE_0__.CanceledError)) { - upload.status = Status$1.FAILED; - reject('Failed assembling the chunks together'); - } - else { - upload.status = Status$1.FAILED; - reject('Upload has been cancelled'); - } - // Cleaning up temp directory - _nextcloud_axios__WEBPACK_IMPORTED_MODULE_3__["default"].request({ - method: 'DELETE', - url: `${tempUrl}`, - }); - } - } - else { - logger.debug('Initializing regular upload', { file, upload }); - // Generating upload limit - const blob = await getChunk(file, 0, upload.size); - const request = async () => { - try { - await uploadData(destinationFile, blob, upload.signal, () => this.updateStats()); - // Update progress - upload.uploaded = upload.size; - this.updateStats(); - // Resolve - logger.debug(`Successfully uploaded ${file.name}`, { file, upload }); - resolve(upload); - } - catch (error) { - if (error instanceof axios__WEBPACK_IMPORTED_MODULE_0__.CanceledError) { - upload.status = Status$1.FAILED; - reject('Upload has been cancelled'); - return; - } - upload.status = Status$1.FAILED; - reject('Failed uploading the file'); - } - }; - this._jobQueue.add(request); - this.updateStats(); - } - // Reset when upload queue is done - this._jobQueue.onIdle() - .then(() => this.reset()); - return upload; - }); - return promise; - } -} - -var e=[],t$1=[];function n(n,r){if(n&&"undefined"!=typeof document){var a,s=!0===r.prepend?"prepend":"append",d=!0===r.singleTag,i="string"==typeof r.container?document.querySelector(r.container):document.getElementsByTagName("head")[0];if(d){var u=e.indexOf(i);-1===u&&(u=e.push(i)-1,t$1[u]={}),a=t$1[u]&&t$1[u][s]?t$1[u][s]:t$1[u][s]=c();}else a=c();65279===n.charCodeAt(0)&&(n=n.substring(1)),a.styleSheet?a.styleSheet.cssText+=n:a.appendChild(document.createTextNode(n));}function c(){var e=document.createElement("style");if(e.setAttribute("type","text/css"),r.attributes)for(var t=Object.keys(r.attributes),n=0;n*/(x/*: ?T*/, d/*: T*/)/*: T*/ { - return (x === undefined || x === null) ? d : x; -} - -function makeEta(options/*::?: Options */) { - options = options || {}; - var max = def(options.max, 1); - var min = def(options.min, 0); - var autostart = def(options.autostart, true); - var ignoreSameProgress = def(options.ignoreSameProgress, false); - - var rate/*: number | null */ = null; - var lastTimestamp/*: number | null */ = null; - var lastProgress/*: number | null */ = null; - - var filter = makeLowPassFilter(def(options.historyTimeConstant, 2.5)); - - function start() { - report(min); - } - - function reset() { - rate = null; - lastTimestamp = null; - lastProgress = null; - if (autostart) { - start(); - } - } - - function report(progress /*: number */, timestamp/*::?: number */) { - if (typeof timestamp !== 'number') { - timestamp = Date.now(); - } - - if (lastTimestamp === timestamp) { return; } - if (ignoreSameProgress && lastProgress === progress) { return; } - - if (lastTimestamp === null || lastProgress === null) { - lastProgress = progress; - lastTimestamp = timestamp; - return; - } - - var deltaProgress = progress - lastProgress; - var deltaTimestamp = 0.001 * (timestamp - lastTimestamp); - var currentRate = deltaProgress / deltaTimestamp; - - rate = rate === null - ? currentRate - : filter(rate, currentRate, deltaTimestamp); - lastProgress = progress; - lastTimestamp = timestamp; - } - - function estimate(timestamp/*::?: number*/) { - if (lastProgress === null) { return Infinity; } - if (lastProgress >= max) { return 0; } - if (rate === null) { return Infinity; } - - var estimatedTime = (max - lastProgress) / rate; - if (typeof timestamp === 'number' && typeof lastTimestamp === 'number') { - estimatedTime -= (timestamp - lastTimestamp) * 0.001; - } - return Math.max(0, estimatedTime); - } - - function getRate() { - return rate === null ? 0 : rate; - } - - return { - start: start, - reset: reset, - report: report, - estimate: estimate, - rate: getRate, - } -} - -var simpleEta = makeEta; - -var ActionButton$1 = {exports: {}}; - -var vue_runtime_common = {exports: {}}; - -var vue_runtime_common_dev; -var hasRequiredVue_runtime_common_dev; - -function requireVue_runtime_common_dev () { - if (hasRequiredVue_runtime_common_dev) return vue_runtime_common_dev; - hasRequiredVue_runtime_common_dev = 1; - - const emptyObject = Object.freeze({}); - const isArray = Array.isArray; - // These helpers produce better VM code in JS engines due to their - // explicitness and function inlining. - function isUndef(v) { - return v === undefined || v === null; - } - function isDef(v) { - return v !== undefined && v !== null; - } - function isTrue(v) { - return v === true; - } - function isFalse(v) { - return v === false; - } - /** - * Check if value is primitive. - */ - function isPrimitive(value) { - return (typeof value === 'string' || - typeof value === 'number' || - // $flow-disable-line - typeof value === 'symbol' || - typeof value === 'boolean'); - } - function isFunction(value) { - return typeof value === 'function'; - } - /** - * Quick object check - this is primarily used to tell - * objects from primitive values when we know the value - * is a JSON-compliant type. - */ - function isObject(obj) { - return obj !== null && typeof obj === 'object'; - } - /** - * Get the raw type string of a value, e.g., [object Object]. - */ - const _toString = Object.prototype.toString; - function toRawType(value) { - return _toString.call(value).slice(8, -1); - } - /** - * Strict object type check. Only returns true - * for plain JavaScript objects. - */ - function isPlainObject(obj) { - return _toString.call(obj) === '[object Object]'; - } - function isRegExp(v) { - return _toString.call(v) === '[object RegExp]'; - } - /** - * Check if val is a valid array index. - */ - function isValidArrayIndex(val) { - const n = parseFloat(String(val)); - return n >= 0 && Math.floor(n) === n && isFinite(val); - } - function isPromise(val) { - return (isDef(val) && - typeof val.then === 'function' && - typeof val.catch === 'function'); - } - /** - * Convert a value to a string that is actually rendered. - */ - function toString(val) { - return val == null - ? '' - : Array.isArray(val) || (isPlainObject(val) && val.toString === _toString) - ? JSON.stringify(val, null, 2) - : String(val); - } - /** - * Convert an input value to a number for persistence. - * If the conversion fails, return original string. - */ - function toNumber(val) { - const n = parseFloat(val); - return isNaN(n) ? val : n; - } - /** - * Make a map and return a function for checking if a key - * is in that map. - */ - function makeMap(str, expectsLowerCase) { - const map = Object.create(null); - const list = str.split(','); - for (let i = 0; i < list.length; i++) { - map[list[i]] = true; - } - return expectsLowerCase ? val => map[val.toLowerCase()] : val => map[val]; - } - /** - * Check if a tag is a built-in tag. - */ - const isBuiltInTag = makeMap('slot,component', true); - /** - * Check if an attribute is a reserved attribute. - */ - const isReservedAttribute = makeMap('key,ref,slot,slot-scope,is'); - /** - * Remove an item from an array. - */ - function remove$2(arr, item) { - if (arr.length) { - const index = arr.indexOf(item); - if (index > -1) { - return arr.splice(index, 1); - } - } - } - /** - * Check whether an object has the property. - */ - const hasOwnProperty = Object.prototype.hasOwnProperty; - function hasOwn(obj, key) { - return hasOwnProperty.call(obj, key); - } - /** - * Create a cached version of a pure function. - */ - function cached(fn) { - const cache = Object.create(null); - return function cachedFn(str) { - const hit = cache[str]; - return hit || (cache[str] = fn(str)); - }; - } - /** - * Camelize a hyphen-delimited string. - */ - const camelizeRE = /-(\w)/g; - const camelize = cached((str) => { - return str.replace(camelizeRE, (_, c) => (c ? c.toUpperCase() : '')); - }); - /** - * Capitalize a string. - */ - const capitalize = cached((str) => { - return str.charAt(0).toUpperCase() + str.slice(1); - }); - /** - * Hyphenate a camelCase string. - */ - const hyphenateRE = /\B([A-Z])/g; - const hyphenate = cached((str) => { - return str.replace(hyphenateRE, '-$1').toLowerCase(); - }); - /** - * Simple bind polyfill for environments that do not support it, - * e.g., PhantomJS 1.x. Technically, we don't need this anymore - * since native bind is now performant enough in most browsers. - * But removing it would mean breaking code that was able to run in - * PhantomJS 1.x, so this must be kept for backward compatibility. - */ - /* istanbul ignore next */ - function polyfillBind(fn, ctx) { - function boundFn(a) { - const l = arguments.length; - return l - ? l > 1 - ? fn.apply(ctx, arguments) - : fn.call(ctx, a) - : fn.call(ctx); - } - boundFn._length = fn.length; - return boundFn; - } - function nativeBind(fn, ctx) { - return fn.bind(ctx); - } - // @ts-expect-error bind cannot be `undefined` - const bind = Function.prototype.bind ? nativeBind : polyfillBind; - /** - * Convert an Array-like object to a real Array. - */ - function toArray(list, start) { - start = start || 0; - let i = list.length - start; - const ret = new Array(i); - while (i--) { - ret[i] = list[i + start]; - } - return ret; - } - /** - * Mix properties into target object. - */ - function extend(to, _from) { - for (const key in _from) { - to[key] = _from[key]; - } - return to; - } - /** - * Merge an Array of Objects into a single Object. - */ - function toObject(arr) { - const res = {}; - for (let i = 0; i < arr.length; i++) { - if (arr[i]) { - extend(res, arr[i]); - } - } - return res; - } - /* eslint-disable no-unused-vars */ - /** - * Perform no operation. - * Stubbing args to make Flow happy without leaving useless transpiled code - * with ...rest (https://flow.org/blog/2017/05/07/Strict-Function-Call-Arity/). - */ - function noop(a, b, c) { } - /** - * Always return false. - */ - const no = (a, b, c) => false; - /* eslint-enable no-unused-vars */ - /** - * Return the same value. - */ - const identity = (_) => _; - /** - * Check if two values are loosely equal - that is, - * if they are plain objects, do they have the same shape? - */ - function looseEqual(a, b) { - if (a === b) - return true; - const isObjectA = isObject(a); - const isObjectB = isObject(b); - if (isObjectA && isObjectB) { - try { - const isArrayA = Array.isArray(a); - const isArrayB = Array.isArray(b); - if (isArrayA && isArrayB) { - return (a.length === b.length && - a.every((e, i) => { - return looseEqual(e, b[i]); - })); - } - else if (a instanceof Date && b instanceof Date) { - return a.getTime() === b.getTime(); - } - else if (!isArrayA && !isArrayB) { - const keysA = Object.keys(a); - const keysB = Object.keys(b); - return (keysA.length === keysB.length && - keysA.every(key => { - return looseEqual(a[key], b[key]); - })); - } - else { - /* istanbul ignore next */ - return false; - } - } - catch (e) { - /* istanbul ignore next */ - return false; - } - } - else if (!isObjectA && !isObjectB) { - return String(a) === String(b); - } - else { - return false; - } - } - /** - * Return the first index at which a loosely equal value can be - * found in the array (if value is a plain object, the array must - * contain an object of the same shape), or -1 if it is not present. - */ - function looseIndexOf(arr, val) { - for (let i = 0; i < arr.length; i++) { - if (looseEqual(arr[i], val)) - return i; - } - return -1; - } - /** - * Ensure a function is called only once. - */ - function once(fn) { - let called = false; - return function () { - if (!called) { - called = true; - fn.apply(this, arguments); - } - }; - } - // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is#polyfill - function hasChanged(x, y) { - if (x === y) { - return x === 0 && 1 / x !== 1 / y; - } - else { - return x === x || y === y; - } - } - - const SSR_ATTR = 'data-server-rendered'; - const ASSET_TYPES = ['component', 'directive', 'filter']; - const LIFECYCLE_HOOKS = [ - 'beforeCreate', - 'created', - 'beforeMount', - 'mounted', - 'beforeUpdate', - 'updated', - 'beforeDestroy', - 'destroyed', - 'activated', - 'deactivated', - 'errorCaptured', - 'serverPrefetch', - 'renderTracked', - 'renderTriggered' - ]; - - var config = { - /** - * Option merge strategies (used in core/util/options) - */ - // $flow-disable-line - optionMergeStrategies: Object.create(null), - /** - * Whether to suppress warnings. - */ - silent: false, - /** - * Show production mode tip message on boot? - */ - productionTip: true, - /** - * Whether to enable devtools - */ - devtools: true, - /** - * Whether to record perf - */ - performance: false, - /** - * Error handler for watcher errors - */ - errorHandler: null, - /** - * Warn handler for watcher warns - */ - warnHandler: null, - /** - * Ignore certain custom elements - */ - ignoredElements: [], - /** - * Custom user key aliases for v-on - */ - // $flow-disable-line - keyCodes: Object.create(null), - /** - * Check if a tag is reserved so that it cannot be registered as a - * component. This is platform-dependent and may be overwritten. - */ - isReservedTag: no, - /** - * Check if an attribute is reserved so that it cannot be used as a component - * prop. This is platform-dependent and may be overwritten. - */ - isReservedAttr: no, - /** - * Check if a tag is an unknown element. - * Platform-dependent. - */ - isUnknownElement: no, - /** - * Get the namespace of an element - */ - getTagNamespace: noop, - /** - * Parse the real tag name for the specific platform. - */ - parsePlatformTagName: identity, - /** - * Check if an attribute must be bound using property, e.g. value - * Platform-dependent. - */ - mustUseProp: no, - /** - * Perform updates asynchronously. Intended to be used by Vue Test Utils - * This will significantly reduce performance if set to false. - */ - async: true, - /** - * Exposed for legacy reasons - */ - _lifecycleHooks: LIFECYCLE_HOOKS - }; - - /** - * unicode letters used for parsing html tags, component names and property paths. - * using https://www.w3.org/TR/html53/semantics-scripting.html#potentialcustomelementname - * skipping \u10000-\uEFFFF due to it freezing up PhantomJS - */ - const unicodeRegExp = /a-zA-Z\u00B7\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u037D\u037F-\u1FFF\u200C-\u200D\u203F-\u2040\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD/; - /** - * Check if a string starts with $ or _ - */ - function isReserved(str) { - const c = (str + '').charCodeAt(0); - return c === 0x24 || c === 0x5f; - } - /** - * Define a property. - */ - function def(obj, key, val, enumerable) { - Object.defineProperty(obj, key, { - value: val, - enumerable: !!enumerable, - writable: true, - configurable: true - }); - } - /** - * Parse simple path. - */ - const bailRE = new RegExp(`[^${unicodeRegExp.source}.$_\\d]`); - function parsePath(path) { - if (bailRE.test(path)) { - return; - } - const segments = path.split('.'); - return function (obj) { - for (let i = 0; i < segments.length; i++) { - if (!obj) - return; - obj = obj[segments[i]]; - } - return obj; - }; - } - - // can we use __proto__? - const hasProto = '__proto__' in {}; - // Browser environment sniffing - const inBrowser = typeof window !== 'undefined'; - const UA = inBrowser && window.navigator.userAgent.toLowerCase(); - const isIE = UA && /msie|trident/.test(UA); - const isIE9 = UA && UA.indexOf('msie 9.0') > 0; - const isEdge = UA && UA.indexOf('edge/') > 0; - UA && UA.indexOf('android') > 0; - const isIOS = UA && /iphone|ipad|ipod|ios/.test(UA); - UA && /chrome\/\d+/.test(UA) && !isEdge; - UA && /phantomjs/.test(UA); - const isFF = UA && UA.match(/firefox\/(\d+)/); - // Firefox has a "watch" function on Object.prototype... - // @ts-expect-error firebox support - const nativeWatch = {}.watch; - let supportsPassive = false; - if (inBrowser) { - try { - const opts = {}; - Object.defineProperty(opts, 'passive', { - get() { - /* istanbul ignore next */ - supportsPassive = true; - } - }); // https://github.com/facebook/flow/issues/285 - window.addEventListener('test-passive', null, opts); - } - catch (e) { } - } - // this needs to be lazy-evaled because vue may be required before - // vue-server-renderer can set VUE_ENV - let _isServer; - const isServerRendering = () => { - if (_isServer === undefined) { - /* istanbul ignore if */ - if (!inBrowser && typeof commonjsGlobal !== 'undefined') { - // detect presence of vue-server-renderer and avoid - // Webpack shimming the process - _isServer = - commonjsGlobal['process'] && commonjsGlobal['process'].env.VUE_ENV === 'server'; - } - else { - _isServer = false; - } - } - return _isServer; - }; - // detect devtools - const devtools = inBrowser && window.__VUE_DEVTOOLS_GLOBAL_HOOK__; - /* istanbul ignore next */ - function isNative(Ctor) { - return typeof Ctor === 'function' && /native code/.test(Ctor.toString()); - } - const hasSymbol = typeof Symbol !== 'undefined' && - isNative(Symbol) && - typeof Reflect !== 'undefined' && - isNative(Reflect.ownKeys); - let _Set; // $flow-disable-line - /* istanbul ignore if */ if (typeof Set !== 'undefined' && isNative(Set)) { - // use native Set when available. - _Set = Set; - } - else { - // a non-standard Set polyfill that only works with primitive keys. - _Set = class Set { - constructor() { - this.set = Object.create(null); - } - has(key) { - return this.set[key] === true; - } - add(key) { - this.set[key] = true; - } - clear() { - this.set = Object.create(null); - } - }; - } - - let currentInstance = null; - /** - * This is exposed for compatibility with v3 (e.g. some functions in VueUse - * relies on it). Do not use this internally, just use `currentInstance`. - * - * @internal this function needs manual type declaration because it relies - * on previously manually authored types from Vue 2 - */ - function getCurrentInstance() { - return currentInstance && { proxy: currentInstance }; - } - /** - * @internal - */ - function setCurrentInstance(vm = null) { - if (!vm) - currentInstance && currentInstance._scope.off(); - currentInstance = vm; - vm && vm._scope.on(); - } - - /** - * @internal - */ - class VNode { - constructor(tag, data, children, text, elm, context, componentOptions, asyncFactory) { - this.tag = tag; - this.data = data; - this.children = children; - this.text = text; - this.elm = elm; - this.ns = undefined; - this.context = context; - this.fnContext = undefined; - this.fnOptions = undefined; - this.fnScopeId = undefined; - this.key = data && data.key; - this.componentOptions = componentOptions; - this.componentInstance = undefined; - this.parent = undefined; - this.raw = false; - this.isStatic = false; - this.isRootInsert = true; - this.isComment = false; - this.isCloned = false; - this.isOnce = false; - this.asyncFactory = asyncFactory; - this.asyncMeta = undefined; - this.isAsyncPlaceholder = false; - } - // DEPRECATED: alias for componentInstance for backwards compat. - /* istanbul ignore next */ - get child() { - return this.componentInstance; - } - } - const createEmptyVNode = (text = '') => { - const node = new VNode(); - node.text = text; - node.isComment = true; - return node; - }; - function createTextVNode(val) { - return new VNode(undefined, undefined, undefined, String(val)); - } - // optimized shallow clone - // used for static nodes and slot nodes because they may be reused across - // multiple renders, cloning them avoids errors when DOM manipulations rely - // on their elm reference. - function cloneVNode(vnode) { - const cloned = new VNode(vnode.tag, vnode.data, - // #7975 - // clone children array to avoid mutating original in case of cloning - // a child. - vnode.children && vnode.children.slice(), vnode.text, vnode.elm, vnode.context, vnode.componentOptions, vnode.asyncFactory); - cloned.ns = vnode.ns; - cloned.isStatic = vnode.isStatic; - cloned.key = vnode.key; - cloned.isComment = vnode.isComment; - cloned.fnContext = vnode.fnContext; - cloned.fnOptions = vnode.fnOptions; - cloned.fnScopeId = vnode.fnScopeId; - cloned.asyncMeta = vnode.asyncMeta; - cloned.isCloned = true; - return cloned; - } - - let uid$2 = 0; - /** - * A dep is an observable that can have multiple - * directives subscribing to it. - * @internal - */ - class Dep { - constructor() { - this.id = uid$2++; - this.subs = []; - } - addSub(sub) { - this.subs.push(sub); - } - removeSub(sub) { - remove$2(this.subs, sub); - } - depend(info) { - if (Dep.target) { - Dep.target.addDep(this); - if (info && Dep.target.onTrack) { - Dep.target.onTrack(Object.assign({ effect: Dep.target }, info)); - } - } - } - notify(info) { - // stabilize the subscriber list first - const subs = this.subs.slice(); - if (!config.async) { - // subs aren't sorted in scheduler if not running async - // we need to sort them now to make sure they fire in correct - // order - subs.sort((a, b) => a.id - b.id); - } - for (let i = 0, l = subs.length; i < l; i++) { - if (info) { - const sub = subs[i]; - sub.onTrigger && - sub.onTrigger(Object.assign({ effect: subs[i] }, info)); - } - subs[i].update(); - } - } - } - // The current target watcher being evaluated. - // This is globally unique because only one watcher - // can be evaluated at a time. - Dep.target = null; - const targetStack = []; - function pushTarget(target) { - targetStack.push(target); - Dep.target = target; - } - function popTarget() { - targetStack.pop(); - Dep.target = targetStack[targetStack.length - 1]; - } - - /* - * not type checking this file because flow doesn't play well with - * dynamically accessing methods on Array prototype - */ - const arrayProto = Array.prototype; - const arrayMethods = Object.create(arrayProto); - const methodsToPatch = [ - 'push', - 'pop', - 'shift', - 'unshift', - 'splice', - 'sort', - 'reverse' - ]; - /** - * Intercept mutating methods and emit events - */ - methodsToPatch.forEach(function (method) { - // cache original method - const original = arrayProto[method]; - def(arrayMethods, method, function mutator(...args) { - const result = original.apply(this, args); - const ob = this.__ob__; - let inserted; - switch (method) { - case 'push': - case 'unshift': - inserted = args; - break; - case 'splice': - inserted = args.slice(2); - break; - } - if (inserted) - ob.observeArray(inserted); - // notify change - { - ob.dep.notify({ - type: "array mutation" /* TriggerOpTypes.ARRAY_MUTATION */, - target: this, - key: method - }); - } - return result; - }); - }); - - const arrayKeys = Object.getOwnPropertyNames(arrayMethods); - const NO_INIITIAL_VALUE = {}; - /** - * In some cases we may want to disable observation inside a component's - * update computation. - */ - let shouldObserve = true; - function toggleObserving(value) { - shouldObserve = value; - } - // ssr mock dep - const mockDep = { - notify: noop, - depend: noop, - addSub: noop, - removeSub: noop - }; - /** - * Observer class that is attached to each observed - * object. Once attached, the observer converts the target - * object's property keys into getter/setters that - * collect dependencies and dispatch updates. - */ - class Observer { - constructor(value, shallow = false, mock = false) { - this.value = value; - this.shallow = shallow; - this.mock = mock; - // this.value = value - this.dep = mock ? mockDep : new Dep(); - this.vmCount = 0; - def(value, '__ob__', this); - if (isArray(value)) { - if (!mock) { - if (hasProto) { - value.__proto__ = arrayMethods; - /* eslint-enable no-proto */ - } - else { - for (let i = 0, l = arrayKeys.length; i < l; i++) { - const key = arrayKeys[i]; - def(value, key, arrayMethods[key]); - } - } - } - if (!shallow) { - this.observeArray(value); - } - } - else { - /** - * Walk through all properties and convert them into - * getter/setters. This method should only be called when - * value type is Object. - */ - const keys = Object.keys(value); - for (let i = 0; i < keys.length; i++) { - const key = keys[i]; - defineReactive(value, key, NO_INIITIAL_VALUE, undefined, shallow, mock); - } - } - } - /** - * Observe a list of Array items. - */ - observeArray(value) { - for (let i = 0, l = value.length; i < l; i++) { - observe(value[i], false, this.mock); - } - } - } - // helpers - /** - * Attempt to create an observer instance for a value, - * returns the new observer if successfully observed, - * or the existing observer if the value already has one. - */ - function observe(value, shallow, ssrMockReactivity) { - if (!isObject(value) || isRef(value) || value instanceof VNode) { - return; - } - let ob; - if (hasOwn(value, '__ob__') && value.__ob__ instanceof Observer) { - ob = value.__ob__; - } - else if (shouldObserve && - (ssrMockReactivity || !isServerRendering()) && - (isArray(value) || isPlainObject(value)) && - Object.isExtensible(value) && - !value.__v_skip /* ReactiveFlags.SKIP */) { - ob = new Observer(value, shallow, ssrMockReactivity); - } - return ob; - } - /** - * Define a reactive property on an Object. - */ - function defineReactive(obj, key, val, customSetter, shallow, mock) { - const dep = new Dep(); - const property = Object.getOwnPropertyDescriptor(obj, key); - if (property && property.configurable === false) { - return; - } - // cater for pre-defined getter/setters - const getter = property && property.get; - const setter = property && property.set; - if ((!getter || setter) && - (val === NO_INIITIAL_VALUE || arguments.length === 2)) { - val = obj[key]; - } - let childOb = !shallow && observe(val, false, mock); - Object.defineProperty(obj, key, { - enumerable: true, - configurable: true, - get: function reactiveGetter() { - const value = getter ? getter.call(obj) : val; - if (Dep.target) { - { - dep.depend({ - target: obj, - type: "get" /* TrackOpTypes.GET */, - key - }); - } - if (childOb) { - childOb.dep.depend(); - if (isArray(value)) { - dependArray(value); - } - } - } - return isRef(value) && !shallow ? value.value : value; - }, - set: function reactiveSetter(newVal) { - const value = getter ? getter.call(obj) : val; - if (!hasChanged(value, newVal)) { - return; - } - if (customSetter) { - customSetter(); - } - if (setter) { - setter.call(obj, newVal); - } - else if (getter) { - // #7981: for accessor properties without setter - return; - } - else if (!shallow && isRef(value) && !isRef(newVal)) { - value.value = newVal; - return; - } - else { - val = newVal; - } - childOb = !shallow && observe(newVal, false, mock); - { - dep.notify({ - type: "set" /* TriggerOpTypes.SET */, - target: obj, - key, - newValue: newVal, - oldValue: value - }); - } - } - }); - return dep; - } - function set(target, key, val) { - if ((isUndef(target) || isPrimitive(target))) { - warn(`Cannot set reactive property on undefined, null, or primitive value: ${target}`); - } - if (isReadonly(target)) { - warn(`Set operation on key "${key}" failed: target is readonly.`); - return; - } - const ob = target.__ob__; - if (isArray(target) && isValidArrayIndex(key)) { - target.length = Math.max(target.length, key); - target.splice(key, 1, val); - // when mocking for SSR, array methods are not hijacked - if (ob && !ob.shallow && ob.mock) { - observe(val, false, true); - } - return val; - } - if (key in target && !(key in Object.prototype)) { - target[key] = val; - return val; - } - if (target._isVue || (ob && ob.vmCount)) { - warn('Avoid adding reactive properties to a Vue instance or its root $data ' + - 'at runtime - declare it upfront in the data option.'); - return val; - } - if (!ob) { - target[key] = val; - return val; - } - defineReactive(ob.value, key, val, undefined, ob.shallow, ob.mock); - { - ob.dep.notify({ - type: "add" /* TriggerOpTypes.ADD */, - target: target, - key, - newValue: val, - oldValue: undefined - }); - } - return val; - } - function del(target, key) { - if ((isUndef(target) || isPrimitive(target))) { - warn(`Cannot delete reactive property on undefined, null, or primitive value: ${target}`); - } - if (isArray(target) && isValidArrayIndex(key)) { - target.splice(key, 1); - return; - } - const ob = target.__ob__; - if (target._isVue || (ob && ob.vmCount)) { - warn('Avoid deleting properties on a Vue instance or its root $data ' + - '- just set it to null.'); - return; - } - if (isReadonly(target)) { - warn(`Delete operation on key "${key}" failed: target is readonly.`); - return; - } - if (!hasOwn(target, key)) { - return; - } - delete target[key]; - if (!ob) { - return; - } - { - ob.dep.notify({ - type: "delete" /* TriggerOpTypes.DELETE */, - target: target, - key - }); - } - } - /** - * Collect dependencies on array elements when the array is touched, since - * we cannot intercept array element access like property getters. - */ - function dependArray(value) { - for (let e, i = 0, l = value.length; i < l; i++) { - e = value[i]; - if (e && e.__ob__) { - e.__ob__.dep.depend(); - } - if (isArray(e)) { - dependArray(e); - } - } - } - - function reactive(target) { - makeReactive(target, false); - return target; - } - /** - * Return a shallowly-reactive copy of the original object, where only the root - * level properties are reactive. It also does not auto-unwrap refs (even at the - * root level). - */ - function shallowReactive(target) { - makeReactive(target, true); - def(target, "__v_isShallow" /* ReactiveFlags.IS_SHALLOW */, true); - return target; - } - function makeReactive(target, shallow) { - // if trying to observe a readonly proxy, return the readonly version. - if (!isReadonly(target)) { - { - if (isArray(target)) { - warn(`Avoid using Array as root value for ${shallow ? `shallowReactive()` : `reactive()`} as it cannot be tracked in watch() or watchEffect(). Use ${shallow ? `shallowRef()` : `ref()`} instead. This is a Vue-2-only limitation.`); - } - const existingOb = target && target.__ob__; - if (existingOb && existingOb.shallow !== shallow) { - warn(`Target is already a ${existingOb.shallow ? `` : `non-`}shallow reactive object, and cannot be converted to ${shallow ? `` : `non-`}shallow.`); - } - } - const ob = observe(target, shallow, isServerRendering() /* ssr mock reactivity */); - if (!ob) { - if (target == null || isPrimitive(target)) { - warn(`value cannot be made reactive: ${String(target)}`); - } - if (isCollectionType(target)) { - warn(`Vue 2 does not support reactive collection types such as Map or Set.`); - } - } - } - } - function isReactive(value) { - if (isReadonly(value)) { - return isReactive(value["__v_raw" /* ReactiveFlags.RAW */]); - } - return !!(value && value.__ob__); - } - function isShallow(value) { - return !!(value && value.__v_isShallow); - } - function isReadonly(value) { - return !!(value && value.__v_isReadonly); - } - function isProxy(value) { - return isReactive(value) || isReadonly(value); - } - function toRaw(observed) { - const raw = observed && observed["__v_raw" /* ReactiveFlags.RAW */]; - return raw ? toRaw(raw) : observed; - } - function markRaw(value) { - def(value, "__v_skip" /* ReactiveFlags.SKIP */, true); - return value; - } - /** - * @internal - */ - function isCollectionType(value) { - const type = toRawType(value); - return (type === 'Map' || type === 'WeakMap' || type === 'Set' || type === 'WeakSet'); - } - - /** - * @internal - */ - const RefFlag = `__v_isRef`; - function isRef(r) { - return !!(r && r.__v_isRef === true); - } - function ref$1(value) { - return createRef(value, false); - } - function shallowRef(value) { - return createRef(value, true); - } - function createRef(rawValue, shallow) { - if (isRef(rawValue)) { - return rawValue; - } - const ref = {}; - def(ref, RefFlag, true); - def(ref, "__v_isShallow" /* ReactiveFlags.IS_SHALLOW */, shallow); - def(ref, 'dep', defineReactive(ref, 'value', rawValue, null, shallow, isServerRendering())); - return ref; - } - function triggerRef(ref) { - if (!ref.dep) { - warn(`received object is not a triggerable ref.`); - } - { - ref.dep && - ref.dep.notify({ - type: "set" /* TriggerOpTypes.SET */, - target: ref, - key: 'value' - }); - } - } - function unref(ref) { - return isRef(ref) ? ref.value : ref; - } - function proxyRefs(objectWithRefs) { - if (isReactive(objectWithRefs)) { - return objectWithRefs; - } - const proxy = {}; - const keys = Object.keys(objectWithRefs); - for (let i = 0; i < keys.length; i++) { - proxyWithRefUnwrap(proxy, objectWithRefs, keys[i]); - } - return proxy; - } - function proxyWithRefUnwrap(target, source, key) { - Object.defineProperty(target, key, { - enumerable: true, - configurable: true, - get: () => { - const val = source[key]; - if (isRef(val)) { - return val.value; - } - else { - const ob = val && val.__ob__; - if (ob) - ob.dep.depend(); - return val; - } - }, - set: value => { - const oldValue = source[key]; - if (isRef(oldValue) && !isRef(value)) { - oldValue.value = value; - } - else { - source[key] = value; - } - } - }); - } - function customRef(factory) { - const dep = new Dep(); - const { get, set } = factory(() => { - { - dep.depend({ - target: ref, - type: "get" /* TrackOpTypes.GET */, - key: 'value' - }); - } - }, () => { - { - dep.notify({ - target: ref, - type: "set" /* TriggerOpTypes.SET */, - key: 'value' - }); - } - }); - const ref = { - get value() { - return get(); - }, - set value(newVal) { - set(newVal); - } - }; - def(ref, RefFlag, true); - return ref; - } - function toRefs(object) { - if (!isReactive(object)) { - warn(`toRefs() expects a reactive object but received a plain one.`); - } - const ret = isArray(object) ? new Array(object.length) : {}; - for (const key in object) { - ret[key] = toRef(object, key); - } - return ret; - } - function toRef(object, key, defaultValue) { - const val = object[key]; - if (isRef(val)) { - return val; - } - const ref = { - get value() { - const val = object[key]; - return val === undefined ? defaultValue : val; - }, - set value(newVal) { - object[key] = newVal; - } - }; - def(ref, RefFlag, true); - return ref; - } - - const rawToReadonlyFlag = `__v_rawToReadonly`; - const rawToShallowReadonlyFlag = `__v_rawToShallowReadonly`; - function readonly(target) { - return createReadonly(target, false); - } - function createReadonly(target, shallow) { - if (!isPlainObject(target)) { - { - if (isArray(target)) { - warn(`Vue 2 does not support readonly arrays.`); - } - else if (isCollectionType(target)) { - warn(`Vue 2 does not support readonly collection types such as Map or Set.`); - } - else { - warn(`value cannot be made readonly: ${typeof target}`); - } - } - return target; - } - // already a readonly object - if (isReadonly(target)) { - return target; - } - // already has a readonly proxy - const existingFlag = shallow ? rawToShallowReadonlyFlag : rawToReadonlyFlag; - const existingProxy = target[existingFlag]; - if (existingProxy) { - return existingProxy; - } - const proxy = Object.create(Object.getPrototypeOf(target)); - def(target, existingFlag, proxy); - def(proxy, "__v_isReadonly" /* ReactiveFlags.IS_READONLY */, true); - def(proxy, "__v_raw" /* ReactiveFlags.RAW */, target); - if (isRef(target)) { - def(proxy, RefFlag, true); - } - if (shallow || isShallow(target)) { - def(proxy, "__v_isShallow" /* ReactiveFlags.IS_SHALLOW */, true); - } - const keys = Object.keys(target); - for (let i = 0; i < keys.length; i++) { - defineReadonlyProperty(proxy, target, keys[i], shallow); - } - return proxy; - } - function defineReadonlyProperty(proxy, target, key, shallow) { - Object.defineProperty(proxy, key, { - enumerable: true, - configurable: true, - get() { - const val = target[key]; - return shallow || !isPlainObject(val) ? val : readonly(val); - }, - set() { - warn(`Set operation on key "${key}" failed: target is readonly.`); - } - }); - } - /** - * Returns a reactive-copy of the original object, where only the root level - * properties are readonly, and does NOT unwrap refs nor recursively convert - * returned properties. - * This is used for creating the props proxy object for stateful components. - */ - function shallowReadonly(target) { - return createReadonly(target, true); - } - - function computed(getterOrOptions, debugOptions) { - let getter; - let setter; - const onlyGetter = isFunction(getterOrOptions); - if (onlyGetter) { - getter = getterOrOptions; - setter = () => { - warn('Write operation failed: computed value is readonly'); - } - ; - } - else { - getter = getterOrOptions.get; - setter = getterOrOptions.set; - } - const watcher = isServerRendering() - ? null - : new Watcher(currentInstance, getter, noop, { lazy: true }); - if (watcher && debugOptions) { - watcher.onTrack = debugOptions.onTrack; - watcher.onTrigger = debugOptions.onTrigger; - } - const ref = { - // some libs rely on the presence effect for checking computed refs - // from normal refs, but the implementation doesn't matter - effect: watcher, - get value() { - if (watcher) { - if (watcher.dirty) { - watcher.evaluate(); - } - if (Dep.target) { - if (Dep.target.onTrack) { - Dep.target.onTrack({ - effect: Dep.target, - target: ref, - type: "get" /* TrackOpTypes.GET */, - key: 'value' - }); - } - watcher.depend(); - } - return watcher.value; - } - else { - return getter(); - } - }, - set value(newVal) { - setter(newVal); - } - }; - def(ref, RefFlag, true); - def(ref, "__v_isReadonly" /* ReactiveFlags.IS_READONLY */, onlyGetter); - return ref; - } - - const WATCHER = `watcher`; - const WATCHER_CB = `${WATCHER} callback`; - const WATCHER_GETTER = `${WATCHER} getter`; - const WATCHER_CLEANUP = `${WATCHER} cleanup`; - // Simple effect. - function watchEffect(effect, options) { - return doWatch(effect, null, options); - } - function watchPostEffect(effect, options) { - return doWatch(effect, null, (Object.assign(Object.assign({}, options), { flush: 'post' }) )); - } - function watchSyncEffect(effect, options) { - return doWatch(effect, null, (Object.assign(Object.assign({}, options), { flush: 'sync' }) )); - } - // initial value for watchers to trigger on undefined initial values - const INITIAL_WATCHER_VALUE = {}; - // implementation - function watch(source, cb, options) { - if (typeof cb !== 'function') { - warn(`\`watch(fn, options?)\` signature has been moved to a separate API. ` + - `Use \`watchEffect(fn, options?)\` instead. \`watch\` now only ` + - `supports \`watch(source, cb, options?) signature.`); - } - return doWatch(source, cb, options); - } - function doWatch(source, cb, { immediate, deep, flush = 'pre', onTrack, onTrigger } = emptyObject) { - if (!cb) { - if (immediate !== undefined) { - warn(`watch() "immediate" option is only respected when using the ` + - `watch(source, callback, options?) signature.`); - } - if (deep !== undefined) { - warn(`watch() "deep" option is only respected when using the ` + - `watch(source, callback, options?) signature.`); - } - } - const warnInvalidSource = (s) => { - warn(`Invalid watch source: ${s}. A watch source can only be a getter/effect ` + - `function, a ref, a reactive object, or an array of these types.`); - }; - const instance = currentInstance; - const call = (fn, type, args = null) => invokeWithErrorHandling(fn, null, args, instance, type); - let getter; - let forceTrigger = false; - let isMultiSource = false; - if (isRef(source)) { - getter = () => source.value; - forceTrigger = isShallow(source); - } - else if (isReactive(source)) { - getter = () => { - source.__ob__.dep.depend(); - return source; - }; - deep = true; - } - else if (isArray(source)) { - isMultiSource = true; - forceTrigger = source.some(s => isReactive(s) || isShallow(s)); - getter = () => source.map(s => { - if (isRef(s)) { - return s.value; - } - else if (isReactive(s)) { - return traverse(s); - } - else if (isFunction(s)) { - return call(s, WATCHER_GETTER); - } - else { - warnInvalidSource(s); - } - }); - } - else if (isFunction(source)) { - if (cb) { - // getter with cb - getter = () => call(source, WATCHER_GETTER); - } - else { - // no cb -> simple effect - getter = () => { - if (instance && instance._isDestroyed) { - return; - } - if (cleanup) { - cleanup(); - } - return call(source, WATCHER, [onCleanup]); - }; - } - } - else { - getter = noop; - warnInvalidSource(source); - } - if (cb && deep) { - const baseGetter = getter; - getter = () => traverse(baseGetter()); - } - let cleanup; - let onCleanup = (fn) => { - cleanup = watcher.onStop = () => { - call(fn, WATCHER_CLEANUP); - }; - }; - // in SSR there is no need to setup an actual effect, and it should be noop - // unless it's eager - if (isServerRendering()) { - // we will also not call the invalidate callback (+ runner is not set up) - onCleanup = noop; - if (!cb) { - getter(); - } - else if (immediate) { - call(cb, WATCHER_CB, [ - getter(), - isMultiSource ? [] : undefined, - onCleanup - ]); - } - return noop; - } - const watcher = new Watcher(currentInstance, getter, noop, { - lazy: true - }); - watcher.noRecurse = !cb; - let oldValue = isMultiSource ? [] : INITIAL_WATCHER_VALUE; - // overwrite default run - watcher.run = () => { - if (!watcher.active) { - return; - } - if (cb) { - // watch(source, cb) - const newValue = watcher.get(); - if (deep || - forceTrigger || - (isMultiSource - ? newValue.some((v, i) => hasChanged(v, oldValue[i])) - : hasChanged(newValue, oldValue))) { - // cleanup before running cb again - if (cleanup) { - cleanup(); - } - call(cb, WATCHER_CB, [ - newValue, - // pass undefined as the old value when it's changed for the first time - oldValue === INITIAL_WATCHER_VALUE ? undefined : oldValue, - onCleanup - ]); - oldValue = newValue; - } - } - else { - // watchEffect - watcher.get(); - } - }; - if (flush === 'sync') { - watcher.update = watcher.run; - } - else if (flush === 'post') { - watcher.post = true; - watcher.update = () => queueWatcher(watcher); - } - else { - // pre - watcher.update = () => { - if (instance && instance === currentInstance && !instance._isMounted) { - // pre-watcher triggered before - const buffer = instance._preWatchers || (instance._preWatchers = []); - if (buffer.indexOf(watcher) < 0) - buffer.push(watcher); - } - else { - queueWatcher(watcher); - } - }; - } - { - watcher.onTrack = onTrack; - watcher.onTrigger = onTrigger; - } - // initial run - if (cb) { - if (immediate) { - watcher.run(); - } - else { - oldValue = watcher.get(); - } - } - else if (flush === 'post' && instance) { - instance.$once('hook:mounted', () => watcher.get()); - } - else { - watcher.get(); - } - return () => { - watcher.teardown(); - }; - } - - let activeEffectScope; - class EffectScope { - constructor(detached = false) { - /** - * @internal - */ - this.active = true; - /** - * @internal - */ - this.effects = []; - /** - * @internal - */ - this.cleanups = []; - if (!detached && activeEffectScope) { - this.parent = activeEffectScope; - this.index = - (activeEffectScope.scopes || (activeEffectScope.scopes = [])).push(this) - 1; - } - } - run(fn) { - if (this.active) { - const currentEffectScope = activeEffectScope; - try { - activeEffectScope = this; - return fn(); - } - finally { - activeEffectScope = currentEffectScope; - } - } - else { - warn(`cannot run an inactive effect scope.`); - } - } - /** - * This should only be called on non-detached scopes - * @internal - */ - on() { - activeEffectScope = this; - } - /** - * This should only be called on non-detached scopes - * @internal - */ - off() { - activeEffectScope = this.parent; - } - stop(fromParent) { - if (this.active) { - let i, l; - for (i = 0, l = this.effects.length; i < l; i++) { - this.effects[i].teardown(); - } - for (i = 0, l = this.cleanups.length; i < l; i++) { - this.cleanups[i](); - } - if (this.scopes) { - for (i = 0, l = this.scopes.length; i < l; i++) { - this.scopes[i].stop(true); - } - } - // nested scope, dereference from parent to avoid memory leaks - if (this.parent && !fromParent) { - // optimized O(1) removal - const last = this.parent.scopes.pop(); - if (last && last !== this) { - this.parent.scopes[this.index] = last; - last.index = this.index; - } - } - this.active = false; - } - } - } - function effectScope(detached) { - return new EffectScope(detached); - } - /** - * @internal - */ - function recordEffectScope(effect, scope = activeEffectScope) { - if (scope && scope.active) { - scope.effects.push(effect); - } - } - function getCurrentScope() { - return activeEffectScope; - } - function onScopeDispose(fn) { - if (activeEffectScope) { - activeEffectScope.cleanups.push(fn); - } - else { - warn(`onScopeDispose() is called when there is no active effect scope` + - ` to be associated with.`); - } - } - - function provide(key, value) { - if (!currentInstance) { - { - warn(`provide() can only be used inside setup().`); - } - } - else { - // TS doesn't allow symbol as index type - resolveProvided(currentInstance)[key] = value; - } - } - function resolveProvided(vm) { - // by default an instance inherits its parent's provides object - // but when it needs to provide values of its own, it creates its - // own provides object using parent provides object as prototype. - // this way in `inject` we can simply look up injections from direct - // parent and let the prototype chain do the work. - const existing = vm._provided; - const parentProvides = vm.$parent && vm.$parent._provided; - if (parentProvides === existing) { - return (vm._provided = Object.create(parentProvides)); - } - else { - return existing; - } - } - function inject(key, defaultValue, treatDefaultAsFactory = false) { - // fallback to `currentRenderingInstance` so that this can be called in - // a functional component - const instance = currentInstance; - if (instance) { - // #2400 - // to support `app.use` plugins, - // fallback to appContext's `provides` if the instance is at root - const provides = instance.$parent && instance.$parent._provided; - if (provides && key in provides) { - // TS doesn't allow symbol as index type - return provides[key]; - } - else if (arguments.length > 1) { - return treatDefaultAsFactory && isFunction(defaultValue) - ? defaultValue.call(instance) - : defaultValue; - } - else { - warn(`injection "${String(key)}" not found.`); - } - } - else { - warn(`inject() can only be used inside setup() or functional components.`); - } - } - - const normalizeEvent = cached((name) => { - const passive = name.charAt(0) === '&'; - name = passive ? name.slice(1) : name; - const once = name.charAt(0) === '~'; // Prefixed last, checked first - name = once ? name.slice(1) : name; - const capture = name.charAt(0) === '!'; - name = capture ? name.slice(1) : name; - return { - name, - once, - capture, - passive - }; - }); - function createFnInvoker(fns, vm) { - function invoker() { - const fns = invoker.fns; - if (isArray(fns)) { - const cloned = fns.slice(); - for (let i = 0; i < cloned.length; i++) { - invokeWithErrorHandling(cloned[i], null, arguments, vm, `v-on handler`); - } - } - else { - // return handler return value for single handlers - return invokeWithErrorHandling(fns, null, arguments, vm, `v-on handler`); - } - } - invoker.fns = fns; - return invoker; - } - function updateListeners(on, oldOn, add, remove, createOnceHandler, vm) { - let name, cur, old, event; - for (name in on) { - cur = on[name]; - old = oldOn[name]; - event = normalizeEvent(name); - if (isUndef(cur)) { - warn(`Invalid handler for event "${event.name}": got ` + String(cur), vm); - } - else if (isUndef(old)) { - if (isUndef(cur.fns)) { - cur = on[name] = createFnInvoker(cur, vm); - } - if (isTrue(event.once)) { - cur = on[name] = createOnceHandler(event.name, cur, event.capture); - } - add(event.name, cur, event.capture, event.passive, event.params); - } - else if (cur !== old) { - old.fns = cur; - on[name] = old; - } - } - for (name in oldOn) { - if (isUndef(on[name])) { - event = normalizeEvent(name); - remove(event.name, oldOn[name], event.capture); - } - } - } - - function mergeVNodeHook(def, hookKey, hook) { - if (def instanceof VNode) { - def = def.data.hook || (def.data.hook = {}); - } - let invoker; - const oldHook = def[hookKey]; - function wrappedHook() { - hook.apply(this, arguments); - // important: remove merged hook to ensure it's called only once - // and prevent memory leak - remove$2(invoker.fns, wrappedHook); - } - if (isUndef(oldHook)) { - // no existing hook - invoker = createFnInvoker([wrappedHook]); - } - else { - /* istanbul ignore if */ - if (isDef(oldHook.fns) && isTrue(oldHook.merged)) { - // already a merged invoker - invoker = oldHook; - invoker.fns.push(wrappedHook); - } - else { - // existing plain hook - invoker = createFnInvoker([oldHook, wrappedHook]); - } - } - invoker.merged = true; - def[hookKey] = invoker; - } - - function extractPropsFromVNodeData(data, Ctor, tag) { - // we are only extracting raw values here. - // validation and default values are handled in the child - // component itself. - const propOptions = Ctor.options.props; - if (isUndef(propOptions)) { - return; - } - const res = {}; - const { attrs, props } = data; - if (isDef(attrs) || isDef(props)) { - for (const key in propOptions) { - const altKey = hyphenate(key); - { - const keyInLowerCase = key.toLowerCase(); - if (key !== keyInLowerCase && attrs && hasOwn(attrs, keyInLowerCase)) { - tip(`Prop "${keyInLowerCase}" is passed to component ` + - `${formatComponentName( - // @ts-expect-error tag is string - tag || Ctor)}, but the declared prop name is` + - ` "${key}". ` + - `Note that HTML attributes are case-insensitive and camelCased ` + - `props need to use their kebab-case equivalents when using in-DOM ` + - `templates. You should probably use "${altKey}" instead of "${key}".`); - } - } - checkProp(res, props, key, altKey, true) || - checkProp(res, attrs, key, altKey, false); - } - } - return res; - } - function checkProp(res, hash, key, altKey, preserve) { - if (isDef(hash)) { - if (hasOwn(hash, key)) { - res[key] = hash[key]; - if (!preserve) { - delete hash[key]; - } - return true; - } - else if (hasOwn(hash, altKey)) { - res[key] = hash[altKey]; - if (!preserve) { - delete hash[altKey]; - } - return true; - } - } - return false; - } - - // The template compiler attempts to minimize the need for normalization by - // statically analyzing the template at compile time. - // - // For plain HTML markup, normalization can be completely skipped because the - // generated render function is guaranteed to return Array. There are - // two cases where extra normalization is needed: - // 1. When the children contains components - because a functional component - // may return an Array instead of a single root. In this case, just a simple - // normalization is needed - if any child is an Array, we flatten the whole - // thing with Array.prototype.concat. It is guaranteed to be only 1-level deep - // because functional components already normalize their own children. - function simpleNormalizeChildren(children) { - for (let i = 0; i < children.length; i++) { - if (isArray(children[i])) { - return Array.prototype.concat.apply([], children); - } - } - return children; - } - // 2. When the children contains constructs that always generated nested Arrays, - // e.g.