diff --git a/js/photos-5.js b/js/photos-5.js
index 9dd971dc4..9b92a218c 100644
--- a/js/photos-5.js
+++ b/js/photos-5.js
@@ -48,6 +48,27 @@ function _asyncToGenerator(fn) { return function () { var self = this, args = ar
//
//
//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
/* harmony default export */ __webpack_exports__["default"] = ({
@@ -132,6 +153,51 @@ function _asyncToGenerator(fn) { return function () { var self = this, args = ar
/***/ }),
+/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js?!./src/components/Loader.vue?vue&type=script&lang=js&":
+/*!**********************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./src/components/Loader.vue?vue&type=script&lang=js& ***!
+ \**********************************************************************************************************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+/* harmony default export */ __webpack_exports__["default"] = ({
+ name: 'Loader'
+});
+
+/***/ }),
+
/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js?!./src/components/SeparatorVirtualGrid.vue?vue&type=script&lang=js&":
/*!************************************************************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./src/components/SeparatorVirtualGrid.vue?vue&type=script&lang=js& ***!
@@ -148,6 +214,28 @@ __webpack_require__.r(__webpack_exports__);
//
//
//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
/* harmony default export */ __webpack_exports__["default"] = ({
name: 'SeparatorVirtualGrid',
inheritAttrs: false,
@@ -180,8 +268,9 @@ __webpack_require__.r(__webpack_exports__);
/* harmony import */ var vue_virtual_grid__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! vue-virtual-grid */ "./node_modules/vue-virtual-grid/dist/virtual-grid.common.js");
/* harmony import */ var vue_virtual_grid__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(vue_virtual_grid__WEBPACK_IMPORTED_MODULE_6__);
/* harmony import */ var _components_Navigation__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../components/Navigation */ "./src/components/Navigation.vue");
-/* harmony import */ var _utils_CancelableRequest__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../utils/CancelableRequest */ "./src/utils/CancelableRequest.js");
-/* harmony import */ var _mixins_GridConfig__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../mixins/GridConfig */ "./src/mixins/GridConfig.js");
+/* harmony import */ var _components_Loader__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../components/Loader */ "./src/components/Loader.vue");
+/* harmony import */ var _utils_CancelableRequest__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../utils/CancelableRequest */ "./src/utils/CancelableRequest.js");
+/* harmony import */ var _mixins_GridConfig__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../mixins/GridConfig */ "./src/mixins/GridConfig.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); }); }; }
@@ -248,6 +337,9 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
//
//
//
+//
+//
+
@@ -265,7 +357,7 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
VirtualGrid: vue_virtual_grid__WEBPACK_IMPORTED_MODULE_6___default.a,
Navigation: _components_Navigation__WEBPACK_IMPORTED_MODULE_7__["default"]
},
- mixins: [_mixins_GridConfig__WEBPACK_IMPORTED_MODULE_9__["default"]],
+ mixins: [_mixins_GridConfig__WEBPACK_IMPORTED_MODULE_10__["default"]],
props: {
loading: {
type: Boolean,
@@ -290,7 +382,8 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
done: false,
error: null,
page: 0,
- lastSection: ''
+ lastSection: '',
+ loaderComponent: _components_Loader__WEBPACK_IMPORTED_MODULE_8__["default"]
};
},
computed: _objectSpread(_objectSpread({}, Object(vuex__WEBPACK_IMPORTED_MODULE_1__["mapGetters"])(['files', 'timeline'])), {}, {
@@ -424,7 +517,7 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
} // done loading even with errors
- _cancelableRequest = Object(_utils_CancelableRequest__WEBPACK_IMPORTED_MODULE_8__["default"])(_services_PhotoSearch__WEBPACK_IMPORTED_MODULE_2__["default"]), request = _cancelableRequest.request, cancel = _cancelableRequest.cancel;
+ _cancelableRequest = Object(_utils_CancelableRequest__WEBPACK_IMPORTED_MODULE_9__["default"])(_services_PhotoSearch__WEBPACK_IMPORTED_MODULE_2__["default"]), request = _cancelableRequest.request, cancel = _cancelableRequest.cancel;
_this4.cancelRequest = cancel;
numberOfImagesPerBatch = _this4.gridConfig.count * 5; // loading 5 rows
@@ -534,6 +627,24 @@ exports.push([module.i, "@charset \"UTF-8\";\n/**\n * @copyright Copyright (c) 2
module.exports = exports;
+/***/ }),
+
+/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js?!./node_modules/vue-loader/lib/index.js?!./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??ref--1-3!./node_modules/vue-loader/lib??vue-loader-options!./src/components/Loader.vue?vue&type=style&index=0&lang=scss& ***!
+ \*****************************************************************************************************************************************************************************************************************************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+// Imports
+var ___CSS_LOADER_API_IMPORT___ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
+exports = ___CSS_LOADER_API_IMPORT___(false);
+// Module
+exports.push([module.i, ".loader {\n display: grid;\n height: 60px;\n}\n", ""]);
+// Exports
+module.exports = exports;
+
+
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js?!./node_modules/vue-loader/lib/index.js?!./src/components/SeparatorVirtualGrid.vue?vue&type=style&index=0&id=39804afc&lang=scss&scoped=true&":
@@ -959,6 +1070,35 @@ render._withStripped = true
+/***/ }),
+
+/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./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??vue-loader-options!./src/components/Loader.vue?vue&type=template&id=04a0d67a& ***!
+ \************************************************************************************************************************************************************************************************/
+/*! exports provided: render, staticRenderFns */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; });
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return staticRenderFns; });
+var render = function() {
+ var _vm = this
+ var _h = _vm.$createElement
+ var _c = _vm._self._c || _h
+ return _c(
+ "div",
+ { staticClass: "loader", attrs: { icon: "loading" } },
+ [_vm._t("icon", [_c("span", { class: ["loading"] })])],
+ 2
+ )
+}
+var staticRenderFns = []
+render._withStripped = true
+
+
+
/***/ }),
/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./src/components/SeparatorVirtualGrid.vue?vue&type=template&id=39804afc&scoped=true&":
@@ -1057,7 +1197,8 @@ var render = function() {
"get-grid-gap": function() {
return _vm.gridConfig.gap
},
- "update-trigger-margin": 700
+ "update-trigger-margin": 700,
+ loader: _vm.loaderComponent
}
})
],
@@ -1096,6 +1237,27 @@ if(false) {}
/***/ }),
+/***/ "./node_modules/vue-style-loader/index.js!./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js?!./node_modules/vue-loader/lib/index.js?!./src/components/Loader.vue?vue&type=style&index=0&lang=scss&":
+/*!*************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/vue-style-loader!./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js??ref--1-3!./node_modules/vue-loader/lib??vue-loader-options!./src/components/Loader.vue?vue&type=style&index=0&lang=scss& ***!
+ \*************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+// style-loader: Adds some css to the DOM by adding a
diff --git a/src/components/SeparatorVirtualGrid.vue b/src/components/SeparatorVirtualGrid.vue
index c881469c8..cb48ca0c5 100644
--- a/src/components/SeparatorVirtualGrid.vue
+++ b/src/components/SeparatorVirtualGrid.vue
@@ -1,3 +1,25 @@
+
+
{{ item.injected.month }}
diff --git a/src/views/Timeline.vue b/src/views/Timeline.vue
index 6813b28a0..8c8123731 100644
--- a/src/views/Timeline.vue
+++ b/src/views/Timeline.vue
@@ -2,6 +2,7 @@
- @copyright Copyright (c) 2019 John Molakvoæ
-
- @author John Molakvoæ
+ - @author Corentin Mors
-
- @license GNU AGPL version 3 or any later version
-
@@ -49,7 +50,8 @@
:update-function="getContent"
:get-column-count="() => gridConfig.count"
:get-grid-gap="() => gridConfig.gap"
- :update-trigger-margin="700" />
+ :update-trigger-margin="700"
+ :loader="loaderComponent" />
@@ -65,6 +67,7 @@ import FileVirtualGrid from '../components/FileVirtualGrid'
import SeparatorVirtualGrid from '../components/SeparatorVirtualGrid'
import VirtualGrid from 'vue-virtual-grid'
import Navigation from '../components/Navigation'
+import Loader from '../components/Loader'
import cancelableRequest from '../utils/CancelableRequest'
import GridConfigMixin from '../mixins/GridConfig'
@@ -103,6 +106,7 @@ export default {
error: null,
page: 0,
lastSection: '',
+ loaderComponent: Loader,
}
},