aboutsummaryrefslogtreecommitdiffstats
path: root/dist/core-login.js
diff options
context:
space:
mode:
authorJohn Molakvoæ <skjnldsv@protonmail.com>2023-08-23 13:09:51 +0200
committerJohn Molakvoæ <skjnldsv@protonmail.com>2023-08-23 14:03:52 +0200
commit7d46eb027321df676f6c8c8ba58d3692be3faaef (patch)
treeb82a3f53997ce43e0e997f460ff4b878d12737d8 /dist/core-login.js
parent3e271d89f42d2400b6f81cbb984aba419f503b54 (diff)
downloadnextcloud-server-7d46eb027321df676f6c8c8ba58d3692be3faaef.tar.gz
nextcloud-server-7d46eb027321df676f6c8c8ba58d3692be3faaef.zip
chore(deps): remove unused is-svg
Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com>
Diffstat (limited to 'dist/core-login.js')
-rw-r--r--dist/core-login.js17469
1 files changed, 3 insertions, 17466 deletions
diff --git a/dist/core-login.js b/dist/core-login.js
index 6ddf62421e7..9fd7e4f1c10 100644
--- a/dist/core-login.js
+++ b/dist/core-login.js
@@ -1,17466 +1,3 @@
-/******/ (function() { // webpackBootstrap
-/******/ var __webpack_modules__ = ({
-
-/***/ "./core/src/OC/admin.js":
-/*!******************************!*\
- !*** ./core/src/OC/admin.js ***!
- \******************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ isUserAdmin: function() { return /* binding */ isUserAdmin; }
-/* harmony export */ });
-/**
- * @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>
- *
- * @author Christoph Wurst <christoph@winzerhof-wurst.at>
- * @author John Molakvoæ <skjnldsv@protonmail.com>
- *
- * @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 <http://www.gnu.org/licenses/>.
- *
- */
-
-var isAdmin = !!window._oc_isadmin;
-
-/**
- * Returns whether the current user is an administrator
- *
- * @return {boolean} true if the user is an admin, false otherwise
- * @since 9.0.0
- */
-var isUserAdmin = function isUserAdmin() {
- return isAdmin;
-};
-
-/***/ }),
-
-/***/ "./core/src/OC/appconfig.js":
-/*!**********************************!*\
- !*** ./core/src/OC/appconfig.js ***!
- \**********************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ AppConfig: function() { return /* binding */ AppConfig; },
-/* harmony export */ appConfig: function() { return /* binding */ appConfig; }
-/* harmony export */ });
-/* harmony import */ var _OCP_appconfig_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../OCP/appconfig.js */ "./core/src/OCP/appconfig.js");
-/**
- * @copyright Copyright (c) 2016 Joas Schilling <coding@schilljs.com>
- *
- * @author Christoph Wurst <christoph@winzerhof-wurst.at>
- * @author Joas Schilling <coding@schilljs.com>
- * @author John Molakvoæ <skjnldsv@protonmail.com>
- * @author Jörn Friedrich Dreyer <jfd@butonic.de>
- * @author Robin Appelman <robin@icewind.nl>
- * @author Vincent Petry <vincent@nextcloud.com>
- *
- * @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 <http://www.gnu.org/licenses/>.
- *
- */
-
-/* eslint-disable */
-
-var appConfig = window.oc_appconfig || {};
-
-/**
- * @namespace
- * @deprecated 16.0.0 Use OCP.AppConfig instead
- */
-var AppConfig = {
- /**
- * @deprecated Use OCP.AppConfig.getValue() instead
- */
- getValue: function getValue(app, key, defaultValue, callback) {
- (0,_OCP_appconfig_js__WEBPACK_IMPORTED_MODULE_0__.getValue)(app, key, defaultValue, {
- success: callback
- });
- },
- /**
- * @deprecated Use OCP.AppConfig.setValue() instead
- */
- setValue: function setValue(app, key, value) {
- (0,_OCP_appconfig_js__WEBPACK_IMPORTED_MODULE_0__.setValue)(app, key, value);
- },
- /**
- * @deprecated Use OCP.AppConfig.getApps() instead
- */
- getApps: function getApps(callback) {
- (0,_OCP_appconfig_js__WEBPACK_IMPORTED_MODULE_0__.getApps)({
- success: callback
- });
- },
- /**
- * @deprecated Use OCP.AppConfig.getKeys() instead
- */
- getKeys: function getKeys(app, callback) {
- (0,_OCP_appconfig_js__WEBPACK_IMPORTED_MODULE_0__.getKeys)(app, {
- success: callback
- });
- },
- /**
- * @deprecated Use OCP.AppConfig.deleteKey() instead
- */
- deleteKey: function deleteKey(app, key) {
- (0,_OCP_appconfig_js__WEBPACK_IMPORTED_MODULE_0__.deleteKey)(app, key);
- }
-};
-
-/***/ }),
-
-/***/ "./core/src/OC/apps.js":
-/*!*****************************!*\
- !*** ./core/src/OC/apps.js ***!
- \*****************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ registerAppsSlideToggle: function() { return /* binding */ registerAppsSlideToggle; }
-/* harmony export */ });
-/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! jquery */ "./node_modules/jquery/dist/jquery.js");
-/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);
-/**
- * @copyright Bernhard Posselt 2014
- *
- * @author Christoph Wurst <christoph@winzerhof-wurst.at>
- * @author John Molakvoæ <skjnldsv@protonmail.com>
- *
- * @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 <http://www.gnu.org/licenses/>.
- *
- */
-
-
-var dynamicSlideToggleEnabled = false;
-var Apps = {
- enableDynamicSlideToggle: function enableDynamicSlideToggle() {
- dynamicSlideToggleEnabled = true;
- }
-};
-
-/**
- * Shows the #app-sidebar and add .with-app-sidebar to subsequent siblings
- *
- * @param {object} [$el] sidebar element to show, defaults to $('#app-sidebar')
- */
-Apps.showAppSidebar = function ($el) {
- var $appSidebar = $el || jquery__WEBPACK_IMPORTED_MODULE_0___default()('#app-sidebar');
- $appSidebar.removeClass('disappear').show();
- jquery__WEBPACK_IMPORTED_MODULE_0___default()('#app-content').trigger(new (jquery__WEBPACK_IMPORTED_MODULE_0___default().Event)('appresized'));
-};
-
-/**
- * Shows the #app-sidebar and removes .with-app-sidebar from subsequent
- * siblings
- *
- * @param {object} [$el] sidebar element to hide, defaults to $('#app-sidebar')
- */
-Apps.hideAppSidebar = function ($el) {
- var $appSidebar = $el || jquery__WEBPACK_IMPORTED_MODULE_0___default()('#app-sidebar');
- $appSidebar.hide().addClass('disappear');
- jquery__WEBPACK_IMPORTED_MODULE_0___default()('#app-content').trigger(new (jquery__WEBPACK_IMPORTED_MODULE_0___default().Event)('appresized'));
-};
-
-/**
- * Provides a way to slide down a target area through a button and slide it
- * up if the user clicks somewhere else. Used for the news app settings and
- * add new field.
- *
- * Usage:
- * <button data-apps-slide-toggle=".slide-area">slide</button>
- * <div class=".slide-area" class="hidden">I'm sliding up</div>
- */
-var registerAppsSlideToggle = function registerAppsSlideToggle() {
- var buttons = jquery__WEBPACK_IMPORTED_MODULE_0___default()('[data-apps-slide-toggle]');
- if (buttons.length === 0) {
- jquery__WEBPACK_IMPORTED_MODULE_0___default()('#app-navigation').addClass('without-app-settings');
- }
- jquery__WEBPACK_IMPORTED_MODULE_0___default()(document).click(function (event) {
- if (dynamicSlideToggleEnabled) {
- buttons = jquery__WEBPACK_IMPORTED_MODULE_0___default()('[data-apps-slide-toggle]');
- }
- buttons.each(function (index, button) {
- var areaSelector = jquery__WEBPACK_IMPORTED_MODULE_0___default()(button).data('apps-slide-toggle');
- var area = jquery__WEBPACK_IMPORTED_MODULE_0___default()(areaSelector);
-
- /**
- *
- */
- function hideArea() {
- area.slideUp(OC.menuSpeed * 4, function () {
- area.trigger(new (jquery__WEBPACK_IMPORTED_MODULE_0___default().Event)('hide'));
- });
- area.removeClass('opened');
- jquery__WEBPACK_IMPORTED_MODULE_0___default()(button).removeClass('opened');
- jquery__WEBPACK_IMPORTED_MODULE_0___default()(button).attr('aria-expanded', 'false');
- }
-
- /**
- *
- */
- function showArea() {
- area.slideDown(OC.menuSpeed * 4, function () {
- area.trigger(new (jquery__WEBPACK_IMPORTED_MODULE_0___default().Event)('show'));
- });
- area.addClass('opened');
- jquery__WEBPACK_IMPORTED_MODULE_0___default()(button).addClass('opened');
- jquery__WEBPACK_IMPORTED_MODULE_0___default()(button).attr('aria-expanded', 'true');
- var input = jquery__WEBPACK_IMPORTED_MODULE_0___default()(areaSelector + ' [autofocus]');
- if (input.length === 1) {
- input.focus();
- }
- }
-
- // do nothing if the area is animated
- if (!area.is(':animated')) {
- // button toggles the area
- if (jquery__WEBPACK_IMPORTED_MODULE_0___default()(button).is(jquery__WEBPACK_IMPORTED_MODULE_0___default()(event.target).closest('[data-apps-slide-toggle]'))) {
- if (area.is(':visible')) {
- hideArea();
- } else {
- showArea();
- }
-
- // all other areas that have not been clicked but are open
- // should be slid up
- } else {
- var closest = jquery__WEBPACK_IMPORTED_MODULE_0___default()(event.target).closest(areaSelector);
- if (area.is(':visible') && closest[0] !== area[0]) {
- hideArea();
- }
- }
- }
- });
- });
-};
-/* harmony default export */ __webpack_exports__["default"] = (Apps);
-
-/***/ }),
-
-/***/ "./core/src/OC/appswebroots.js":
-/*!*************************************!*\
- !*** ./core/src/OC/appswebroots.js ***!
- \*************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/**
- * @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>
- *
- * @author Christoph Wurst <christoph@winzerhof-wurst.at>
- *
- * @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 <http://www.gnu.org/licenses/>.
- *
- */
-
-var appswebroots = window._oc_appswebroots !== undefined ? window._oc_appswebroots : false;
-/* harmony default export */ __webpack_exports__["default"] = (appswebroots);
-
-/***/ }),
-
-/***/ "./core/src/OC/backbone-webdav.js":
-/*!****************************************!*\
- !*** ./core/src/OC/backbone-webdav.js ***!
- \****************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ davCall: function() { return /* binding */ davCall; },
-/* harmony export */ davSync: function() { return /* binding */ davSync; }
-/* harmony export */ });
-/* harmony import */ var underscore__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! underscore */ "./node_modules/underscore/modules/index-all.js");
-/* harmony import */ var davclient_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! davclient.js */ "./node_modules/davclient.js/lib/client.js");
-/* harmony import */ var davclient_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(davclient_js__WEBPACK_IMPORTED_MODULE_1__);
-/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js");
-/**
- * Copyright (c) 2015
- *
- * @author Christoph Wurst <christoph@winzerhof-wurst.at>
- * @author John Molakvoæ <skjnldsv@protonmail.com>
- * @author Julius Härtl <jus@bitgrid.net>
- *
- * @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 <http://www.gnu.org/licenses/>.
- *
- */
-
-/* eslint-disable */
-
-
-var methodMap = {
- create: 'POST',
- update: 'PROPPATCH',
- patch: 'PROPPATCH',
- delete: 'DELETE',
- read: 'PROPFIND'
-};
-
-// Throw an error when a URL is needed, and none is supplied.
-function urlError() {
- throw new Error('A "url" property or function must be specified');
-}
-
-/**
- * Convert a single propfind result to JSON
- *
- * @param {Object} result
- * @param {Object} davProperties properties mapping
- */
-function parsePropFindResult(result, davProperties) {
- if (underscore__WEBPACK_IMPORTED_MODULE_0__["default"].isArray(result)) {
- return underscore__WEBPACK_IMPORTED_MODULE_0__["default"].map(result, function (subResult) {
- return parsePropFindResult(subResult, davProperties);
- });
- }
- var props = {
- href: result.href
- };
- underscore__WEBPACK_IMPORTED_MODULE_0__["default"].each(result.propStat, function (propStat) {
- if (propStat.status !== 'HTTP/1.1 200 OK') {
- return;
- }
- for (var key in propStat.properties) {
- var propKey = key;
- if (key in davProperties) {
- propKey = davProperties[key];
- }
- props[propKey] = propStat.properties[key];
- }
- });
- if (!props.id) {
- // parse id from href
- props.id = parseIdFromLocation(props.href);
- }
- return props;
-}
-
-/**
- * Parse ID from location
- *
- * @param {string} url url
- * @returns {string} id
- */
-function parseIdFromLocation(url) {
- var queryPos = url.indexOf('?');
- if (queryPos > 0) {
- url = url.substr(0, queryPos);
- }
- var parts = url.split('/');
- var result;
- do {
- result = parts[parts.length - 1];
- parts.pop();
- // note: first result can be empty when there is a trailing slash,
- // so we take the part before that
- } while (!result && parts.length > 0);
- return result;
-}
-function isSuccessStatus(status) {
- return status >= 200 && status <= 299;
-}
-function convertModelAttributesToDavProperties(attrs, davProperties) {
- var props = {};
- var key;
- for (key in attrs) {
- var changedProp = davProperties[key];
- var value = attrs[key];
- if (!changedProp) {
- console.warn('No matching DAV property for property "' + key);
- changedProp = key;
- }
- if (underscore__WEBPACK_IMPORTED_MODULE_0__["default"].isBoolean(value) || underscore__WEBPACK_IMPORTED_MODULE_0__["default"].isNumber(value)) {
- // convert to string
- value = '' + value;
- }
- props[changedProp] = value;
- }
- return props;
-}
-function callPropFind(client, options, model, headers) {
- return client.propFind(options.url, underscore__WEBPACK_IMPORTED_MODULE_0__["default"].values(options.davProperties) || [], options.depth, headers).then(function (response) {
- if (isSuccessStatus(response.status)) {
- if (underscore__WEBPACK_IMPORTED_MODULE_0__["default"].isFunction(options.success)) {
- var propsMapping = underscore__WEBPACK_IMPORTED_MODULE_0__["default"].invert(options.davProperties);
- var results = parsePropFindResult(response.body, propsMapping);
- if (options.depth > 0) {
- // discard root entry
- results.shift();
- }
- options.success(results);
- }
- } else if (underscore__WEBPACK_IMPORTED_MODULE_0__["default"].isFunction(options.error)) {
- options.error(response);
- }
- });
-}
-function callPropPatch(client, options, model, headers) {
- return client.propPatch(options.url, convertModelAttributesToDavProperties(model.changed, options.davProperties), headers).then(function (result) {
- if (isSuccessStatus(result.status)) {
- if (underscore__WEBPACK_IMPORTED_MODULE_0__["default"].isFunction(options.success)) {
- // pass the object's own values because the server
- // does not return the updated model
- options.success(model.toJSON());
- }
- } else if (underscore__WEBPACK_IMPORTED_MODULE_0__["default"].isFunction(options.error)) {
- options.error(result);
- }
- });
-}
-function callMkCol(client, options, model, headers) {
- // call MKCOL without data, followed by PROPPATCH
- return client.request(options.type, options.url, headers, null).then(function (result) {
- if (!isSuccessStatus(result.status)) {
- if (underscore__WEBPACK_IMPORTED_MODULE_0__["default"].isFunction(options.error)) {
- options.error(result);
- }
- return;
- }
- callPropPatch(client, options, model, headers);
- });
-}
-function callMethod(client, options, model, headers) {
- headers['Content-Type'] = 'application/json';
- return client.request(options.type, options.url, headers, options.data).then(function (result) {
- if (!isSuccessStatus(result.status)) {
- if (underscore__WEBPACK_IMPORTED_MODULE_0__["default"].isFunction(options.error)) {
- options.error(result);
- }
- return;
- }
- if (underscore__WEBPACK_IMPORTED_MODULE_0__["default"].isFunction(options.success)) {
- if (options.type === 'PUT' || options.type === 'POST' || options.type === 'MKCOL') {
- // pass the object's own values because the server
- // does not return anything
- var responseJson = result.body || model.toJSON();
- var locationHeader = result.xhr.getResponseHeader('Content-Location');
- if (options.type === 'POST' && locationHeader) {
- responseJson.id = parseIdFromLocation(locationHeader);
- }
- options.success(responseJson);
- return;
- }
- // if multi-status, parse
- if (result.status === 207) {
- var propsMapping = underscore__WEBPACK_IMPORTED_MODULE_0__["default"].invert(options.davProperties);
- options.success(parsePropFindResult(result.body, propsMapping));
- } else {
- options.success(result.body);
- }
- }
- });
-}
-var davCall = function davCall(options, model) {
- var client = new davclient_js__WEBPACK_IMPORTED_MODULE_1__.dav.Client({
- baseUrl: options.url,
- xmlNamespaces: underscore__WEBPACK_IMPORTED_MODULE_0__["default"].extend({
- 'DAV:': 'd',
- 'http://owncloud.org/ns': 'oc'
- }, options.xmlNamespaces || {})
- });
- client.resolveUrl = function () {
- return options.url;
- };
- var headers = underscore__WEBPACK_IMPORTED_MODULE_0__["default"].extend({
- 'X-Requested-With': 'XMLHttpRequest',
- 'requesttoken': OC.requestToken
- }, options.headers);
- if (options.type === 'PROPFIND') {
- return callPropFind(client, options, model, headers);
- } else if (options.type === 'PROPPATCH') {
- return callPropPatch(client, options, model, headers);
- } else if (options.type === 'MKCOL') {
- return callMkCol(client, options, model, headers);
- } else {
- return callMethod(client, options, model, headers);
- }
-};
-
-/**
- * DAV transport
- */
-var davSync = function davSync(Backbone) {
- return function (method, model, options) {
- var params = {
- type: methodMap[method] || method
- };
- var isCollection = model instanceof Backbone.Collection;
- if (method === 'update') {
- // if a model has an inner collection, it must define an
- // attribute "hasInnerCollection" that evaluates to true
- if (model.hasInnerCollection) {
- // if the model itself is a Webdav collection, use MKCOL
- params.type = 'MKCOL';
- } else if (model.usePUT || model.collection && model.collection.usePUT) {
- // use PUT instead of PROPPATCH
- params.type = 'PUT';
- }
- }
-
- // Ensure that we have a URL.
- if (!options.url) {
- params.url = underscore__WEBPACK_IMPORTED_MODULE_0__["default"].result(model, 'url') || urlError();
- }
-
- // Ensure that we have the appropriate request data.
- if (options.data == null && model && (method === 'create' || method === 'update' || method === 'patch')) {
- params.data = JSON.stringify(options.attrs || model.toJSON(options));
- }
-
- // Don't process data on a non-GET request.
- if (params.type !== 'PROPFIND') {
- params.processData = false;
- }
- if (params.type === 'PROPFIND' || params.type === 'PROPPATCH') {
- var davProperties = model.davProperties;
- if (!davProperties && model.model) {
- // use dav properties from model in case of collection
- davProperties = model.model.prototype.davProperties;
- }
- if (davProperties) {
- if (underscore__WEBPACK_IMPORTED_MODULE_0__["default"].isFunction(davProperties)) {
- params.davProperties = davProperties.call(model);
- } else {
- params.davProperties = davProperties;
- }
- }
- params.davProperties = underscore__WEBPACK_IMPORTED_MODULE_0__["default"].extend(params.davProperties || {}, options.davProperties);
- if (underscore__WEBPACK_IMPORTED_MODULE_0__["default"].isUndefined(options.depth)) {
- if (isCollection) {
- options.depth = 1;
- } else {
- options.depth = 0;
- }
- }
- }
-
- // Pass along `textStatus` and `errorThrown` from jQuery.
- var error = options.error;
- options.error = function (xhr, textStatus, errorThrown) {
- options.textStatus = textStatus;
- options.errorThrown = errorThrown;
- if (error) {
- error.call(options.context, xhr, textStatus, errorThrown);
- }
- };
-
- // Make the request, allowing the user to override any Ajax options.
- var xhr = options.xhr = Backbone.davCall(underscore__WEBPACK_IMPORTED_MODULE_0__["default"].extend(params, options), model);
- model.trigger('request', model, xhr, options);
- return xhr;
- };
-};
-
-/***/ }),
-
-/***/ "./core/src/OC/backbone.js":
-/*!*********************************!*\
- !*** ./core/src/OC/backbone.js ***!
- \*********************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var backbone__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! backbone */ "./node_modules/backbone/backbone.js");
-/* harmony import */ var backbone__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(backbone__WEBPACK_IMPORTED_MODULE_0__);
-/* harmony import */ var _backbone_webdav_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./backbone-webdav.js */ "./core/src/OC/backbone-webdav.js");
-/**
- * @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>
- *
- * @author Christoph Wurst <christoph@winzerhof-wurst.at>
- * @author John Molakvoæ <skjnldsv@protonmail.com>
- *
- * @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 <http://www.gnu.org/licenses/>.
- *
- */
-
-
-
-var Backbone = backbone__WEBPACK_IMPORTED_MODULE_0___default().noConflict();
-
-// Patch Backbone for DAV
-Object.assign(Backbone, {
- davCall: _backbone_webdav_js__WEBPACK_IMPORTED_MODULE_1__.davCall,
- davSync: (0,_backbone_webdav_js__WEBPACK_IMPORTED_MODULE_1__.davSync)(Backbone)
-});
-/* harmony default export */ __webpack_exports__["default"] = (Backbone);
-
-/***/ }),
-
-/***/ "./core/src/OC/capabilities.js":
-/*!*************************************!*\
- !*** ./core/src/OC/capabilities.js ***!
- \*************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ getCapabilities: function() { return /* binding */ getCapabilities; }
-/* harmony export */ });
-/* harmony import */ var _nextcloud_capabilities__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/capabilities */ "./node_modules/@nextcloud/capabilities/dist/index.js");
-/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js");
-/**
- * @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>
- *
- * @author Christoph Wurst <christoph@winzerhof-wurst.at>
- * @author John Molakvoæ <skjnldsv@protonmail.com>
- * @author Roeland Jago Douma <roeland@famdouma.nl>
- *
- * @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 <http://www.gnu.org/licenses/>.
- *
- */
-
-
-
-/**
- * Returns the capabilities
- *
- * @return {Array} capabilities
- *
- * @since 14.0.0
- */
-var getCapabilities = function getCapabilities() {
- OC.debug && console.warn('OC.getCapabilities is deprecated and will be removed in Nextcloud 21. See @nextcloud/capabilities');
- return (0,_nextcloud_capabilities__WEBPACK_IMPORTED_MODULE_0__.getCapabilities)();
-};
-
-/***/ }),
-
-/***/ "./core/src/OC/config.js":
-/*!*******************************!*\
- !*** ./core/src/OC/config.js ***!
- \*******************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/**
- * @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>
- *
- * @author Christoph Wurst <christoph@winzerhof-wurst.at>
- *
- * @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 <http://www.gnu.org/licenses/>.
- *
- */
-
-var config = window._oc_config || {};
-/* harmony default export */ __webpack_exports__["default"] = (config);
-
-/***/ }),
-
-/***/ "./core/src/OC/constants.js":
-/*!**********************************!*\
- !*** ./core/src/OC/constants.js ***!
- \**********************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ PERMISSION_ALL: function() { return /* binding */ PERMISSION_ALL; },
-/* harmony export */ PERMISSION_CREATE: function() { return /* binding */ PERMISSION_CREATE; },
-/* harmony export */ PERMISSION_DELETE: function() { return /* binding */ PERMISSION_DELETE; },
-/* harmony export */ PERMISSION_NONE: function() { return /* binding */ PERMISSION_NONE; },
-/* harmony export */ PERMISSION_READ: function() { return /* binding */ PERMISSION_READ; },
-/* harmony export */ PERMISSION_SHARE: function() { return /* binding */ PERMISSION_SHARE; },
-/* harmony export */ PERMISSION_UPDATE: function() { return /* binding */ PERMISSION_UPDATE; },
-/* harmony export */ TAG_FAVORITE: function() { return /* binding */ TAG_FAVORITE; },
-/* harmony export */ coreApps: function() { return /* binding */ coreApps; },
-/* harmony export */ menuSpeed: function() { return /* binding */ menuSpeed; }
-/* harmony export */ });
-/**
- * @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>
- *
- * @author Christoph Wurst <christoph@winzerhof-wurst.at>
- * @author John Molakvoæ <skjnldsv@protonmail.com>
- *
- * @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 <http://www.gnu.org/licenses/>.
- *
- */
-
-var coreApps = ['', 'admin', 'log', 'core/search', 'core', '3rdparty'];
-var menuSpeed = 50;
-var PERMISSION_NONE = 0;
-var PERMISSION_CREATE = 4;
-var PERMISSION_READ = 1;
-var PERMISSION_UPDATE = 2;
-var PERMISSION_DELETE = 8;
-var PERMISSION_SHARE = 16;
-var PERMISSION_ALL = 31;
-var TAG_FAVORITE = '_$!<Favorite>!$_';
-
-/***/ }),
-
-/***/ "./core/src/OC/contactsmenu.js":
-/*!*************************************!*\
- !*** ./core/src/OC/contactsmenu.js ***!
- \*************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var underscore__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! underscore */ "./node_modules/underscore/modules/index-all.js");
-/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! jquery */ "./node_modules/jquery/dist/jquery.js");
-/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_1__);
-/* harmony import */ var backbone__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! backbone */ "./node_modules/backbone/backbone.js");
-/* harmony import */ var backbone__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(backbone__WEBPACK_IMPORTED_MODULE_2__);
-/* harmony import */ var _index_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./index.js */ "./core/src/OC/index.js");
-/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js");
-/**
- * @copyright 2017 Christoph Wurst <christoph@winzerhof-wurst.at>
- *
- * @author Christoph Wurst <christoph@winzerhof-wurst.at>
- * @author John Molakvoæ <skjnldsv@protonmail.com>
- * @author Roeland Jago Douma <roeland@famdouma.nl>
- *
- * @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 <http://www.gnu.org/licenses/>.
- *
- */
-
-/* eslint-disable */
-
-
-
-
-
-/**
- * @class Contact
- */
-var Contact = backbone__WEBPACK_IMPORTED_MODULE_2__.Model.extend({
- defaults: {
- fullName: '',
- lastMessage: '',
- actions: [],
- hasOneAction: false,
- hasTwoActions: false,
- hasManyActions: false
- },
- /**
- * @returns {undefined}
- */
- initialize: function initialize() {
- // Add needed property for easier template rendering
- if (this.get('actions').length === 0) {
- this.set('hasOneAction', true);
- } else if (this.get('actions').length === 1) {
- this.set('hasTwoActions', true);
- this.set('secondAction', this.get('actions')[0]);
- } else {
- this.set('hasManyActions', true);
- }
- var fullName = this.get('fullName');
- if (this.get('avatar') && fullName) {
- this.set('avatarLabel', t('core', 'Avatar of {fullName}', {
- fullName: fullName
- }));
- }
- }
-});
-
-/**
- * @class ContactCollection
- * @private
- */
-var ContactCollection = backbone__WEBPACK_IMPORTED_MODULE_2__.Collection.extend({
- model: Contact
-});
-
-/**
- * @class ContactsListView
- * @private
- */
-var ContactsListView = backbone__WEBPACK_IMPORTED_MODULE_2__.View.extend({
- /** @type {ContactCollection} */
- _collection: undefined,
- /** @type {array} */
- _subViews: [],
- /** @type {string} */
- tagName: 'ul',
- /**
- * @param {object} options
- * @returns {undefined}
- */
- initialize: function initialize(options) {
- this._collection = options.collection;
- },
- /**
- * @returns {self}
- */
- render: function render() {
- var self = this;
- self.$el.html('');
- self._subViews = [];
- self._collection.forEach(function (contact) {
- var item = new ContactsListItemView({
- model: contact
- });
- item.render();
- self.$el.append(item.$el);
- item.on('toggle:actionmenu', self._onChildActionMenuToggle, self);
- self._subViews.push(item);
- });
- return self;
- },
- /**
- * Event callback to propagate opening (another) entry's action menu
- *
- * @param {type} $src
- * @returns {undefined}
- */
- _onChildActionMenuToggle: function _onChildActionMenuToggle($src) {
- this._subViews.forEach(function (view) {
- view.trigger('parent:toggle:actionmenu', $src);
- });
- }
-});
-
-/**
- * @class ContactsListItemView
- * @private
- */
-var ContactsListItemView = backbone__WEBPACK_IMPORTED_MODULE_2__.View.extend({
- /** @type {string} */
- className: 'contact',
- /** @type {string} */
- tagName: 'li',
- /** @type {undefined|function} */
- _template: undefined,
- /** @type {Contact} */
- _model: undefined,
- /** @type {boolean} */
- _actionMenuShown: false,
- events: {
- 'click .icon-more': '_onToggleActionsMenu'
- },
- contactTemplate: __webpack_require__(/*! ./contactsmenu/contact.handlebars */ "./core/src/OC/contactsmenu/contact.handlebars"),
- /**
- * @param {object} data
- * @returns {undefined}
- */
- template: function template(data) {
- return this.contactTemplate(data);
- },
- /**
- * @param {object} options
- * @returns {undefined}
- */
- initialize: function initialize(options) {
- this._model = options.model;
- this.on('parent:toggle:actionmenu', this._onOtherActionMenuOpened, this);
- },
- /**
- * @returns {self}
- */
- render: function render() {
- this.$el.html(this.template({
- contact: this._model.toJSON()
- }));
- this.delegateEvents();
-
- // Show placeholder if no avatar is available (avatar is rendered as img, not div)
- this.$('div.avatar').imageplaceholder(this._model.get('fullName'));
- return this;
- },
- /**
- * Toggle the visibility of the action popover menu
- *
- * @private
- * @returns {undefined}
- */
- _onToggleActionsMenu: function _onToggleActionsMenu() {
- this._actionMenuShown = !this._actionMenuShown;
- if (this._actionMenuShown) {
- this.$('.menu').show();
- } else {
- this.$('.menu').hide();
- }
- this.trigger('toggle:actionmenu', this.$el);
- },
- /**
- * @private
- * @argument {jQuery} $src
- * @returns {undefined}
- */
- _onOtherActionMenuOpened: function _onOtherActionMenuOpened($src) {
- if (this.$el.is($src)) {
- // Ignore
- return;
- }
- this._actionMenuShown = false;
- this.$('.menu').hide();
- }
-});
-
-/**
- * @class ContactsMenuView
- * @private
- */
-var ContactsMenuView = backbone__WEBPACK_IMPORTED_MODULE_2__.View.extend({
- /** @type {undefined|function} */
- _loadingTemplate: undefined,
- /** @type {undefined|function} */
- _errorTemplate: undefined,
- /** @type {undefined|function} */
- _contentTemplate: undefined,
- /** @type {undefined|function} */
- _contactsTemplate: undefined,
- /** @type {undefined|ContactCollection} */
- _contacts: undefined,
- /** @type {string} */
- _searchTerm: '',
- events: {
- 'input #contactsmenu-search': '_onSearch'
- },
- templates: {
- loading: __webpack_require__(/*! ./contactsmenu/loading.handlebars */ "./core/src/OC/contactsmenu/loading.handlebars"),
- error: __webpack_require__(/*! ./contactsmenu/error.handlebars */ "./core/src/OC/contactsmenu/error.handlebars"),
- menu: __webpack_require__(/*! ./contactsmenu/menu.handlebars */ "./core/src/OC/contactsmenu/menu.handlebars"),
- list: __webpack_require__(/*! ./contactsmenu/list.handlebars */ "./core/src/OC/contactsmenu/list.handlebars")
- },
- /**
- * @returns {undefined}
- */
- _onSearch: underscore__WEBPACK_IMPORTED_MODULE_0__["default"].debounce(function (e) {
- var searchTerm = this.$('#contactsmenu-search').val();
- // IE11 triggers an 'input' event after the view has been rendered
- // resulting in an endless loading loop. To prevent this, we remember
- // the last search term to savely ignore some events
- // See https://github.com/nextcloud/server/issues/5281
- if (searchTerm !== this._searchTerm) {
- this.trigger('search', this.$('#contactsmenu-search').val());
- this._searchTerm = searchTerm;
- }
- }, 700),
- /**
- * @param {object} data
- * @returns {string}
- */
- loadingTemplate: function loadingTemplate(data) {
- return this.templates.loading(data);
- },
- /**
- * @param {object} data
- * @returns {string}
- */
- errorTemplate: function errorTemplate(data) {
- return this.templates.error(underscore__WEBPACK_IMPORTED_MODULE_0__["default"].extend({
- couldNotLoadText: t('core', 'Could not load your contacts')
- }, data));
- },
- /**
- * @param {object} data
- * @returns {string}
- */
- contentTemplate: function contentTemplate(data) {
- return this.templates.menu(underscore__WEBPACK_IMPORTED_MODULE_0__["default"].extend({
- searchContactsText: t('core', 'Search contacts …')
- }, data));
- },
- /**
- * @param {object} data
- * @returns {string}
- */
- contactsTemplate: function contactsTemplate(data) {
- return this.templates.list(underscore__WEBPACK_IMPORTED_MODULE_0__["default"].extend({
- noContactsFoundText: t('core', 'No contacts found'),
- showAllContactsText: t('core', 'Show all contacts …'),
- contactsAppMgmtText: t('core', 'Install the Contacts app')
- }, data));
- },
- /**
- * @param {object} options
- * @returns {undefined}
- */
- initialize: function initialize(options) {
- this.options = options;
- },
- /**
- * @param {string} text
- * @returns {undefined}
- */
- showLoading: function showLoading(text) {
- this.render();
- this._contacts = undefined;
- this.$('.content').html(this.loadingTemplate({
- loadingText: text
- }));
- },
- /**
- * @returns {undefined}
- */
- showError: function showError() {
- this.render();
- this._contacts = undefined;
- this.$('.content').html(this.errorTemplate());
- },
- /**
- * @param {object} viewData
- * @param {string} searchTerm
- * @returns {undefined}
- */
- showContacts: function showContacts(viewData, searchTerm) {
- this._contacts = viewData.contacts;
- this.render({
- contacts: viewData.contacts
- });
- var list = new ContactsListView({
- collection: viewData.contacts
- });
- list.render();
- this.$('.content').html(this.contactsTemplate({
- contacts: viewData.contacts,
- searchTerm: searchTerm,
- contactsAppEnabled: viewData.contactsAppEnabled,
- contactsAppURL: _index_js__WEBPACK_IMPORTED_MODULE_3__["default"].generateUrl('/apps/contacts'),
- canInstallApp: _index_js__WEBPACK_IMPORTED_MODULE_3__["default"].isUserAdmin(),
- contactsAppMgmtURL: _index_js__WEBPACK_IMPORTED_MODULE_3__["default"].generateUrl('/settings/apps/social/contacts')
- }));
- this.$('#contactsmenu-contacts').html(list.$el);
- },
- /**
- * @param {object} data
- * @returns {self}
- */
- render: function render(data) {
- var searchVal = this.$('#contactsmenu-search').val();
- this.$el.html(this.contentTemplate(data));
-
- // Focus search
- this.$('#contactsmenu-search').val(searchVal);
- this.$('#contactsmenu-search').focus();
- return this;
- }
-});
-
-/**
- * @param {Object} options
- * @param {string} options.el
- * @class ContactsMenu
- * @memberOf OC
- */
-var ContactsMenu = function ContactsMenu(options) {
- this.initialize(options);
-};
-ContactsMenu.prototype = {
- /** @type {string} */
- $el: undefined,
- /** @type {ContactsMenuView} */
- _view: undefined,
- /** @type {Promise} */
- _contactsPromise: undefined,
- /**
- * @param {Object} options
- * @param {string} options.el - the selector of the element to render the menu in
- * @returns {undefined}
- */
- initialize: function initialize(options) {
- this.$el = jquery__WEBPACK_IMPORTED_MODULE_1___default()(options.el);
- this._view = new ContactsMenuView({
- el: this.$el
- });
- this._view.on('search', function (searchTerm) {
- this.loadContacts(searchTerm);
- }, this);
- },
- /**
- * @private
- * @param {string|undefined} searchTerm
- * @returns {Promise}
- */
- _getContacts: function _getContacts(searchTerm) {
- var url = _index_js__WEBPACK_IMPORTED_MODULE_3__["default"].generateUrl('/contactsmenu/contacts');
- return Promise.resolve(jquery__WEBPACK_IMPORTED_MODULE_1___default().ajax(url, {
- method: 'POST',
- data: {
- filter: searchTerm
- }
- }));
- },
- /**
- * @param {string|undefined} searchTerm
- * @returns {undefined}
- */
- loadContacts: function loadContacts(searchTerm) {
- var self = this;
- if (!self._contactsPromise) {
- self._contactsPromise = self._getContacts(searchTerm);
- }
- if (underscore__WEBPACK_IMPORTED_MODULE_0__["default"].isUndefined(searchTerm) || searchTerm === '') {
- self._view.showLoading(t('core', 'Loading your contacts …'));
- } else {
- self._view.showLoading(t('core', 'Looking for {term} …', {
- term: searchTerm
- }));
- }
- return self._contactsPromise.then(function (data) {
- // Convert contact entries to Backbone collection
- data.contacts = new ContactCollection(data.contacts);
- self._view.showContacts(data, searchTerm);
- }, function (e) {
- self._view.showError();
- console.error('There was an error loading your contacts', e);
- }).then(function () {
- // Delete promise, so that contacts are fetched again when the
- // menu is opened the next time.
- delete self._contactsPromise;
- }).catch(console.error.bind(this));
- }
-};
-/* harmony default export */ __webpack_exports__["default"] = (ContactsMenu);
-
-/***/ }),
-
-/***/ "./core/src/OC/currentuser.js":
-/*!************************************!*\
- !*** ./core/src/OC/currentuser.js ***!
- \************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ currentUser: function() { return /* binding */ currentUser; },
-/* harmony export */ getCurrentUser: function() { return /* binding */ getCurrentUser; }
-/* harmony export */ });
-/**
- * @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>
- *
- * @author Christoph Wurst <christoph@winzerhof-wurst.at>
- * @author Joas Schilling <coding@schilljs.com>
- *
- * @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 <http://www.gnu.org/licenses/>.
- *
- */
-
-var rawUid = document.getElementsByTagName('head')[0].getAttribute('data-user');
-var displayName = document.getElementsByTagName('head')[0].getAttribute('data-user-displayname');
-var currentUser = rawUid !== undefined ? rawUid : false;
-var getCurrentUser = function getCurrentUser() {
- return {
- uid: currentUser,
- displayName: displayName
- };
-};
-
-/***/ }),
-
-/***/ "./core/src/OC/debug.js":
-/*!******************************!*\
- !*** ./core/src/OC/debug.js ***!
- \******************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ debug: function() { return /* binding */ debug; }
-/* harmony export */ });
-/**
- * @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>
- *
- * @author Christoph Wurst <christoph@winzerhof-wurst.at>
- *
- * @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 <http://www.gnu.org/licenses/>.
- *
- */
-
-var base = window._oc_debug;
-var debug = base;
-
-/***/ }),
-
-/***/ "./core/src/OC/dialogs.js":
-/*!********************************!*\
- !*** ./core/src/OC/dialogs.js ***!
- \********************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var underscore__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! underscore */ "./node_modules/underscore/modules/index-all.js");
-/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! jquery */ "./node_modules/jquery/dist/jquery.js");
-/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_1__);
-/* harmony import */ var _index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./index.js */ "./core/src/OC/index.js");
-/* harmony import */ var _OCA_index_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../OCA/index.js */ "./core/src/OCA/index.js");
-/* harmony import */ var _Util_a11y_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../Util/a11y.js */ "./core/src/Util/a11y.js");
-/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js");
-function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, "_invoke", { value: makeInvokeMethod(innerFn, self, context) }), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, "_invoke", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }
-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 _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); }
-/**
- * @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>
- * @copyright Copyright (c) 2019 Gary Kim <gary@garykim.dev>
- *
- * @author Bartek Przybylski <bart.p.pl@gmail.com>
- * @author Christopher Schäpers <kondou@ts.unde.re>
- * @author Christoph Wurst <christoph@winzerhof-wurst.at>
- * @author Daniel Calviño Sánchez <danxuliu@gmail.com>
- * @author Daniel Kesselberg <mail@danielkesselberg.de>
- * @author Florian Schunk <florian.schunk@rwth-aachen.de>
- * @author Gary Kim <gary@garykim.dev>
- * @author Hendrik Leppelsack <hendrik@leppelsack.de>
- * @author Jan-Christoph Borchardt <hey@jancborchardt.net>
- * @author Joas Schilling <coding@schilljs.com>
- * @author John Molakvoæ <skjnldsv@protonmail.com>
- * @author Jörn Friedrich Dreyer <jfd@butonic.de>
- * @author Julius Härtl <jus@bitgrid.net>
- * @author Loïc Hermann <loic.hermann@sciam.fr>
- * @author Morris Jobke <hey@morrisjobke.de>
- * @author Olivier Paroz <github@oparoz.com>
- * @author Robin Appelman <robin@icewind.nl>
- * @author Roeland Jago Douma <roeland@famdouma.nl>
- * @author Sujith Haridasan <Sujith_Haridasan@mentor.com>
- * @author Thomas Citharel <nextcloud@tcit.fr>
- * @author Thomas Müller <thomas.mueller@tmit.eu>
- * @author Thomas Tanghus <thomas@tanghus.net>
- * @author Vincent Petry <vincent@nextcloud.com>
- *
- * @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 <http://www.gnu.org/licenses/>.
- *
- */
-
-/* eslint-disable */
-
-
-
-
-
-
-/**
- * this class to ease the usage of jquery dialogs
- */
-var Dialogs = {
- // dialog button types
- YES_NO_BUTTONS: 70,
- OK_BUTTONS: 71,
- FILEPICKER_TYPE_CHOOSE: 1,
- FILEPICKER_TYPE_MOVE: 2,
- FILEPICKER_TYPE_COPY: 3,
- FILEPICKER_TYPE_COPY_MOVE: 4,
- FILEPICKER_TYPE_CUSTOM: 5,
- // used to name each dialog
- dialogsCounter: 0,
- /**
- * displays alert dialog
- * @param {string} text content of dialog
- * @param {string} title dialog title
- * @param {function} callback which will be triggered when user presses OK
- * @param {boolean} [modal] make the dialog modal
- */
- alert: function alert(text, title, callback, modal) {
- this.message(text, title, 'alert', Dialogs.OK_BUTTON, callback, modal);
- },
- /**
- * displays info dialog
- * @param {string} text content of dialog
- * @param {string} title dialog title
- * @param {function} callback which will be triggered when user presses OK
- * @param {boolean} [modal] make the dialog modal
- */
- info: function info(text, title, callback, modal) {
- this.message(text, title, 'info', Dialogs.OK_BUTTON, callback, modal);
- },
- /**
- * displays confirmation dialog
- * @param {string} text content of dialog
- * @param {string} title dialog title
- * @param {function} callback which will be triggered when user presses OK (true or false would be passed to callback respectively)
- * @param {boolean} [modal] make the dialog modal
- * @returns {Promise}
- */
- confirm: function confirm(text, title, callback, modal) {
- return this.message(text, title, 'notice', Dialogs.YES_NO_BUTTONS, callback, modal);
- },
- /**
- * displays confirmation dialog
- * @param {string} text content of dialog
- * @param {string} title dialog title
- * @param {(number|{type: number, confirm: string, cancel: string, confirmClasses: string})} buttons text content of buttons
- * @param {function} callback which will be triggered when user presses OK (true or false would be passed to callback respectively)
- * @param {boolean} [modal] make the dialog modal
- * @returns {Promise}
- */
- confirmDestructive: function confirmDestructive(text, title, buttons, callback, modal) {
- return this.message(text, title, 'none', buttons, callback, modal === undefined ? true : modal);
- },
- /**
- * displays confirmation dialog
- * @param {string} text content of dialog
- * @param {string} title dialog title
- * @param {function} callback which will be triggered when user presses OK (true or false would be passed to callback respectively)
- * @param {boolean} [modal] make the dialog modal
- * @returns {Promise}
- */
- confirmHtml: function confirmHtml(text, title, callback, modal) {
- return this.message(text, title, 'notice', Dialogs.YES_NO_BUTTONS, callback, modal, true);
- },
- /**
- * displays prompt dialog
- * @param {string} text content of dialog
- * @param {string} title dialog title
- * @param {function} callback which will be triggered when user presses OK (true or false would be passed to callback respectively)
- * @param {boolean} [modal] make the dialog modal
- * @param {string} name name of the input field
- * @param {boolean} password whether the input should be a password input
- * @returns {Promise}
- */
- prompt: function prompt(text, title, callback, modal, name, password) {
- return jquery__WEBPACK_IMPORTED_MODULE_1___default().when(this._getMessageTemplate()).then(function ($tmpl) {
- var dialogName = 'oc-dialog-' + Dialogs.dialogsCounter + '-content';
- var dialogId = '#' + dialogName;
- var $dlg = $tmpl.octemplate({
- dialog_name: dialogName,
- title: title,
- message: text,
- type: 'notice'
- });
- var input = jquery__WEBPACK_IMPORTED_MODULE_1___default()('<input/>');
- input.attr('type', password ? 'password' : 'text').attr('id', dialogName + '-input').attr('placeholder', name);
- var label = jquery__WEBPACK_IMPORTED_MODULE_1___default()('<label/>').attr('for', dialogName + '-input').text(name + ': ');
- $dlg.append(label);
- $dlg.append(input);
- if (modal === undefined) {
- modal = false;
- }
- jquery__WEBPACK_IMPORTED_MODULE_1___default()('body').append($dlg);
-
- // wrap callback in _.once():
- // only call callback once and not twice (button handler and close
- // event) but call it for the close event, if ESC or the x is hit
- if (callback !== undefined) {
- callback = underscore__WEBPACK_IMPORTED_MODULE_0__["default"].once(callback);
- }
- var buttonlist = [{
- text: t('core', 'No'),
- click: function click() {
- if (callback !== undefined) {
- // eslint-disable-next-line standard/no-callback-literal
- callback(false, input.val());
- }
- jquery__WEBPACK_IMPORTED_MODULE_1___default()(dialogId).ocdialog('close');
- }
- }, {
- text: t('core', 'Yes'),
- click: function click() {
- if (callback !== undefined) {
- // eslint-disable-next-line standard/no-callback-literal
- callback(true, input.val());
- }
- jquery__WEBPACK_IMPORTED_MODULE_1___default()(dialogId).ocdialog('close');
- },
- defaultButton: true
- }];
- jquery__WEBPACK_IMPORTED_MODULE_1___default()(dialogId).ocdialog({
- closeOnEscape: true,
- modal: modal,
- buttons: buttonlist,
- close: function close() {
- // callback is already fired if Yes/No is clicked directly
- if (callback !== undefined) {
- // eslint-disable-next-line standard/no-callback-literal
- callback(false, input.val());
- }
- }
- });
- input.focus();
- Dialogs.dialogsCounter++;
- });
- },
- /**
- * show a file picker to pick a file from
- *
- * In order to pick several types of mime types they need to be passed as an
- * array of strings.
- *
- * When no mime type filter is given only files can be selected. In order to
- * be able to select both files and folders "['*', 'httpd/unix-directory']"
- * should be used instead.
- *
- * @param {string} title dialog title
- * @param {function} callback which will be triggered when user presses Choose
- * @param {boolean} [multiselect] whether it should be possible to select multiple files
- * @param {string[]} [mimetypeFilter] mimetype to filter by - directories will always be included
- * @param {boolean} [modal] make the dialog modal
- * @param {string} [type] Type of file picker : Choose, copy, move, copy and move
- * @param {string} [path] path to the folder that the the file can be picket from
- * @param {Object} [options] additonal options that need to be set
- * @param {Function} [options.filter] filter function for advanced filtering
- */
- filepicker: function filepicker(title, callback, multiselect, mimetypeFilter, modal, type, path, options) {
- var self = this;
- this.filepicker.sortField = 'name';
- this.filepicker.sortOrder = 'asc';
- // avoid opening the picker twice
- if (this.filepicker.loading) {
- return;
- }
- if (type === undefined) {
- type = this.FILEPICKER_TYPE_CHOOSE;
- }
- var emptyText = t('core', 'No files in here');
- var newText = t('files', 'New folder');
- if (type === this.FILEPICKER_TYPE_COPY || type === this.FILEPICKER_TYPE_MOVE || type === this.FILEPICKER_TYPE_COPY_MOVE) {
- emptyText = t('core', 'No more subfolders in here');
- }
- this.filepicker.loading = true;
- this.filepicker.filesClient = _OCA_index_js__WEBPACK_IMPORTED_MODULE_3__["default"].Sharing && _OCA_index_js__WEBPACK_IMPORTED_MODULE_3__["default"].Sharing.PublicApp && _OCA_index_js__WEBPACK_IMPORTED_MODULE_3__["default"].Sharing.PublicApp.fileList ? _OCA_index_js__WEBPACK_IMPORTED_MODULE_3__["default"].Sharing.PublicApp.fileList.filesClient : _index_js__WEBPACK_IMPORTED_MODULE_2__["default"].Files.getClient();
- this.filelist = null;
- path = path || '';
- options = Object.assign({
- allowDirectoryChooser: false
- }, options);
- jquery__WEBPACK_IMPORTED_MODULE_1___default().when(this._getFilePickerTemplate()).then(function ($tmpl) {
- var _options$target, _options;
- self.filepicker.loading = false;
- var dialogName = 'oc-dialog-filepicker-content';
- if (self.$filePicker) {
- self.$filePicker.ocdialog('close');
- }
- if (mimetypeFilter === undefined || mimetypeFilter === null) {
- mimetypeFilter = [];
- }
- if (typeof mimetypeFilter === 'string') {
- mimetypeFilter = [mimetypeFilter];
- }
- self.$filePicker = $tmpl.octemplate({
- dialog_name: dialogName,
- title: title,
- emptytext: emptyText,
- newtext: newText,
- nameCol: t('core', 'Name'),
- sizeCol: t('core', 'Size'),
- modifiedCol: t('core', 'Modified')
- }).data('path', path).data('multiselect', multiselect).data('mimetype', mimetypeFilter).data('allowDirectoryChooser', options.allowDirectoryChooser);
- if (typeof options.filter === 'function') {
- self.$filePicker.data('filter', options.filter);
- }
- if (modal === undefined) {
- modal = false;
- }
- if (multiselect === undefined) {
- multiselect = false;
- }
- jquery__WEBPACK_IMPORTED_MODULE_1___default()((_options$target = (_options = options) === null || _options === void 0 ? void 0 : _options.target) !== null && _options$target !== void 0 ? _options$target : 'body').prepend(self.$filePicker);
- self.$showGridView = jquery__WEBPACK_IMPORTED_MODULE_1___default()('button#picker-showgridview');
- self.$showGridView.on('click keydown', function (event) {
- if ((0,_Util_a11y_js__WEBPACK_IMPORTED_MODULE_4__.isA11yActivation)(event)) {
- self._onGridviewChange();
- }
- });
- self._getGridSettings();
- var newButton = self.$filePicker.find('.actions.creatable .button-add');
- if (type === self.FILEPICKER_TYPE_CHOOSE && !options.allowDirectoryChooser) {
- self.$filePicker.find('.actions.creatable').hide();
- }
- newButton.on('focus', function () {
- self.$filePicker.ocdialog('setEnterCallback', function (event) {
- event.stopImmediatePropagation();
- event.preventDefault();
- newButton.click();
- });
- });
- newButton.on('blur', function () {
- self.$filePicker.ocdialog('unsetEnterCallback');
- });
- _index_js__WEBPACK_IMPORTED_MODULE_2__["default"].registerMenu(newButton, self.$filePicker.find('.menu'), function () {
- $input.tooltip('hide');
- $input.focus();
- self.$filePicker.ocdialog('setEnterCallback', function (event) {
- event.stopImmediatePropagation();
- event.preventDefault();
- self.$filePicker.submit();
- });
- var newName = $input.val();
- var lastPos = newName.lastIndexOf('.');
- if (lastPos === -1) {
- lastPos = newName.length;
- }
- $input.selectRange(0, lastPos);
- });
- var $form = self.$filePicker.find('.filenameform');
- var $input = $form.find('input[type=\'text\']');
- var $submit = $form.find('input[type=\'submit\']');
- $input.on('keydown', function (event) {
- if ((0,_Util_a11y_js__WEBPACK_IMPORTED_MODULE_4__.isA11yActivation)(event)) {
- event.stopImmediatePropagation();
- event.preventDefault();
- $form.submit();
- }
- });
- $submit.on('click', function (event) {
- event.stopImmediatePropagation();
- event.preventDefault();
- $form.submit();
- });
-
- /**
- * Checks whether the given file name is valid.
- *
- * @param name file name to check
- * @return true if the file name is valid.
- * @throws a string exception with an error message if
- * the file name is not valid
- *
- * NOTE: This function is duplicated in the files app:
- * https://github.com/nextcloud/server/blob/b9bc2417e7a8dc81feb0abe20359bedaf864f790/apps/files/js/files.js#L127-L148
- */
- var isFileNameValid = function isFileNameValid(name) {
- var trimmedName = name.trim();
- if (trimmedName === '.' || trimmedName === '..') {
- throw t('files', '"{name}" is an invalid file name.', {
- name: name
- });
- } else if (trimmedName.length === 0) {
- throw t('files', 'File name cannot be empty.');
- } else if (trimmedName.indexOf('/') !== -1) {
- throw t('files', '"/" is not allowed inside a file name.');
- } else if (!!trimmedName.match(_index_js__WEBPACK_IMPORTED_MODULE_2__["default"].config.blacklist_files_regex)) {
- throw t('files', '"{name}" is not an allowed filetype', {
- name: name
- });
- }
- return true;
- };
- var checkInput = function checkInput() {
- var filename = $input.val();
- try {
- if (!isFileNameValid(filename)) {
- // isFileNameValid(filename) throws an exception itself
- } else if (self.filelist.find(function (file) {
- return file.name === this;
- }, filename)) {
- throw t('files', '{newName} already exists', {
- newName: filename
- }, undefined, {
- escape: false
- });
- } else {
- return true;
- }
- } catch (error) {
- $input.attr('title', error);
- $input.tooltip({
- placement: 'right',
- trigger: 'manual',
- 'container': '.newFolderMenu'
- });
- $input.tooltip('_fixTitle');
- $input.tooltip('show');
- $input.addClass('error');
- }
- return false;
- };
- $form.on('submit', function (event) {
- event.stopPropagation();
- event.preventDefault();
- if (checkInput()) {
- var newname = $input.val();
- self.filepicker.filesClient.createDirectory(self.$filePicker.data('path') + "/" + newname).always(function (status) {
- self._fillFilePicker(self.$filePicker.data('path') + "/" + newname, type);
- });
- _index_js__WEBPACK_IMPORTED_MODULE_2__["default"].hideMenus();
- self.$filePicker.ocdialog('unsetEnterCallback');
- self.$filePicker.click();
- $input.val(newText);
- }
- });
- $input.on('input', function (event) {
- $input.tooltip('hide');
- });
- self.$filePicker.ready(function () {
- self.$fileListHeader = self.$filePicker.find('.filelist thead tr');
- self.$filelist = self.$filePicker.find('.filelist tbody');
- self.$filelistContainer = self.$filePicker.find('.filelist-container');
- self.$dirTree = self.$filePicker.find('.dirtree');
- self.$dirTree.on('click keydown', '.crumb', self, function (event) {
- if ((0,_Util_a11y_js__WEBPACK_IMPORTED_MODULE_4__.isA11yActivation)(event)) {
- self._handleTreeListSelect(event, type);
- }
- });
- self.$filelist.on('click keydown', 'tr', function (event) {
- if ((0,_Util_a11y_js__WEBPACK_IMPORTED_MODULE_4__.isA11yActivation)(event)) {
- self._handlePickerClick(event, jquery__WEBPACK_IMPORTED_MODULE_1___default()(this), type);
- }
- });
- self.$fileListHeader.on('click keydown', 'a', function (event) {
- if ((0,_Util_a11y_js__WEBPACK_IMPORTED_MODULE_4__.isA11yActivation)(event)) {
- var dir = self.$filePicker.data('path');
- self.filepicker.sortField = jquery__WEBPACK_IMPORTED_MODULE_1___default()(event.currentTarget).data('sort');
- self.filepicker.sortOrder = self.filepicker.sortOrder === 'asc' ? 'desc' : 'asc';
- self._fillFilePicker(dir, type);
- }
- });
- self._fillFilePicker(path, type);
- });
-
- // build buttons
- var functionToCall = function functionToCall(returnType) {
- if (callback !== undefined) {
- var datapath;
- if (multiselect === true) {
- datapath = [];
- self.$filelist.find('tr.filepicker_element_selected').each(function (index, element) {
- datapath.push(self.$filePicker.data('path') + '/' + jquery__WEBPACK_IMPORTED_MODULE_1___default()(element).data('entryname'));
- });
- } else {
- datapath = self.$filePicker.data('path');
- var selectedName = self.$filelist.find('tr.filepicker_element_selected').data('entryname');
- if (selectedName) {
- datapath += '/' + selectedName;
- }
- }
- callback(datapath, returnType);
- self.$filePicker.ocdialog('close');
- }
- };
- var chooseCallback = function chooseCallback() {
- functionToCall(Dialogs.FILEPICKER_TYPE_CHOOSE);
- };
- var copyCallback = function copyCallback() {
- functionToCall(Dialogs.FILEPICKER_TYPE_COPY);
- };
- var moveCallback = function moveCallback() {
- functionToCall(Dialogs.FILEPICKER_TYPE_MOVE);
- };
- var buttonlist = [];
- if (type === Dialogs.FILEPICKER_TYPE_CHOOSE) {
- buttonlist.push({
- text: t('core', 'Choose'),
- click: chooseCallback,
- defaultButton: true
- });
- } else if (type === Dialogs.FILEPICKER_TYPE_CUSTOM) {
- options.buttons.forEach(function (button) {
- buttonlist.push({
- text: button.text,
- click: function click() {
- functionToCall(button.type);
- },
- defaultButton: button.defaultButton
- });
- });
- } else {
- if (type === Dialogs.FILEPICKER_TYPE_COPY || type === Dialogs.FILEPICKER_TYPE_COPY_MOVE) {
- buttonlist.push({
- text: t('core', 'Copy'),
- click: copyCallback,
- defaultButton: false
- });
- }
- if (type === Dialogs.FILEPICKER_TYPE_MOVE || type === Dialogs.FILEPICKER_TYPE_COPY_MOVE) {
- buttonlist.push({
- text: t('core', 'Move'),
- click: moveCallback,
- defaultButton: true
- });
- }
- }
- self.$filePicker.ocdialog({
- closeOnEscape: true,
- // max-width of 600
- width: 600,
- height: 500,
- modal: modal,
- buttons: buttonlist,
- style: {
- buttons: 'aside'
- },
- close: function close() {
- try {
- jquery__WEBPACK_IMPORTED_MODULE_1___default()(this).ocdialog('destroy').remove();
- } catch (e) {}
- self.$filePicker = null;
- }
- });
-
- // We can access primary class only from oc-dialog.
- // Hence this is one of the approach to get the choose button.
- var getOcDialog = self.$filePicker.closest('.oc-dialog');
- var buttonEnableDisable = getOcDialog.find('.primary');
- if (self.$filePicker.data('mimetype').indexOf('httpd/unix-directory') !== -1 || self.$filePicker.data('allowDirectoryChooser')) {
- buttonEnableDisable.prop('disabled', false);
- } else {
- buttonEnableDisable.prop('disabled', true);
- }
- }).fail(function (status, error) {
- // If the method is called while navigating away
- // from the page, it is probably not needed ;)
- self.filepicker.loading = false;
- if (status !== 0) {
- alert(t('core', 'Error loading file picker template: {error}', {
- error: error
- }));
- }
- });
- },
- /**
- * Displays raw dialog
- * You better use a wrapper instead ...
- */
- message: function message(content, title, dialogType, buttons, callback, modal, allowHtml) {
- return jquery__WEBPACK_IMPORTED_MODULE_1___default().when(this._getMessageTemplate()).then(function ($tmpl) {
- var dialogName = 'oc-dialog-' + Dialogs.dialogsCounter + '-content';
- var dialogId = '#' + dialogName;
- var $dlg = $tmpl.octemplate({
- dialog_name: dialogName,
- title: title,
- message: content,
- type: dialogType
- }, allowHtml ? {
- escapeFunction: ''
- } : {});
- if (modal === undefined) {
- modal = false;
- }
- jquery__WEBPACK_IMPORTED_MODULE_1___default()('body').append($dlg);
- var buttonlist = [];
- switch (buttons) {
- case Dialogs.YES_NO_BUTTONS:
- buttonlist = [{
- text: t('core', 'No'),
- click: function click() {
- if (callback !== undefined) {
- callback(false);
- }
- jquery__WEBPACK_IMPORTED_MODULE_1___default()(dialogId).ocdialog('close');
- }
- }, {
- text: t('core', 'Yes'),
- click: function click() {
- if (callback !== undefined) {
- callback(true);
- }
- jquery__WEBPACK_IMPORTED_MODULE_1___default()(dialogId).ocdialog('close');
- },
- defaultButton: true
- }];
- break;
- case Dialogs.OK_BUTTON:
- var functionToCall = function functionToCall() {
- jquery__WEBPACK_IMPORTED_MODULE_1___default()(dialogId).ocdialog('close');
- if (callback !== undefined) {
- callback();
- }
- };
- buttonlist[0] = {
- text: t('core', 'OK'),
- click: functionToCall,
- defaultButton: true
- };
- break;
- default:
- if (_typeof(buttons) === 'object') {
- switch (buttons.type) {
- case Dialogs.YES_NO_BUTTONS:
- buttonlist = [{
- text: buttons.cancel || t('core', 'No'),
- click: function click() {
- if (callback !== undefined) {
- callback(false);
- }
- jquery__WEBPACK_IMPORTED_MODULE_1___default()(dialogId).ocdialog('close');
- }
- }, {
- text: buttons.confirm || t('core', 'Yes'),
- click: function click() {
- if (callback !== undefined) {
- callback(true);
- }
- jquery__WEBPACK_IMPORTED_MODULE_1___default()(dialogId).ocdialog('close');
- },
- defaultButton: true,
- classes: buttons.confirmClasses
- }];
- break;
- }
- }
- break;
- }
- jquery__WEBPACK_IMPORTED_MODULE_1___default()(dialogId).ocdialog({
- closeOnEscape: true,
- closeCallback: function closeCallback() {
- callback && callback(false);
- },
- modal: modal,
- buttons: buttonlist
- });
- Dialogs.dialogsCounter++;
- }).fail(function (status, error) {
- // If the method is called while navigating away from
- // the page, we still want to deliver the message.
- if (status === 0) {
- alert(title + ': ' + content);
- } else {
- alert(t('core', 'Error loading message template: {error}', {
- error: error
- }));
- }
- });
- },
- _fileexistsshown: false,
- /**
- * Displays file exists dialog
- * @param {object} data upload object
- * @param {object} original file with name, size and mtime
- * @param {object} replacement file with name, size and mtime
- * @param {object} controller with onCancel, onSkip, onReplace and onRename methods
- * @returns {Promise} jquery promise that resolves after the dialog template was loaded
- */
- fileexists: function fileexists(data, original, replacement, controller) {
- var self = this;
- var dialogDeferred = new (jquery__WEBPACK_IMPORTED_MODULE_1___default().Deferred)();
- var getCroppedPreview = function getCroppedPreview(file) {
- var deferred = new (jquery__WEBPACK_IMPORTED_MODULE_1___default().Deferred)();
- // Only process image files.
- var type = file.type && file.type.split('/').shift();
- if (window.FileReader && type === 'image') {
- var reader = new FileReader();
- reader.onload = function (e) {
- var blob = new Blob([e.target.result]);
- window.URL = window.URL || window.webkitURL;
- var originalUrl = window.URL.createObjectURL(blob);
- var image = new Image();
- image.src = originalUrl;
- image.onload = function () {
- var url = crop(image);
- deferred.resolve(url);
- };
- };
- reader.readAsArrayBuffer(file);
- } else {
- deferred.reject();
- }
- return deferred;
- };
- var crop = function crop(img) {
- var canvas = document.createElement('canvas');
- var targetSize = 96;
- var width = img.width;
- var height = img.height;
- var x;
- var y;
- var size;
-
- // Calculate the width and height, constraining the proportions
- if (width > height) {
- y = 0;
- x = (width - height) / 2;
- } else {
- y = (height - width) / 2;
- x = 0;
- }
- size = Math.min(width, height);
-
- // Set canvas size to the cropped area
- canvas.width = size;
- canvas.height = size;
- var ctx = canvas.getContext('2d');
- ctx.drawImage(img, x, y, size, size, 0, 0, size, size);
-
- // Resize the canvas to match the destination (right size uses 96px)
- resampleHermite(canvas, size, size, targetSize, targetSize);
- return canvas.toDataURL('image/png', 0.7);
- };
-
- /**
- * Fast image resize/resample using Hermite filter with JavaScript.
- *
- * @author: ViliusL
- *
- * @param {*} canvas
- * @param {number} W
- * @param {number} H
- * @param {number} W2
- * @param {number} H2
- */
- var resampleHermite = function resampleHermite(canvas, W, H, W2, H2) {
- W2 = Math.round(W2);
- H2 = Math.round(H2);
- var img = canvas.getContext('2d').getImageData(0, 0, W, H);
- var img2 = canvas.getContext('2d').getImageData(0, 0, W2, H2);
- var data = img.data;
- var data2 = img2.data;
- var ratio_w = W / W2;
- var ratio_h = H / H2;
- var ratio_w_half = Math.ceil(ratio_w / 2);
- var ratio_h_half = Math.ceil(ratio_h / 2);
- for (var j = 0; j < H2; j++) {
- for (var i = 0; i < W2; i++) {
- var x2 = (i + j * W2) * 4;
- var weight = 0;
- var weights = 0;
- var weights_alpha = 0;
- var gx_r = 0;
- var gx_g = 0;
- var gx_b = 0;
- var gx_a = 0;
- var center_y = (j + 0.5) * ratio_h;
- for (var yy = Math.floor(j * ratio_h); yy < (j + 1) * ratio_h; yy++) {
- var dy = Math.abs(center_y - (yy + 0.5)) / ratio_h_half;
- var center_x = (i + 0.5) * ratio_w;
- var w0 = dy * dy; // pre-calc part of w
- for (var xx = Math.floor(i * ratio_w); xx < (i + 1) * ratio_w; xx++) {
- var dx = Math.abs(center_x - (xx + 0.5)) / ratio_w_half;
- var w = Math.sqrt(w0 + dx * dx);
- if (w >= -1 && w <= 1) {
- // hermite filter
- weight = 2 * w * w * w - 3 * w * w + 1;
- if (weight > 0) {
- dx = 4 * (xx + yy * W);
- // alpha
- gx_a += weight * data[dx + 3];
- weights_alpha += weight;
- // colors
- if (data[dx + 3] < 255) {
- weight = weight * data[dx + 3] / 250;
- }
- gx_r += weight * data[dx];
- gx_g += weight * data[dx + 1];
- gx_b += weight * data[dx + 2];
- weights += weight;
- }
- }
- }
- }
- data2[x2] = gx_r / weights;
- data2[x2 + 1] = gx_g / weights;
- data2[x2 + 2] = gx_b / weights;
- data2[x2 + 3] = gx_a / weights_alpha;
- }
- }
- canvas.getContext('2d').clearRect(0, 0, Math.max(W, W2), Math.max(H, H2));
- canvas.width = W2;
- canvas.height = H2;
- canvas.getContext('2d').putImageData(img2, 0, 0);
- };
- var addConflict = function addConflict($conflicts, original, replacement) {
- var $conflict = $conflicts.find('.template').clone().removeClass('template').addClass('conflict');
- var $originalDiv = $conflict.find('.original');
- var $replacementDiv = $conflict.find('.replacement');
- $conflict.data('data', data);
- $conflict.find('.filename').text(original.name);
- $originalDiv.find('.size').text(_index_js__WEBPACK_IMPORTED_MODULE_2__["default"].Util.humanFileSize(original.size));
- $originalDiv.find('.mtime').text(_index_js__WEBPACK_IMPORTED_MODULE_2__["default"].Util.formatDate(original.mtime));
- // ie sucks
- if (replacement.size && replacement.lastModified) {
- $replacementDiv.find('.size').text(_index_js__WEBPACK_IMPORTED_MODULE_2__["default"].Util.humanFileSize(replacement.size));
- $replacementDiv.find('.mtime').text(_index_js__WEBPACK_IMPORTED_MODULE_2__["default"].Util.formatDate(replacement.lastModified));
- }
- var path = original.directory + '/' + original.name;
- var urlSpec = {
- file: path,
- x: 96,
- y: 96,
- c: original.etag,
- forceIcon: 0
- };
- var previewpath = Files.generatePreviewUrl(urlSpec);
- // Escaping single quotes
- previewpath = previewpath.replace(/'/g, '%27');
- $originalDiv.find('.icon').css({
- 'background-image': "url('" + previewpath + "')"
- });
- getCroppedPreview(replacement).then(function (path) {
- $replacementDiv.find('.icon').css('background-image', 'url(' + path + ')');
- }, function () {
- path = _index_js__WEBPACK_IMPORTED_MODULE_2__["default"].MimeType.getIconUrl(replacement.type);
- $replacementDiv.find('.icon').css('background-image', 'url(' + path + ')');
- });
- // connect checkboxes with labels
- var checkboxId = $conflicts.find('.conflict').length;
- $originalDiv.find('input:checkbox').attr('id', 'checkbox_original_' + checkboxId);
- $replacementDiv.find('input:checkbox').attr('id', 'checkbox_replacement_' + checkboxId);
- $conflicts.append($conflict);
-
- // set more recent mtime bold
- // ie sucks
- if (replacement.lastModified > original.mtime) {
- $replacementDiv.find('.mtime').css('font-weight', 'bold');
- } else if (replacement.lastModified < original.mtime) {
- $originalDiv.find('.mtime').css('font-weight', 'bold');
- } else {
- // TODO add to same mtime collection?
- }
-
- // set bigger size bold
- if (replacement.size && replacement.size > original.size) {
- $replacementDiv.find('.size').css('font-weight', 'bold');
- } else if (replacement.size && replacement.size < original.size) {
- $originalDiv.find('.size').css('font-weight', 'bold');
- } else {
- // TODO add to same size collection?
- }
-
- // TODO show skip action for files with same size and mtime in bottom row
-
- // always keep readonly files
-
- if (original.status === 'readonly') {
- $originalDiv.addClass('readonly').find('input[type="checkbox"]').prop('checked', true).prop('disabled', true);
- $originalDiv.find('.message').text(t('core', 'read-only'));
- }
- };
- // var selection = controller.getSelection(data.originalFiles);
- // if (selection.defaultAction) {
- // controller[selection.defaultAction](data);
- // } else {
- var dialogName = 'oc-dialog-fileexists-content';
- var dialogId = '#' + dialogName;
- if (this._fileexistsshown) {
- // add conflict
-
- var $conflicts = jquery__WEBPACK_IMPORTED_MODULE_1___default()(dialogId + ' .conflicts');
- addConflict($conflicts, original, replacement);
- var count = jquery__WEBPACK_IMPORTED_MODULE_1___default()(dialogId + ' .conflict').length;
- var title = n('core', '{count} file conflict', '{count} file conflicts', count, {
- count: count
- });
- jquery__WEBPACK_IMPORTED_MODULE_1___default()(dialogId).parent().children('.oc-dialog-title').text(title);
-
- // recalculate dimensions
- jquery__WEBPACK_IMPORTED_MODULE_1___default()(window).trigger('resize');
- dialogDeferred.resolve();
- } else {
- // create dialog
- this._fileexistsshown = true;
- jquery__WEBPACK_IMPORTED_MODULE_1___default().when(this._getFileExistsTemplate()).then(function ($tmpl) {
- var title = t('core', 'One file conflict');
- var $dlg = $tmpl.octemplate({
- dialog_name: dialogName,
- title: title,
- type: 'fileexists',
- allnewfiles: t('core', 'New Files'),
- allexistingfiles: t('core', 'Already existing files'),
- why: t('core', 'Which files do you want to keep?'),
- what: t('core', 'If you select both versions, the copied file will have a number added to its name.')
- });
- jquery__WEBPACK_IMPORTED_MODULE_1___default()('body').append($dlg);
- if (original && replacement) {
- var $conflicts = $dlg.find('.conflicts');
- addConflict($conflicts, original, replacement);
- }
- var buttonlist = [{
- text: t('core', 'Cancel'),
- classes: 'cancel',
- click: function click() {
- if (typeof controller.onCancel !== 'undefined') {
- controller.onCancel(data);
- }
- jquery__WEBPACK_IMPORTED_MODULE_1___default()(dialogId).ocdialog('close');
- }
- }, {
- text: t('core', 'Continue'),
- classes: 'continue',
- click: function click() {
- if (typeof controller.onContinue !== 'undefined') {
- controller.onContinue(jquery__WEBPACK_IMPORTED_MODULE_1___default()(dialogId + ' .conflict'));
- }
- jquery__WEBPACK_IMPORTED_MODULE_1___default()(dialogId).ocdialog('close');
- }
- }];
- jquery__WEBPACK_IMPORTED_MODULE_1___default()(dialogId).ocdialog({
- width: 500,
- closeOnEscape: true,
- modal: true,
- buttons: buttonlist,
- closeButton: null,
- close: function close() {
- self._fileexistsshown = false;
- try {
- jquery__WEBPACK_IMPORTED_MODULE_1___default()(this).ocdialog('destroy').remove();
- } catch (e) {
- // ignore
- }
- }
- });
- jquery__WEBPACK_IMPORTED_MODULE_1___default()(dialogId).css('height', 'auto');
- var $primaryButton = $dlg.closest('.oc-dialog').find('button.continue');
- $primaryButton.prop('disabled', true);
- function updatePrimaryButton() {
- var checkedCount = $dlg.find('.conflicts .checkbox:checked').length;
- $primaryButton.prop('disabled', checkedCount === 0);
- }
-
- // add checkbox toggling actions
- jquery__WEBPACK_IMPORTED_MODULE_1___default()(dialogId).find('.allnewfiles').on('click', function () {
- var $checkboxes = jquery__WEBPACK_IMPORTED_MODULE_1___default()(dialogId).find('.conflict .replacement input[type="checkbox"]');
- $checkboxes.prop('checked', jquery__WEBPACK_IMPORTED_MODULE_1___default()(this).prop('checked'));
- });
- jquery__WEBPACK_IMPORTED_MODULE_1___default()(dialogId).find('.allexistingfiles').on('click', function () {
- var $checkboxes = jquery__WEBPACK_IMPORTED_MODULE_1___default()(dialogId).find('.conflict .original:not(.readonly) input[type="checkbox"]');
- $checkboxes.prop('checked', jquery__WEBPACK_IMPORTED_MODULE_1___default()(this).prop('checked'));
- });
- jquery__WEBPACK_IMPORTED_MODULE_1___default()(dialogId).find('.conflicts').on('click', '.replacement,.original:not(.readonly)', function () {
- var $checkbox = jquery__WEBPACK_IMPORTED_MODULE_1___default()(this).find('input[type="checkbox"]');
- $checkbox.prop('checked', !$checkbox.prop('checked'));
- });
- jquery__WEBPACK_IMPORTED_MODULE_1___default()(dialogId).find('.conflicts').on('click', '.replacement input[type="checkbox"],.original:not(.readonly) input[type="checkbox"]', function () {
- var $checkbox = jquery__WEBPACK_IMPORTED_MODULE_1___default()(this);
- $checkbox.prop('checked', !$checkbox.prop('checked'));
- });
-
- // update counters
- jquery__WEBPACK_IMPORTED_MODULE_1___default()(dialogId).on('click', '.replacement,.allnewfiles', function () {
- var count = jquery__WEBPACK_IMPORTED_MODULE_1___default()(dialogId).find('.conflict .replacement input[type="checkbox"]:checked').length;
- if (count === jquery__WEBPACK_IMPORTED_MODULE_1___default()(dialogId + ' .conflict').length) {
- jquery__WEBPACK_IMPORTED_MODULE_1___default()(dialogId).find('.allnewfiles').prop('checked', true);
- jquery__WEBPACK_IMPORTED_MODULE_1___default()(dialogId).find('.allnewfiles + .count').text(t('core', '(all selected)'));
- } else if (count > 0) {
- jquery__WEBPACK_IMPORTED_MODULE_1___default()(dialogId).find('.allnewfiles').prop('checked', false);
- jquery__WEBPACK_IMPORTED_MODULE_1___default()(dialogId).find('.allnewfiles + .count').text(t('core', '({count} selected)', {
- count: count
- }));
- } else {
- jquery__WEBPACK_IMPORTED_MODULE_1___default()(dialogId).find('.allnewfiles').prop('checked', false);
- jquery__WEBPACK_IMPORTED_MODULE_1___default()(dialogId).find('.allnewfiles + .count').text('');
- }
- updatePrimaryButton();
- });
- jquery__WEBPACK_IMPORTED_MODULE_1___default()(dialogId).on('click', '.original,.allexistingfiles', function () {
- var count = jquery__WEBPACK_IMPORTED_MODULE_1___default()(dialogId).find('.conflict .original input[type="checkbox"]:checked').length;
- if (count === jquery__WEBPACK_IMPORTED_MODULE_1___default()(dialogId + ' .conflict').length) {
- jquery__WEBPACK_IMPORTED_MODULE_1___default()(dialogId).find('.allexistingfiles').prop('checked', true);
- jquery__WEBPACK_IMPORTED_MODULE_1___default()(dialogId).find('.allexistingfiles + .count').text(t('core', '(all selected)'));
- } else if (count > 0) {
- jquery__WEBPACK_IMPORTED_MODULE_1___default()(dialogId).find('.allexistingfiles').prop('checked', false);
- jquery__WEBPACK_IMPORTED_MODULE_1___default()(dialogId).find('.allexistingfiles + .count').text(t('core', '({count} selected)', {
- count: count
- }));
- } else {
- jquery__WEBPACK_IMPORTED_MODULE_1___default()(dialogId).find('.allexistingfiles').prop('checked', false);
- jquery__WEBPACK_IMPORTED_MODULE_1___default()(dialogId).find('.allexistingfiles + .count').text('');
- }
- updatePrimaryButton();
- });
- dialogDeferred.resolve();
- }).fail(function () {
- dialogDeferred.reject();
- alert(t('core', 'Error loading file exists template'));
- });
- }
- // }
- return dialogDeferred.promise();
- },
- // get the gridview setting and set the input accordingly
- _getGridSettings: function _getGridSettings() {
- var self = this;
- jquery__WEBPACK_IMPORTED_MODULE_1___default().get(_index_js__WEBPACK_IMPORTED_MODULE_2__["default"].generateUrl('/apps/files/api/v1/showgridview'), function (response) {
- self.$showGridView.removeClass('icon-toggle-filelist icon-toggle-pictures').addClass(response.gridview ? 'icon-toggle-filelist' : 'icon-toggle-pictures');
- self.$showGridView.attr('aria-label', response.gridview ? t('files', 'Show list view') : t('files', 'Show grid view'));
- jquery__WEBPACK_IMPORTED_MODULE_1___default()('.list-container').toggleClass('view-grid', response.gridview);
- });
- },
- _onGridviewChange: function _onGridviewChange() {
- var isGridView = this.$showGridView.hasClass('icon-toggle-filelist');
- // only save state if user is logged in
- if (_index_js__WEBPACK_IMPORTED_MODULE_2__["default"].currentUser) {
- jquery__WEBPACK_IMPORTED_MODULE_1___default().post(_index_js__WEBPACK_IMPORTED_MODULE_2__["default"].generateUrl('/apps/files/api/v1/showgridview'), {
- show: !isGridView
- });
- }
- this.$showGridView.removeClass('icon-toggle-filelist icon-toggle-pictures').addClass(isGridView ? 'icon-toggle-pictures' : 'icon-toggle-filelist');
- this.$showGridView.attr('aria-label', isGridView ? t('files', 'Show grid view') : t('files', 'Show list view'));
- this.$filePicker.find('.list-container').toggleClass('view-grid', !isGridView);
- },
- _getFilePickerTemplate: function _getFilePickerTemplate() {
- var defer = jquery__WEBPACK_IMPORTED_MODULE_1___default().Deferred();
- if (!this.$filePickerTemplate) {
- var self = this;
- jquery__WEBPACK_IMPORTED_MODULE_1___default().get(_index_js__WEBPACK_IMPORTED_MODULE_2__["default"].filePath('core', 'templates', 'filepicker.html'), function (tmpl) {
- self.$filePickerTemplate = jquery__WEBPACK_IMPORTED_MODULE_1___default()(tmpl);
- self.$listTmpl = self.$filePickerTemplate.find('.filelist tbody tr:first-child').detach();
- defer.resolve(self.$filePickerTemplate);
- }).fail(function (jqXHR, textStatus, errorThrown) {
- defer.reject(jqXHR.status, errorThrown);
- });
- } else {
- defer.resolve(this.$filePickerTemplate);
- }
- return defer.promise();
- },
- _getMessageTemplate: function _getMessageTemplate() {
- var defer = jquery__WEBPACK_IMPORTED_MODULE_1___default().Deferred();
- if (!this.$messageTemplate) {
- var self = this;
- jquery__WEBPACK_IMPORTED_MODULE_1___default().get(_index_js__WEBPACK_IMPORTED_MODULE_2__["default"].filePath('core', 'templates', 'message.html'), function (tmpl) {
- self.$messageTemplate = jquery__WEBPACK_IMPORTED_MODULE_1___default()(tmpl);
- defer.resolve(self.$messageTemplate);
- }).fail(function (jqXHR, textStatus, errorThrown) {
- defer.reject(jqXHR.status, errorThrown);
- });
- } else {
- defer.resolve(this.$messageTemplate);
- }
- return defer.promise();
- },
- _getFileExistsTemplate: function _getFileExistsTemplate() {
- var defer = jquery__WEBPACK_IMPORTED_MODULE_1___default().Deferred();
- if (!this.$fileexistsTemplate) {
- var self = this;
- jquery__WEBPACK_IMPORTED_MODULE_1___default().get(_index_js__WEBPACK_IMPORTED_MODULE_2__["default"].filePath('files', 'templates', 'fileexists.html'), function (tmpl) {
- self.$fileexistsTemplate = jquery__WEBPACK_IMPORTED_MODULE_1___default()(tmpl);
- defer.resolve(self.$fileexistsTemplate);
- }).fail(function () {
- defer.reject();
- });
- } else {
- defer.resolve(this.$fileexistsTemplate);
- }
- return defer.promise();
- },
- /**
- * fills the filepicker with files
- */
- _fillFilePicker: function () {
- var _fillFilePicker2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(dir, type) {
- var self, filter, advancedFilter, getFolderContents, files, showHiddenInput, Comparators, comparator;
- return _regeneratorRuntime().wrap(function _callee2$(_context2) {
- while (1) switch (_context2.prev = _context2.next) {
- case 0:
- self = this;
- this.$filelist.empty();
- this.$filePicker.find('.emptycontent').hide();
- this.$filelistContainer.addClass('icon-loading');
- this.$filePicker.data('path', dir);
- filter = this.$filePicker.data('mimetype');
- advancedFilter = this.$filePicker.data('filter');
- if (typeof filter === 'string') {
- filter = [filter];
- }
- self.$fileListHeader.find('.sort-indicator').addClass('hidden').removeClass('icon-triangle-n').removeClass('icon-triangle-s');
- self.$fileListHeader.find('[data-sort=' + self.filepicker.sortField + '] .sort-indicator').removeClass('hidden');
- if (self.filepicker.sortOrder === 'asc') {
- self.$fileListHeader.find('[data-sort=' + self.filepicker.sortField + '] .sort-indicator').addClass('icon-triangle-n');
- } else {
- self.$fileListHeader.find('[data-sort=' + self.filepicker.sortField + '] .sort-indicator').addClass('icon-triangle-s');
- }
-
- // Wrap within a method because a promise cannot return multiple values
- // But the client impleemntation still does it...
- getFolderContents = /*#__PURE__*/function () {
- var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(dir) {
- return _regeneratorRuntime().wrap(function _callee$(_context) {
- while (1) switch (_context.prev = _context.next) {
- case 0:
- return _context.abrupt("return", self.filepicker.filesClient.getFolderContents(dir).then(function (status, files) {
- return files;
- }));
- case 1:
- case "end":
- return _context.stop();
- }
- }, _callee);
- }));
- return function getFolderContents(_x3) {
- return _ref.apply(this, arguments);
- };
- }();
- _context2.prev = 12;
- _context2.next = 15;
- return getFolderContents(dir);
- case 15:
- files = _context2.sent;
- _context2.next = 26;
- break;
- case 18:
- _context2.prev = 18;
- _context2.t0 = _context2["catch"](12);
- // fallback to root if requested dir is non-existent
- console.error('Requested path does not exists, falling back to root');
- _context2.next = 23;
- return getFolderContents('/');
- case 23:
- files = _context2.sent;
- this.$filePicker.data('path', '/');
- this._changeButtonsText(type, '');
- case 26:
- self.filelist = files;
- if (filter && filter.length > 0 && filter.indexOf('*') === -1) {
- files = files.filter(function (file) {
- return file.type === 'dir' || filter.indexOf(file.mimetype) !== -1;
- });
- }
- if (advancedFilter) {
- files = files.filter(advancedFilter);
- }
-
- // Check if the showHidden input field exist and if it exist follow it
- // Otherwise just show the hidden files
- showHiddenInput = document.getElementById('showHiddenFiles');
- if ((showHiddenInput === null || showHiddenInput === void 0 ? void 0 : showHiddenInput.value) !== "1") {
- files = files.filter(function (file) {
- return !file.name.startsWith('.');
- });
- }
- Comparators = {
- name: function name(fileInfo1, fileInfo2) {
- if (fileInfo1.type === 'dir' && fileInfo2.type !== 'dir') {
- return -1;
- }
- if (fileInfo1.type !== 'dir' && fileInfo2.type === 'dir') {
- return 1;
- }
- return _index_js__WEBPACK_IMPORTED_MODULE_2__["default"].Util.naturalSortCompare(fileInfo1.name, fileInfo2.name);
- },
- size: function size(fileInfo1, fileInfo2) {
- return fileInfo1.size - fileInfo2.size;
- },
- mtime: function mtime(fileInfo1, fileInfo2) {
- return fileInfo1.mtime - fileInfo2.mtime;
- }
- };
- comparator = Comparators[self.filepicker.sortField] || Comparators.name;
- files = files.sort(function (file1, file2) {
- var isFavorite = function isFavorite(fileInfo) {
- return fileInfo.tags && fileInfo.tags.indexOf(_index_js__WEBPACK_IMPORTED_MODULE_2__["default"].TAG_FAVORITE) >= 0;
- };
- if (isFavorite(file1) && !isFavorite(file2)) {
- return -1;
- } else if (!isFavorite(file1) && isFavorite(file2)) {
- return 1;
- }
- return self.filepicker.sortOrder === 'asc' ? comparator(file1, file2) : -comparator(file1, file2);
- });
- self._fillSlug();
- if (files.length === 0) {
- self.$filePicker.find('.emptycontent').show();
- self.$fileListHeader.hide();
- } else {
- self.$filePicker.find('.emptycontent').hide();
- self.$fileListHeader.show();
- }
- self.$filelist.empty();
- jquery__WEBPACK_IMPORTED_MODULE_1___default().each(files, function (idx, entry) {
- if (entry.isEncrypted && entry.mimetype === 'httpd/unix-directory') {
- entry.icon = _index_js__WEBPACK_IMPORTED_MODULE_2__["default"].MimeType.getIconUrl('dir-encrypted');
- } else {
- entry.icon = _index_js__WEBPACK_IMPORTED_MODULE_2__["default"].MimeType.getIconUrl(entry.mimetype);
- }
- var simpleSize, sizeColor;
- if (typeof entry.size !== 'undefined' && entry.size >= 0) {
- simpleSize = _index_js__WEBPACK_IMPORTED_MODULE_2__["default"].Util.humanFileSize(parseInt(entry.size, 10), true);
- sizeColor = Math.round(160 - Math.pow(entry.size / (1024 * 1024), 2));
- } else {
- simpleSize = t('files', 'Pending');
- sizeColor = 80;
- }
-
- // split the filename in half if the size is bigger than 20 char
- // for ellipsis
- if (entry.name.length >= 10) {
- // leave maximum 10 letters
- var split = Math.min(Math.floor(entry.name.length / 2), 10);
- var filename1 = entry.name.substr(0, entry.name.length - split);
- var filename2 = entry.name.substr(entry.name.length - split);
- } else {
- var filename1 = entry.name;
- var filename2 = '';
- }
- var $row = self.$listTmpl.octemplate({
- type: entry.type,
- dir: dir,
- filename: entry.name,
- filename1: filename1,
- filename2: filename2,
- date: _index_js__WEBPACK_IMPORTED_MODULE_2__["default"].Util.relativeModifiedDate(entry.mtime),
- size: simpleSize,
- sizeColor: sizeColor,
- icon: entry.icon
- });
- if (entry.type === 'file') {
- var urlSpec = {
- file: dir + '/' + entry.name,
- x: 100,
- y: 100
- };
- var img = new Image();
- var previewUrl = _index_js__WEBPACK_IMPORTED_MODULE_2__["default"].generateUrl('/core/preview.png?') + jquery__WEBPACK_IMPORTED_MODULE_1___default().param(urlSpec);
- img.onload = function () {
- if (img.width > 5) {
- $row.find('td.filename').attr('style', 'background-image:url(' + previewUrl + ')');
- }
- };
- img.src = previewUrl;
- }
- self.$filelist.append($row);
- });
- self.$filelistContainer.removeClass('icon-loading');
- case 39:
- case "end":
- return _context2.stop();
- }
- }, _callee2, this, [[12, 18]]);
- }));
- function _fillFilePicker(_x, _x2) {
- return _fillFilePicker2.apply(this, arguments);
- }
- return _fillFilePicker;
- }(),
- /**
- * fills the tree list with directories
- */
- _fillSlug: function _fillSlug() {
- var addButton = this.$dirTree.find('.actions.creatable').detach();
- this.$dirTree.empty();
- var self = this;
- self.$dirTree.append('<nav></nav>');
- self.$dirTree.append(addButton);
- var dir;
- var path = this.$filePicker.data('path');
- var $template = jquery__WEBPACK_IMPORTED_MODULE_1___default()('<li data-dir="{dir}" tabindex="0"><a class="{classList}">{name}</a></li>').addClass('crumb');
- var $breadcrumbs = jquery__WEBPACK_IMPORTED_MODULE_1___default()('<ul class="breadcrumb"></ul>');
- if (path) {
- var paths = path.split('/');
- jquery__WEBPACK_IMPORTED_MODULE_1___default().each(paths, function (index, dir) {
- dir = paths.pop();
- if (dir === '') {
- return false;
- }
- $breadcrumbs.prepend($template.octemplate({
- dir: paths.join('/') + '/' + dir,
- name: dir
- }));
- });
- }
- $template.octemplate({
- dir: '',
- name: t('core', 'Home'),
- classList: 'icon-home'
- }, {
- escapeFunction: null
- }).addClass('crumb svg crumbhome').prependTo($breadcrumbs);
- this.$dirTree.find('> nav').prepend($breadcrumbs);
- },
- /**
- * handle selection made in the tree list
- */
- _handleTreeListSelect: function _handleTreeListSelect(event, type) {
- var self = event.data;
- var dir = jquery__WEBPACK_IMPORTED_MODULE_1___default()(event.target).closest('.crumb').data('dir');
- self._fillFilePicker(dir, type);
- var getOcDialog = event.target.closest('.oc-dialog');
- var buttonEnableDisable = jquery__WEBPACK_IMPORTED_MODULE_1___default()('.primary', getOcDialog);
- this._changeButtonsText(type, dir.split(/[/]+/).pop());
- if (this.$filePicker.data('mimetype').indexOf('httpd/unix-directory') !== -1 || this.$filePicker.data('allowDirectoryChooser')) {
- buttonEnableDisable.prop('disabled', false);
- } else {
- buttonEnableDisable.prop('disabled', true);
- }
- },
- /**
- * handle clicks made in the filepicker
- */
- _handlePickerClick: function _handlePickerClick(event, $element, type) {
- var getOcDialog = this.$filePicker.closest('.oc-dialog');
- var buttonEnableDisable = getOcDialog.find('.primary');
- if ($element.data('type') === 'file') {
- if (this.$filePicker.data('multiselect') !== true || !event.ctrlKey) {
- this.$filelist.find('.filepicker_element_selected').removeClass('filepicker_element_selected');
- }
- $element.toggleClass('filepicker_element_selected');
- buttonEnableDisable.prop('disabled', false);
- } else if ($element.data('type') === 'dir') {
- this._fillFilePicker(this.$filePicker.data('path') + '/' + $element.data('entryname'), type);
- this._changeButtonsText(type, $element.data('entryname'));
- if (this.$filePicker.data('mimetype').indexOf('httpd/unix-directory') !== -1 || this.$filePicker.data('allowDirectoryChooser')) {
- buttonEnableDisable.prop('disabled', false);
- } else {
- buttonEnableDisable.prop('disabled', true);
- }
- }
- },
- /**
- * Handle
- * @param type of action
- * @param dir on which to change buttons text
- * @private
- */
- _changeButtonsText: function _changeButtonsText(type, dir) {
- var copyText = dir === '' ? t('core', 'Copy') : t('core', 'Copy to {folder}', {
- folder: dir
- });
- var moveText = dir === '' ? t('core', 'Move') : t('core', 'Move to {folder}', {
- folder: dir
- });
- var buttons = jquery__WEBPACK_IMPORTED_MODULE_1___default()('.oc-dialog-buttonrow button');
- switch (type) {
- case this.FILEPICKER_TYPE_CHOOSE:
- break;
- case this.FILEPICKER_TYPE_CUSTOM:
- break;
- case this.FILEPICKER_TYPE_COPY:
- buttons.text(copyText);
- break;
- case this.FILEPICKER_TYPE_MOVE:
- buttons.text(moveText);
- break;
- case this.FILEPICKER_TYPE_COPY_MOVE:
- buttons.eq(0).text(copyText);
- buttons.eq(1).text(moveText);
- break;
- }
- }
-};
-/* harmony default export */ __webpack_exports__["default"] = (Dialogs);
-
-/***/ }),
-
-/***/ "./core/src/OC/eventsource.js":
-/*!************************************!*\
- !*** ./core/src/OC/eventsource.js ***!
- \************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! jquery */ "./node_modules/jquery/dist/jquery.js");
-/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);
-/* harmony import */ var _requesttoken_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./requesttoken.js */ "./core/src/OC/requesttoken.js");
-/**
- * @copyright 2012 Robin Appelman icewind1991@gmail.com
- *
- * @author Arthur Schiwon <blizzz@arthur-schiwon.de>
- * @author Christoph Wurst <christoph@winzerhof-wurst.at>
- * @author John Molakvoæ <skjnldsv@protonmail.com>
- * @author Lukas Reschke <lukas@statuscode.ch>
- * @author Robin Appelman <robin@icewind.nl>
- * @author Thomas Müller <thomas.mueller@tmit.eu>
- * @author Vincent Petry <vincent@nextcloud.com>
- *
- * @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 <http://www.gnu.org/licenses/>.
- *
- */
-
-/* eslint-disable */
-
-
-
-/**
- * Create a new event source
- * @param {string} src
- * @param {object} [data] to be send as GET
- *
- * @constructs OCEventSource
- */
-var OCEventSource = function OCEventSource(src, data) {
- var dataStr = '';
- var name;
- var joinChar;
- this.typelessListeners = [];
- this.closed = false;
- this.listeners = {};
- if (data) {
- for (name in data) {
- dataStr += name + '=' + encodeURIComponent(data[name]) + '&';
- }
- }
- dataStr += 'requesttoken=' + encodeURIComponent((0,_requesttoken_js__WEBPACK_IMPORTED_MODULE_1__.getToken)());
- if (!this.useFallBack && typeof EventSource !== 'undefined') {
- joinChar = '&';
- if (src.indexOf('?') === -1) {
- joinChar = '?';
- }
- this.source = new EventSource(src + joinChar + dataStr);
- this.source.onmessage = function (e) {
- for (var i = 0; i < this.typelessListeners.length; i++) {
- this.typelessListeners[i](JSON.parse(e.data));
- }
- }.bind(this);
- } else {
- var iframeId = 'oc_eventsource_iframe_' + OCEventSource.iframeCount;
- OCEventSource.fallBackSources[OCEventSource.iframeCount] = this;
- this.iframe = jquery__WEBPACK_IMPORTED_MODULE_0___default()('<iframe></iframe>');
- this.iframe.attr('id', iframeId);
- this.iframe.hide();
- joinChar = '&';
- if (src.indexOf('?') === -1) {
- joinChar = '?';
- }
- this.iframe.attr('src', src + joinChar + 'fallback=true&fallback_id=' + OCEventSource.iframeCount + '&' + dataStr);
- jquery__WEBPACK_IMPORTED_MODULE_0___default()('body').append(this.iframe);
- this.useFallBack = true;
- OCEventSource.iframeCount++;
- }
- // add close listener
- this.listen('__internal__', function (data) {
- if (data === 'close') {
- this.close();
- }
- }.bind(this));
-};
-OCEventSource.fallBackSources = [];
-OCEventSource.iframeCount = 0; // number of fallback iframes
-OCEventSource.fallBackCallBack = function (id, type, data) {
- OCEventSource.fallBackSources[id].fallBackCallBack(type, data);
-};
-OCEventSource.prototype = {
- typelessListeners: [],
- iframe: null,
- listeners: {},
- // only for fallback
- useFallBack: false,
- /**
- * Fallback callback for browsers that don't have the
- * native EventSource object.
- *
- * Calls the registered listeners.
- *
- * @private
- * @param {String} type event type
- * @param {Object} data received data
- */
- fallBackCallBack: function fallBackCallBack(type, data) {
- var i;
- // ignore messages that might appear after closing
- if (this.closed) {
- return;
- }
- if (type) {
- if (typeof this.listeners.done !== 'undefined') {
- for (i = 0; i < this.listeners[type].length; i++) {
- this.listeners[type][i](data);
- }
- }
- } else {
- for (i = 0; i < this.typelessListeners.length; i++) {
- this.typelessListeners[i](data);
- }
- }
- },
- lastLength: 0,
- // for fallback
- /**
- * Listen to a given type of events.
- *
- * @param {String} type event type
- * @param {Function} callback event callback
- */
- listen: function listen(type, callback) {
- if (callback && callback.call) {
- if (type) {
- if (this.useFallBack) {
- if (!this.listeners[type]) {
- this.listeners[type] = [];
- }
- this.listeners[type].push(callback);
- } else {
- this.source.addEventListener(type, function (e) {
- if (typeof e.data !== 'undefined') {
- callback(JSON.parse(e.data));
- } else {
- callback('');
- }
- }, false);
- }
- } else {
- this.typelessListeners.push(callback);
- }
- }
- },
- /**
- * Closes this event source.
- */
- close: function close() {
- this.closed = true;
- if (typeof this.source !== 'undefined') {
- this.source.close();
- }
- }
-};
-/* harmony default export */ __webpack_exports__["default"] = (OCEventSource);
-
-/***/ }),
-
-/***/ "./core/src/OC/get_set.js":
-/*!********************************!*\
- !*** ./core/src/OC/get_set.js ***!
- \********************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ get: function() { return /* binding */ get; },
-/* harmony export */ set: function() { return /* binding */ set; }
-/* harmony export */ });
-/**
- * @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>
- *
- * @author Christoph Wurst <christoph@winzerhof-wurst.at>
- * @author John Molakvoæ <skjnldsv@protonmail.com>
- *
- * @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 <http://www.gnu.org/licenses/>.
- *
- */
-
-var get = function get(context) {
- return function (name) {
- var namespaces = name.split('.');
- var tail = namespaces.pop();
- for (var i = 0; i < namespaces.length; i++) {
- context = context[namespaces[i]];
- if (!context) {
- return false;
- }
- }
- return context[tail];
- };
-};
-
-/**
- * Set a variable by name
- *
- * @param {string} context context
- * @return {Function} setter
- * @deprecated 19.0.0 use https://lodash.com/docs#set
- */
-var set = function set(context) {
- return function (name, value) {
- var namespaces = name.split('.');
- var tail = namespaces.pop();
- for (var i = 0; i < namespaces.length; i++) {
- if (!context[namespaces[i]]) {
- context[namespaces[i]] = {};
- }
- context = context[namespaces[i]];
- }
- context[tail] = value;
- return value;
- };
-};
-
-/***/ }),
-
-/***/ "./core/src/OC/host.js":
-/*!*****************************!*\
- !*** ./core/src/OC/host.js ***!
- \*****************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ getHost: function() { return /* binding */ getHost; },
-/* harmony export */ getHostName: function() { return /* binding */ getHostName; },
-/* harmony export */ getPort: function() { return /* binding */ getPort; },
-/* harmony export */ getProtocol: function() { return /* binding */ getProtocol; }
-/* harmony export */ });
-/**
- * @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>
- *
- * @author Christoph Wurst <christoph@winzerhof-wurst.at>
- * @author John Molakvoæ <skjnldsv@protonmail.com>
- *
- * @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 <http://www.gnu.org/licenses/>.
- *
- */
-
-var getProtocol = function getProtocol() {
- return window.location.protocol.split(':')[0];
-};
-
-/**
- * Returns the host used to access this Nextcloud instance
- * Host is sometimes the same as the hostname but now always.
- *
- * Examples:
- * http://example.com => example.com
- * https://example.com => example.com
- * http://example.com:8080 => example.com:8080
- *
- * @return {string} host
- *
- * @since 8.2.0
- * @deprecated 17.0.0 use window.location.host directly
- */
-var getHost = function getHost() {
- return window.location.host;
-};
-
-/**
- * Returns the hostname used to access this Nextcloud instance
- * The hostname is always stripped of the port
- *
- * @return {string} hostname
- * @since 9.0.0
- * @deprecated 17.0.0 use window.location.hostname directly
- */
-var getHostName = function getHostName() {
- return window.location.hostname;
-};
-
-/**
- * Returns the port number used to access this Nextcloud instance
- *
- * @return {number} port number
- *
- * @since 8.2.0
- * @deprecated 17.0.0 use window.location.port directly
- */
-var getPort = function getPort() {
- return window.location.port;
-};
-
-/***/ }),
-
-/***/ "./core/src/OC/index.js":
-/*!******************************!*\
- !*** ./core/src/OC/index.js ***!
- \******************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _nextcloud_event_bus__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/event-bus */ "./node_modules/@nextcloud/event-bus/dist/index.mjs");
-/* harmony import */ var _xhr_error_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./xhr-error.js */ "./core/src/OC/xhr-error.js");
-/* harmony import */ var _apps_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./apps.js */ "./core/src/OC/apps.js");
-/* harmony import */ var _appconfig_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./appconfig.js */ "./core/src/OC/appconfig.js");
-/* harmony import */ var _appswebroots_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./appswebroots.js */ "./core/src/OC/appswebroots.js");
-/* harmony import */ var _backbone_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./backbone.js */ "./core/src/OC/backbone.js");
-/* harmony import */ var _nextcloud_paths__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @nextcloud/paths */ "./node_modules/@nextcloud/paths/dist/index.js");
-/* harmony import */ var _query_string_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./query-string.js */ "./core/src/OC/query-string.js");
-/* harmony import */ var _config_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./config.js */ "./core/src/OC/config.js");
-/* harmony import */ var _constants_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./constants.js */ "./core/src/OC/constants.js");
-/* harmony import */ var _contactsmenu_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./contactsmenu.js */ "./core/src/OC/contactsmenu.js");
-/* harmony import */ var _currentuser_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./currentuser.js */ "./core/src/OC/currentuser.js");
-/* harmony import */ var _dialogs_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./dialogs.js */ "./core/src/OC/dialogs.js");
-/* harmony import */ var _eventsource_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./eventsource.js */ "./core/src/OC/eventsource.js");
-/* harmony import */ var _get_set_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./get_set.js */ "./core/src/OC/get_set.js");
-/* harmony import */ var _capabilities_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./capabilities.js */ "./core/src/OC/capabilities.js");
-/* harmony import */ var _host_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./host.js */ "./core/src/OC/host.js");
-/* harmony import */ var _requesttoken_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./requesttoken.js */ "./core/src/OC/requesttoken.js");
-/* harmony import */ var _menu_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./menu.js */ "./core/src/OC/menu.js");
-/* harmony import */ var _admin_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ./admin.js */ "./core/src/OC/admin.js");
-/* harmony import */ var _l10n_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ./l10n.js */ "./core/src/OC/l10n.js");
-/* harmony import */ var _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! @nextcloud/l10n */ "./node_modules/@nextcloud/l10n/dist/index.mjs");
-/* harmony import */ var _nextcloud_router__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! @nextcloud/router */ "./node_modules/@nextcloud/router/dist/index.js");
-/* harmony import */ var _routing_js__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ./routing.js */ "./core/src/OC/routing.js");
-/* harmony import */ var _msg_js__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ./msg.js */ "./core/src/OC/msg.js");
-/* harmony import */ var _notification_js__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! ./notification.js */ "./core/src/OC/notification.js");
-/* harmony import */ var _password_confirmation_js__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! ./password-confirmation.js */ "./core/src/OC/password-confirmation.js");
-/* harmony import */ var _plugins_js__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(/*! ./plugins.js */ "./core/src/OC/plugins.js");
-/* harmony import */ var _theme_js__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(/*! ./theme.js */ "./core/src/OC/theme.js");
-/* harmony import */ var _util_js__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(/*! ./util.js */ "./core/src/OC/util.js");
-/* harmony import */ var _debug_js__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(/*! ./debug.js */ "./core/src/OC/debug.js");
-/* harmony import */ var _navigation_js__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__(/*! ./navigation.js */ "./core/src/OC/navigation.js");
-/* harmony import */ var _webroot_js__WEBPACK_IMPORTED_MODULE_32__ = __webpack_require__(/*! ./webroot.js */ "./core/src/OC/webroot.js");
-/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js");
-/**
- * @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>
- *
- * @author Christoph Wurst <christoph@winzerhof-wurst.at>
- * @author John Molakvoæ <skjnldsv@protonmail.com>
- * @author Roeland Jago Douma <roeland@famdouma.nl>
- *
- * @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 <http://www.gnu.org/licenses/>.
- *
- */
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-/** @namespace OC */
-/* harmony default export */ __webpack_exports__["default"] = ({
- /*
- * Constants
- */
- coreApps: _constants_js__WEBPACK_IMPORTED_MODULE_9__.coreApps,
- menuSpeed: _constants_js__WEBPACK_IMPORTED_MODULE_9__.menuSpeed,
- PERMISSION_ALL: _constants_js__WEBPACK_IMPORTED_MODULE_9__.PERMISSION_ALL,
- PERMISSION_CREATE: _constants_js__WEBPACK_IMPORTED_MODULE_9__.PERMISSION_CREATE,
- PERMISSION_DELETE: _constants_js__WEBPACK_IMPORTED_MODULE_9__.PERMISSION_DELETE,
- PERMISSION_NONE: _constants_js__WEBPACK_IMPORTED_MODULE_9__.PERMISSION_NONE,
- PERMISSION_READ: _constants_js__WEBPACK_IMPORTED_MODULE_9__.PERMISSION_READ,
- PERMISSION_SHARE: _constants_js__WEBPACK_IMPORTED_MODULE_9__.PERMISSION_SHARE,
- PERMISSION_UPDATE: _constants_js__WEBPACK_IMPORTED_MODULE_9__.PERMISSION_UPDATE,
- TAG_FAVORITE: _constants_js__WEBPACK_IMPORTED_MODULE_9__.TAG_FAVORITE,
- /*
- * Deprecated helpers to be removed
- */
- /**
- * Check if a user file is allowed to be handled.
- *
- * @param {string} file to check
- * @return {boolean}
- * @deprecated 17.0.0
- */
- fileIsBlacklisted: function fileIsBlacklisted(file) {
- return !!file.match(_config_js__WEBPACK_IMPORTED_MODULE_8__["default"].blacklist_files_regex);
- },
- Apps: _apps_js__WEBPACK_IMPORTED_MODULE_2__["default"],
- AppConfig: _appconfig_js__WEBPACK_IMPORTED_MODULE_3__.AppConfig,
- appConfig: _appconfig_js__WEBPACK_IMPORTED_MODULE_3__.appConfig,
- appswebroots: _appswebroots_js__WEBPACK_IMPORTED_MODULE_4__["default"],
- Backbone: _backbone_js__WEBPACK_IMPORTED_MODULE_5__["default"],
- ContactsMenu: _contactsmenu_js__WEBPACK_IMPORTED_MODULE_10__["default"],
- config: _config_js__WEBPACK_IMPORTED_MODULE_8__["default"],
- /**
- * Currently logged in user or null if none
- *
- * @type {string}
- * @deprecated use `getCurrentUser` from https://www.npmjs.com/package/@nextcloud/auth
- */
- currentUser: _currentuser_js__WEBPACK_IMPORTED_MODULE_11__.currentUser,
- dialogs: _dialogs_js__WEBPACK_IMPORTED_MODULE_12__["default"],
- EventSource: _eventsource_js__WEBPACK_IMPORTED_MODULE_13__["default"],
- /**
- * Returns the currently logged in user or null if there is no logged in
- * user (public page mode)
- *
- * @since 9.0.0
- * @deprecated 19.0.0 use `getCurrentUser` from https://www.npmjs.com/package/@nextcloud/auth
- */
- getCurrentUser: _currentuser_js__WEBPACK_IMPORTED_MODULE_11__.getCurrentUser,
- isUserAdmin: _admin_js__WEBPACK_IMPORTED_MODULE_19__.isUserAdmin,
- L10N: _l10n_js__WEBPACK_IMPORTED_MODULE_20__["default"],
- /**
- * Ajax error handlers
- *
- * @todo remove from here and keep internally -> requires new tests
- */
- _ajaxConnectionLostHandler: _xhr_error_js__WEBPACK_IMPORTED_MODULE_1__.ajaxConnectionLostHandler,
- _processAjaxError: _xhr_error_js__WEBPACK_IMPORTED_MODULE_1__.processAjaxError,
- registerXHRForErrorProcessing: _xhr_error_js__WEBPACK_IMPORTED_MODULE_1__.registerXHRForErrorProcessing,
- /**
- * Capabilities
- *
- * @type {Array}
- * @deprecated 20.0.0 use @nextcloud/capabilities instead
- */
- getCapabilities: _capabilities_js__WEBPACK_IMPORTED_MODULE_15__.getCapabilities,
- /*
- * Legacy menu helpers
- */
- hideMenus: _menu_js__WEBPACK_IMPORTED_MODULE_18__.hideMenus,
- registerMenu: _menu_js__WEBPACK_IMPORTED_MODULE_18__.registerMenu,
- showMenu: _menu_js__WEBPACK_IMPORTED_MODULE_18__.showMenu,
- unregisterMenu: _menu_js__WEBPACK_IMPORTED_MODULE_18__.unregisterMenu,
- /*
- * Path helpers
- */
- /**
- * @deprecated 18.0.0 use https://www.npmjs.com/package/@nextcloud/paths
- */
- basename: _nextcloud_paths__WEBPACK_IMPORTED_MODULE_6__.basename,
- /**
- * @deprecated 18.0.0 use https://www.npmjs.com/package/@nextcloud/paths
- */
- encodePath: _nextcloud_paths__WEBPACK_IMPORTED_MODULE_6__.encodePath,
- /**
- * @deprecated 18.0.0 use https://www.npmjs.com/package/@nextcloud/paths
- */
- dirname: _nextcloud_paths__WEBPACK_IMPORTED_MODULE_6__.dirname,
- /**
- * @deprecated 18.0.0 use https://www.npmjs.com/package/@nextcloud/paths
- */
- isSamePath: _nextcloud_paths__WEBPACK_IMPORTED_MODULE_6__.isSamePath,
- /**
- * @deprecated 18.0.0 use https://www.npmjs.com/package/@nextcloud/paths
- */
- joinPaths: _nextcloud_paths__WEBPACK_IMPORTED_MODULE_6__.joinPaths,
- /**
- * Host (url) helpers
- */
- getHost: _host_js__WEBPACK_IMPORTED_MODULE_16__.getHost,
- getHostName: _host_js__WEBPACK_IMPORTED_MODULE_16__.getHostName,
- getPort: _host_js__WEBPACK_IMPORTED_MODULE_16__.getPort,
- getProtocol: _host_js__WEBPACK_IMPORTED_MODULE_16__.getProtocol,
- /**
- * @deprecated 20.0.0 use `getCanonicalLocale` from https://www.npmjs.com/package/@nextcloud/l10n
- */
- getCanonicalLocale: _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_21__.getCanonicalLocale,
- /**
- * @deprecated 26.0.0 use `getLocale` from https://www.npmjs.com/package/@nextcloud/l10n
- */
- getLocale: _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_21__.getLocale,
- /**
- * @deprecated 26.0.0 use `getLanguage` from https://www.npmjs.com/package/@nextcloud/l10n
- */
- getLanguage: _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_21__.getLanguage,
- /**
- * Query string helpers
- */
- buildQueryString: _query_string_js__WEBPACK_IMPORTED_MODULE_7__.build,
- parseQueryString: _query_string_js__WEBPACK_IMPORTED_MODULE_7__.parse,
- msg: _msg_js__WEBPACK_IMPORTED_MODULE_24__["default"],
- Notification: _notification_js__WEBPACK_IMPORTED_MODULE_25__["default"],
- PasswordConfirmation: _password_confirmation_js__WEBPACK_IMPORTED_MODULE_26__["default"],
- Plugins: _plugins_js__WEBPACK_IMPORTED_MODULE_27__["default"],
- theme: _theme_js__WEBPACK_IMPORTED_MODULE_28__.theme,
- Util: _util_js__WEBPACK_IMPORTED_MODULE_29__["default"],
- debug: _debug_js__WEBPACK_IMPORTED_MODULE_30__.debug,
- /**
- * @deprecated 19.0.0 use `generateFilePath` from https://www.npmjs.com/package/@nextcloud/router
- */
- filePath: _nextcloud_router__WEBPACK_IMPORTED_MODULE_22__.generateFilePath,
- /**
- * @deprecated 19.0.0 use `generateUrl` from https://www.npmjs.com/package/@nextcloud/router
- */
- generateUrl: _nextcloud_router__WEBPACK_IMPORTED_MODULE_22__.generateUrl,
- /**
- * @deprecated 19.0.0 use https://lodash.com/docs#get
- */
- get: (0,_get_set_js__WEBPACK_IMPORTED_MODULE_14__.get)(window),
- /**
- * @deprecated 19.0.0 use https://lodash.com/docs#set
- */
- set: (0,_get_set_js__WEBPACK_IMPORTED_MODULE_14__.set)(window),
- /**
- * @deprecated 19.0.0 use `getRootUrl` from https://www.npmjs.com/package/@nextcloud/router
- */
- getRootPath: _nextcloud_router__WEBPACK_IMPORTED_MODULE_22__.getRootUrl,
- /**
- * @deprecated 19.0.0 use `imagePath` from https://www.npmjs.com/package/@nextcloud/router
- */
- imagePath: _nextcloud_router__WEBPACK_IMPORTED_MODULE_22__.imagePath,
- redirect: _navigation_js__WEBPACK_IMPORTED_MODULE_31__.redirect,
- reload: _navigation_js__WEBPACK_IMPORTED_MODULE_31__.reload,
- requestToken: (0,_requesttoken_js__WEBPACK_IMPORTED_MODULE_17__.getToken)(),
- /**
- * @deprecated 19.0.0 use `linkTo` from https://www.npmjs.com/package/@nextcloud/router
- */
- linkTo: _nextcloud_router__WEBPACK_IMPORTED_MODULE_22__.linkTo,
- /**
- * @param {string} service service name
- * @param {number} version OCS API version
- * @return {string} OCS API base path
- * @deprecated 19.0.0 use `generateOcsUrl` from https://www.npmjs.com/package/@nextcloud/router
- */
- linkToOCS: function linkToOCS(service, version) {
- return (0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_22__.generateOcsUrl)(service, {}, {
- ocsVersion: version || 1
- }) + '/';
- },
- /**
- * @deprecated 19.0.0 use `generateRemoteUrl` from https://www.npmjs.com/package/@nextcloud/router
- */
- linkToRemote: _nextcloud_router__WEBPACK_IMPORTED_MODULE_22__.generateRemoteUrl,
- linkToRemoteBase: _routing_js__WEBPACK_IMPORTED_MODULE_23__.linkToRemoteBase,
- /**
- * Relative path to Nextcloud root.
- * For example: "/nextcloud"
- *
- * @type {string}
- *
- * @deprecated 19.0.0 use `getRootUrl` from https://www.npmjs.com/package/@nextcloud/router
- * @see OC#getRootPath
- */
- webroot: _webroot_js__WEBPACK_IMPORTED_MODULE_32__["default"]
-});
-
-// Keep the request token prop in sync
-(0,_nextcloud_event_bus__WEBPACK_IMPORTED_MODULE_0__.subscribe)('csrf-token-update', function (e) {
- OC.requestToken = e.token;
-
- // Logging might help debug (Sentry) issues
- console.info('OC.requestToken changed', e.token);
-});
-
-/***/ }),
-
-/***/ "./core/src/OC/l10n.js":
-/*!*****************************!*\
- !*** ./core/src/OC/l10n.js ***!
- \*****************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var handlebars__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! handlebars */ "./node_modules/handlebars/runtime.js");
-/* harmony import */ var handlebars__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(handlebars__WEBPACK_IMPORTED_MODULE_0__);
-/* harmony import */ var _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/l10n */ "./node_modules/@nextcloud/l10n/dist/index.mjs");
-/**
- * Copyright (c) 2014 Vincent Petry <pvince81@owncloud.com>
- * Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
- *
- * @author Christoph Wurst <christoph@winzerhof-wurst.at>
- * @author Daniel Kesselberg <mail@danielkesselberg.de>
- * @author Joas Schilling <coding@schilljs.com>
- * @author John Molakvoæ <skjnldsv@protonmail.com>
- * @author Morris Jobke <hey@morrisjobke.de>
- * @author Roeland Jago Douma <roeland@famdouma.nl>
- * @author Vincent Petry <vincent@nextcloud.com>
- *
- * @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 <http://www.gnu.org/licenses/>.
- *
- */
-
-
-
-
-/**
- * L10N namespace with localization functions.
- *
- * @namespace OC.L10n
- * @deprecated 26.0.0 use https://www.npmjs.com/package/@nextcloud/l10n
- */
-var L10n = {
- /**
- * Load an app's translation bundle if not loaded already.
- *
- * @deprecated 26.0.0 use `loadTranslations` from https://www.npmjs.com/package/@nextcloud/l10n
- *
- * @param {string} appName name of the app
- * @param {Function} callback callback to be called when
- * the translations are loaded
- * @return {Promise} promise
- */
- load: _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_1__.loadTranslations,
- /**
- * Register an app's translation bundle.
- *
- * @deprecated 26.0.0 use `register` from https://www.npmjs.com/package/@nextcloud/l10
- *
- * @param {string} appName name of the app
- * @param {Object<string, string>} bundle bundle
- */
- register: _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_1__.register,
- /**
- * @private
- * @deprecated 26.0.0 use `unregister` from https://www.npmjs.com/package/@nextcloud/l10n
- */
- _unregister: _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_1__.unregister,
- /**
- * Translate a string
- *
- * @deprecated 26.0.0 use `translate` from https://www.npmjs.com/package/@nextcloud/l10n
- *
- * @param {string} app the id of the app for which to translate the string
- * @param {string} text the string to translate
- * @param {object} [vars] map of placeholder key to value
- * @param {number} [count] number to replace %n with
- * @param {Array} [options] options array
- * @param {boolean} [options.escape=true] enable/disable auto escape of placeholders (by default enabled)
- * @param {boolean} [options.sanitize=true] enable/disable sanitization (by default enabled)
- * @return {string}
- */
- translate: _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_1__.translate,
- /**
- * Translate a plural string
- *
- * @deprecated 26.0.0 use `translatePlural` from https://www.npmjs.com/package/@nextcloud/l10n
- *
- * @param {string} app the id of the app for which to translate the string
- * @param {string} textSingular the string to translate for exactly one object
- * @param {string} textPlural the string to translate for n objects
- * @param {number} count number to determine whether to use singular or plural
- * @param {object} [vars] map of placeholder key to value
- * @param {Array} [options] options array
- * @param {boolean} [options.escape=true] enable/disable auto escape of placeholders (by default enabled)
- * @return {string} Translated string
- */
- translatePlural: _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_1__.translatePlural
-};
-/* harmony default export */ __webpack_exports__["default"] = (L10n);
-handlebars__WEBPACK_IMPORTED_MODULE_0___default().registerHelper('t', function (app, text) {
- return (0,_nextcloud_l10n__WEBPACK_IMPORTED_MODULE_1__.translate)(app, text);
-});
-
-/***/ }),
-
-/***/ "./core/src/OC/menu.js":
-/*!*****************************!*\
- !*** ./core/src/OC/menu.js ***!
- \*****************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ currentMenu: function() { return /* binding */ currentMenu; },
-/* harmony export */ currentMenuToggle: function() { return /* binding */ currentMenuToggle; },
-/* harmony export */ hideMenus: function() { return /* binding */ hideMenus; },
-/* harmony export */ registerMenu: function() { return /* binding */ registerMenu; },
-/* harmony export */ showMenu: function() { return /* binding */ showMenu; },
-/* harmony export */ unregisterMenu: function() { return /* binding */ unregisterMenu; }
-/* harmony export */ });
-/* harmony import */ var underscore__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! underscore */ "./node_modules/underscore/modules/index-all.js");
-/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! jquery */ "./node_modules/jquery/dist/jquery.js");
-/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_1__);
-/* harmony import */ var _constants_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./constants.js */ "./core/src/OC/constants.js");
-/**
- * @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>
- *
- * @author Christoph Wurst <christoph@winzerhof-wurst.at>
- * @author Daniel Calviño Sánchez <danxuliu@gmail.com>
- * @author John Molakvoæ <skjnldsv@protonmail.com>
- *
- * @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 <http://www.gnu.org/licenses/>.
- *
- */
-
-
-/** @typedef {import('jquery')} jQuery */
-
-
-var currentMenu = null;
-var currentMenuToggle = null;
-
-/**
- * For menu toggling
- *
- * @param {jQuery} $toggle the toggle element
- * @param {jQuery} $menuEl the menu container element
- * @param {Function | undefined} toggle callback invoked everytime the menu is opened
- * @param {boolean} headerMenu is this a top right header menu?
- * @return {void}
- */
-var registerMenu = function registerMenu($toggle, $menuEl, toggle, headerMenu) {
- $menuEl.addClass('menu');
- var isClickableElement = $toggle.prop('tagName') === 'A' || $toggle.prop('tagName') === 'BUTTON';
-
- // On link and button, the enter key trigger a click event
- // Only use the click to avoid two fired events
- $toggle.on(isClickableElement ? 'click.menu' : 'click.menu keyup.menu', function (event) {
- // prevent the link event (append anchor to URL)
- event.preventDefault();
-
- // allow enter key as a trigger
- if (event.key && event.key !== 'Enter') {
- return;
- }
- if ($menuEl.is(currentMenu)) {
- hideMenus();
- return;
- } else if (currentMenu) {
- // another menu was open?
- // close it
- hideMenus();
- }
- if (headerMenu === true) {
- $menuEl.parent().addClass('openedMenu');
- }
-
- // Set menu to expanded
- $toggle.attr('aria-expanded', true);
- $menuEl.slideToggle(_constants_js__WEBPACK_IMPORTED_MODULE_2__.menuSpeed, toggle);
- currentMenu = $menuEl;
- currentMenuToggle = $toggle;
- });
-};
-
-/**
- * Unregister a previously registered menu
- *
- * @param {jQuery} $toggle the toggle element
- * @param {jQuery} $menuEl the menu container element
- */
-var unregisterMenu = function unregisterMenu($toggle, $menuEl) {
- // close menu if opened
- if ($menuEl.is(currentMenu)) {
- hideMenus();
- }
- $toggle.off('click.menu').removeClass('menutoggle');
- $menuEl.removeClass('menu');
-};
-
-/**
- * Hides any open menus
- *
- * @param {Function} complete callback when the hiding animation is done
- */
-var hideMenus = function hideMenus(complete) {
- if (currentMenu) {
- var lastMenu = currentMenu;
- currentMenu.trigger(new (jquery__WEBPACK_IMPORTED_MODULE_1___default().Event)('beforeHide'));
- currentMenu.slideUp(_constants_js__WEBPACK_IMPORTED_MODULE_2__.menuSpeed, function () {
- lastMenu.trigger(new (jquery__WEBPACK_IMPORTED_MODULE_1___default().Event)('afterHide'));
- if (complete) {
- complete.apply(this, arguments);
- }
- });
- }
-
- // Set menu to closed
- jquery__WEBPACK_IMPORTED_MODULE_1___default()('.menutoggle').attr('aria-expanded', false);
- if (currentMenuToggle) {
- currentMenuToggle.attr('aria-expanded', false);
- }
- jquery__WEBPACK_IMPORTED_MODULE_1___default()('.openedMenu').removeClass('openedMenu');
- currentMenu = null;
- currentMenuToggle = null;
-};
-
-/**
- * Shows a given element as menu
- *
- * @param {object} [$toggle=null] menu toggle
- * @param {object} $menuEl menu element
- * @param {Function} complete callback when the showing animation is done
- */
-var showMenu = function showMenu($toggle, $menuEl, complete) {
- if ($menuEl.is(currentMenu)) {
- return;
- }
- hideMenus();
- currentMenu = $menuEl;
- currentMenuToggle = $toggle;
- $menuEl.trigger(new (jquery__WEBPACK_IMPORTED_MODULE_1___default().Event)('beforeShow'));
- $menuEl.show();
- $menuEl.trigger(new (jquery__WEBPACK_IMPORTED_MODULE_1___default().Event)('afterShow'));
- // no animation
- if (underscore__WEBPACK_IMPORTED_MODULE_0__["default"].isFunction(complete)) {
- complete();
- }
-};
-
-/***/ }),
-
-/***/ "./core/src/OC/msg.js":
-/*!****************************!*\
- !*** ./core/src/OC/msg.js ***!
- \****************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! jquery */ "./node_modules/jquery/dist/jquery.js");
-/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);
-/**
- * @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>
- *
- * @author Christoph Wurst <christoph@winzerhof-wurst.at>
- * @author John Molakvoæ <skjnldsv@protonmail.com>
- * @author rakekniven <mark.ziegler@rakekniven.de>
- *
- * @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 <http://www.gnu.org/licenses/>.
- *
- */
-
-
-
-/**
- * A little class to manage a status field for a "saving" process.
- * It can be used to display a starting message (e.g. "Saving...") and then
- * replace it with a green success message or a red error message.
- *
- * @namespace OC.msg
- */
-/* harmony default export */ __webpack_exports__["default"] = ({
- /**
- * Displayes a "Saving..." message in the given message placeholder
- *
- * @param {object} selector Placeholder to display the message in
- */
- startSaving: function startSaving(selector) {
- this.startAction(selector, t('core', 'Saving …'));
- },
- /**
- * Displayes a custom message in the given message placeholder
- *
- * @param {object} selector Placeholder to display the message in
- * @param {string} message Plain text message to display (no HTML allowed)
- */
- startAction: function startAction(selector, message) {
- jquery__WEBPACK_IMPORTED_MODULE_0___default()(selector).text(message).removeClass('success').removeClass('error').stop(true, true).show();
- },
- /**
- * Displayes an success/error message in the given selector
- *
- * @param {object} selector Placeholder to display the message in
- * @param {object} response Response of the server
- * @param {object} response.data Data of the servers response
- * @param {string} response.data.message Plain text message to display (no HTML allowed)
- * @param {string} response.status is being used to decide whether the message
- * is displayed as an error/success
- */
- finishedSaving: function finishedSaving(selector, response) {
- this.finishedAction(selector, response);
- },
- /**
- * Displayes an success/error message in the given selector
- *
- * @param {object} selector Placeholder to display the message in
- * @param {object} response Response of the server
- * @param {object} response.data Data of the servers response
- * @param {string} response.data.message Plain text message to display (no HTML allowed)
- * @param {string} response.status is being used to decide whether the message
- * is displayed as an error/success
- */
- finishedAction: function finishedAction(selector, response) {
- if (response.status === 'success') {
- this.finishedSuccess(selector, response.data.message);
- } else {
- this.finishedError(selector, response.data.message);
- }
- },
- /**
- * Displayes an success message in the given selector
- *
- * @param {object} selector Placeholder to display the message in
- * @param {string} message Plain text success message to display (no HTML allowed)
- */
- finishedSuccess: function finishedSuccess(selector, message) {
- jquery__WEBPACK_IMPORTED_MODULE_0___default()(selector).text(message).addClass('success').removeClass('error').stop(true, true).delay(3000).fadeOut(900).show();
- },
- /**
- * Displayes an error message in the given selector
- *
- * @param {object} selector Placeholder to display the message in
- * @param {string} message Plain text error message to display (no HTML allowed)
- */
- finishedError: function finishedError(selector, message) {
- jquery__WEBPACK_IMPORTED_MODULE_0___default()(selector).text(message).addClass('error').removeClass('success').show();
- }
-});
-
-/***/ }),
-
-/***/ "./core/src/OC/navigation.js":
-/*!***********************************!*\
- !*** ./core/src/OC/navigation.js ***!
- \***********************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ redirect: function() { return /* binding */ redirect; },
-/* harmony export */ reload: function() { return /* binding */ reload; }
-/* harmony export */ });
-/**
- * @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>
- *
- * @author Christoph Wurst <christoph@winzerhof-wurst.at>
- * @author John Molakvoæ <skjnldsv@protonmail.com>
- *
- * @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 <http://www.gnu.org/licenses/>.
- *
- */
-
-var redirect = function redirect(targetURL) {
- window.location = targetURL;
-};
-
-/**
- * Reloads the current page
- *
- * @deprecated 17.0.0 use window.location.reload directly
- */
-var reload = function reload() {
- window.location.reload();
-};
-
-/***/ }),
-
-/***/ "./core/src/OC/notification.js":
-/*!*************************************!*\
- !*** ./core/src/OC/notification.js ***!
- \*************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var underscore__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! underscore */ "./node_modules/underscore/modules/index-all.js");
-/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! jquery */ "./node_modules/jquery/dist/jquery.js");
-/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_1__);
-/* harmony import */ var _nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @nextcloud/dialogs */ "./node_modules/@nextcloud/dialogs/dist/index.mjs");
-/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js");
-/**
- * @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>
- *
- * @author Christoph Wurst <christoph@winzerhof-wurst.at>
- * @author Daniel Calviño Sánchez <danxuliu@gmail.com>
- * @author Joas Schilling <coding@schilljs.com>
- * @author John Molakvoæ <skjnldsv@protonmail.com>
- * @author Julius Härtl <jus@bitgrid.net>
- * @author npmbuildbot[bot] "npmbuildbot[bot]@users.noreply.github.com"
- *
- * @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 <http://www.gnu.org/licenses/>.
- *
- */
-
-
-/** @typedef {import('jquery')} jQuery */
-
-
-
-/**
- * @todo Write documentation
- * @deprecated 17.0.0 use the `@nextcloud/dialogs` package instead
- * @namespace OC.Notification
- */
-/* harmony default export */ __webpack_exports__["default"] = ({
- updatableNotification: null,
- getDefaultNotificationFunction: null,
- /**
- * @param {Function} callback callback function
- * @deprecated 17.0.0 use the `@nextcloud/dialogs` package
- */
- setDefault: function setDefault(callback) {
- this.getDefaultNotificationFunction = callback;
- },
- /**
- * Hides a notification.
- *
- * If a row is given, only hide that one.
- * If no row is given, hide all notifications.
- *
- * @param {jQuery} [$row] notification row
- * @param {Function} [callback] callback
- * @deprecated 17.0.0 use the `@nextcloud/dialogs` package
- */
- hide: function hide($row, callback) {
- if (underscore__WEBPACK_IMPORTED_MODULE_0__["default"].isFunction($row)) {
- // first arg is the callback
- callback = $row;
- $row = undefined;
- }
- if (!$row) {
- console.error('Missing argument $row in OC.Notification.hide() call, caller needs to be adjusted to only dismiss its own notification');
- return;
- }
-
- // remove the row directly
- $row.each(function () {
- if (jquery__WEBPACK_IMPORTED_MODULE_1___default()(this)[0].toastify) {
- jquery__WEBPACK_IMPORTED_MODULE_1___default()(this)[0].toastify.hideToast();
- } else {
- console.error('cannot hide toast because object is not set');
- }
- if (this === this.updatableNotification) {
- this.updatableNotification = null;
- }
- });
- if (callback) {
- callback.call();
- }
- if (this.getDefaultNotificationFunction) {
- this.getDefaultNotificationFunction();
- }
- },
- /**
- * Shows a notification as HTML without being sanitized before.
- * If you pass unsanitized user input this may lead to a XSS vulnerability.
- * Consider using show() instead of showHTML()
- *
- * @param {string} html Message to display
- * @param {object} [options] options
- * @param {string} [options.type] notification type
- * @param {number} [options.timeout=0] timeout value, defaults to 0 (permanent)
- * @return {jQuery} jQuery element for notification row
- * @deprecated 17.0.0 use the `@nextcloud/dialogs` package
- */
- showHtml: function showHtml(html, options) {
- options = options || {};
- options.isHTML = true;
- options.timeout = !options.timeout ? _nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_2__.TOAST_PERMANENT_TIMEOUT : options.timeout;
- var toast = (0,_nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_2__.showMessage)(html, options);
- toast.toastElement.toastify = toast;
- return jquery__WEBPACK_IMPORTED_MODULE_1___default()(toast.toastElement);
- },
- /**
- * Shows a sanitized notification
- *
- * @param {string} text Message to display
- * @param {object} [options] options
- * @param {string} [options.type] notification type
- * @param {number} [options.timeout=0] timeout value, defaults to 0 (permanent)
- * @return {jQuery} jQuery element for notification row
- * @deprecated 17.0.0 use the `@nextcloud/dialogs` package
- */
- show: function show(text, options) {
- var escapeHTML = function escapeHTML(text) {
- return text.toString().split('&').join('&amp;').split('<').join('&lt;').split('>').join('&gt;').split('"').join('&quot;').split('\'').join('&#039;');
- };
- options = options || {};
- options.timeout = !options.timeout ? _nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_2__.TOAST_PERMANENT_TIMEOUT : options.timeout;
- var toast = (0,_nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_2__.showMessage)(escapeHTML(text), options);
- toast.toastElement.toastify = toast;
- return jquery__WEBPACK_IMPORTED_MODULE_1___default()(toast.toastElement);
- },
- /**
- * Updates (replaces) a sanitized notification.
- *
- * @param {string} text Message to display
- * @return {jQuery} JQuery element for notificaiton row
- * @deprecated 17.0.0 use the `@nextcloud/dialogs` package
- */
- showUpdate: function showUpdate(text) {
- if (this.updatableNotification) {
- this.updatableNotification.hideToast();
- }
- this.updatableNotification = (0,_nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_2__.showMessage)(text, {
- timeout: _nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_2__.TOAST_PERMANENT_TIMEOUT
- });
- this.updatableNotification.toastElement.toastify = this.updatableNotification;
- return jquery__WEBPACK_IMPORTED_MODULE_1___default()(this.updatableNotification.toastElement);
- },
- /**
- * Shows a notification that disappears after x seconds, default is
- * 7 seconds
- *
- * @param {string} text Message to show
- * @param {Array} [options] options array
- * @param {number} [options.timeout=7] timeout in seconds, if this is 0 it will show the message permanently
- * @param {boolean} [options.isHTML=false] an indicator for HTML notifications (true) or text (false)
- * @param {string} [options.type] notification type
- * @return {JQuery} the toast element
- * @deprecated 17.0.0 use the `@nextcloud/dialogs` package
- */
- showTemporary: function showTemporary(text, options) {
- options = options || {};
- options.timeout = options.timeout || _nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_2__.TOAST_DEFAULT_TIMEOUT;
- var toast = (0,_nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_2__.showMessage)(text, options);
- toast.toastElement.toastify = toast;
- return jquery__WEBPACK_IMPORTED_MODULE_1___default()(toast.toastElement);
- },
- /**
- * Returns whether a notification is hidden.
- *
- * @return {boolean}
- * @deprecated 17.0.0 use the `@nextcloud/dialogs` package
- */
- isHidden: function isHidden() {
- return !jquery__WEBPACK_IMPORTED_MODULE_1___default()('#content').find('.toastify').length;
- }
-});
-
-/***/ }),
-
-/***/ "./core/src/OC/password-confirmation.js":
-/*!**********************************************!*\
- !*** ./core/src/OC/password-confirmation.js ***!
- \**********************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var underscore__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! underscore */ "./node_modules/underscore/modules/index-all.js");
-/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! jquery */ "./node_modules/jquery/dist/jquery.js");
-/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_1__);
-/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! moment */ "./node_modules/moment/moment.js");
-/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(moment__WEBPACK_IMPORTED_MODULE_2__);
-/* harmony import */ var _nextcloud_router__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @nextcloud/router */ "./node_modules/@nextcloud/router/dist/index.js");
-/* harmony import */ var _index_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./index.js */ "./core/src/OC/index.js");
-/**
- * @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>
- *
- * @author Christoph Wurst <christoph@winzerhof-wurst.at>
- * @author John Molakvoæ <skjnldsv@protonmail.com>
- * @author Roeland Jago Douma <roeland@famdouma.nl>
- *
- * @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 <http://www.gnu.org/licenses/>.
- *
- */
-
-
-
-
-
-
-
-/**
- * @namespace OC.PasswordConfirmation
- */
-/* harmony default export */ __webpack_exports__["default"] = ({
- callback: null,
- pageLoadTime: null,
- init: function init() {
- jquery__WEBPACK_IMPORTED_MODULE_1___default()('.password-confirm-required').on('click', underscore__WEBPACK_IMPORTED_MODULE_0__["default"].bind(this.requirePasswordConfirmation, this));
- this.pageLoadTime = moment__WEBPACK_IMPORTED_MODULE_2___default().now();
- },
- requiresPasswordConfirmation: function requiresPasswordConfirmation() {
- var serverTimeDiff = this.pageLoadTime - window.nc_pageLoad * 1000;
- var timeSinceLogin = moment__WEBPACK_IMPORTED_MODULE_2___default().now() - (serverTimeDiff + window.nc_lastLogin * 1000);
-
- // if timeSinceLogin > 30 minutes and user backend allows password confirmation
- return window.backendAllowsPasswordConfirmation && timeSinceLogin > 30 * 60 * 1000;
- },
- /**
- * @param {Function} callback success callback function
- * @param {object} options options
- * @param {Function} rejectCallback error callback function
- */
- requirePasswordConfirmation: function requirePasswordConfirmation(callback, options, rejectCallback) {
- options = typeof options !== 'undefined' ? options : {};
- var defaults = {
- title: t('core', 'Authentication required'),
- text: t('core', 'This action requires you to confirm your password'),
- confirm: t('core', 'Confirm'),
- label: t('core', 'Password'),
- error: ''
- };
- var config = underscore__WEBPACK_IMPORTED_MODULE_0__["default"].extend(defaults, options);
- var self = this;
- if (this.requiresPasswordConfirmation()) {
- _index_js__WEBPACK_IMPORTED_MODULE_4__["default"].dialogs.prompt(config.text, config.title, function (result, password) {
- if (result && password !== '') {
- self._confirmPassword(password, config);
- } else if (underscore__WEBPACK_IMPORTED_MODULE_0__["default"].isFunction(rejectCallback)) {
- rejectCallback();
- }
- }, true, config.label, true).then(function () {
- var $dialog = jquery__WEBPACK_IMPORTED_MODULE_1___default()('.oc-dialog:visible');
- $dialog.find('.ui-icon').remove();
- $dialog.addClass('password-confirmation');
- if (config.error !== '') {
- var $error = jquery__WEBPACK_IMPORTED_MODULE_1___default()('<p></p>').addClass('msg warning').text(config.error);
- $dialog.find('.oc-dialog-content').append($error);
- }
- var $buttonrow = $dialog.find('.oc-dialog-buttonrow');
- $buttonrow.addClass('aside');
- var $buttons = $buttonrow.find('button');
- $buttons.eq(0).hide();
- $buttons.eq(1).text(config.confirm);
- });
- }
- this.callback = callback;
- },
- _confirmPassword: function _confirmPassword(password, config) {
- var self = this;
- jquery__WEBPACK_IMPORTED_MODULE_1___default().ajax({
- url: (0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_3__.generateUrl)('/login/confirm'),
- data: {
- password: password
- },
- type: 'POST',
- success: function success(response) {
- window.nc_lastLogin = response.lastLogin;
- if (underscore__WEBPACK_IMPORTED_MODULE_0__["default"].isFunction(self.callback)) {
- self.callback();
- }
- },
- error: function error() {
- config.error = t('core', 'Failed to authenticate, try again');
- _index_js__WEBPACK_IMPORTED_MODULE_4__["default"].PasswordConfirmation.requirePasswordConfirmation(self.callback, config);
- }
- });
- }
-});
-
-/***/ }),
-
-/***/ "./core/src/OC/plugins.js":
-/*!********************************!*\
- !*** ./core/src/OC/plugins.js ***!
- \********************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/**
- * @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>
- *
- * @author Christoph Wurst <christoph@winzerhof-wurst.at>
- * @author John Molakvoæ <skjnldsv@protonmail.com>
- *
- * @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 <http://www.gnu.org/licenses/>.
- *
- */
-
-/* harmony default export */ __webpack_exports__["default"] = ({
- /**
- * @type {Array.<OC.Plugin>}
- */
- _plugins: {},
- /**
- * Register plugin
- *
- * @param {string} targetName app name / class name to hook into
- * @param {OC.Plugin} plugin plugin
- */
- register: function register(targetName, plugin) {
- var plugins = this._plugins[targetName];
- if (!plugins) {
- plugins = this._plugins[targetName] = [];
- }
- plugins.push(plugin);
- },
- /**
- * Returns all plugin registered to the given target
- * name / app name / class name.
- *
- * @param {string} targetName app name / class name to hook into
- * @return {Array.<OC.Plugin>} array of plugins
- */
- getPlugins: function getPlugins(targetName) {
- return this._plugins[targetName] || [];
- },
- /**
- * Call attach() on all plugins registered to the given target name.
- *
- * @param {string} targetName app name / class name
- * @param {object} targetObject to be extended
- * @param {object} [options] options
- */
- attach: function attach(targetName, targetObject, options) {
- var plugins = this.getPlugins(targetName);
- for (var i = 0; i < plugins.length; i++) {
- if (plugins[i].attach) {
- plugins[i].attach(targetObject, options);
- }
- }
- },
- /**
- * Call detach() on all plugins registered to the given target name.
- *
- * @param {string} targetName app name / class name
- * @param {object} targetObject to be extended
- * @param {object} [options] options
- */
- detach: function detach(targetName, targetObject, options) {
- var plugins = this.getPlugins(targetName);
- for (var i = 0; i < plugins.length; i++) {
- if (plugins[i].detach) {
- plugins[i].detach(targetObject, options);
- }
- }
- }
-});
-
-/***/ }),
-
-/***/ "./core/src/OC/query-string.js":
-/*!*************************************!*\
- !*** ./core/src/OC/query-string.js ***!
- \*************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ build: function() { return /* binding */ build; },
-/* harmony export */ parse: function() { return /* binding */ parse; }
-/* harmony export */ });
-/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! jquery */ "./node_modules/jquery/dist/jquery.js");
-/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);
-/**
- * @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>
- *
- * @author Christoph Wurst <christoph@winzerhof-wurst.at>
- * @author John Molakvoæ <skjnldsv@protonmail.com>
- * @author Roeland Jago Douma <roeland@famdouma.nl>
- *
- * @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 <http://www.gnu.org/licenses/>.
- *
- */
-
-
-
-/**
- * Parses a URL query string into a JS map
- *
- * @param {string} queryString query string in the format param1=1234&param2=abcde&param3=xyz
- * @return {Object<string, string>} map containing key/values matching the URL parameters
- */
-var parse = function parse(queryString) {
- var pos;
- var components;
- var result = {};
- var key;
- if (!queryString) {
- return null;
- }
- pos = queryString.indexOf('?');
- if (pos >= 0) {
- queryString = queryString.substr(pos + 1);
- }
- var parts = queryString.replace(/\+/g, '%20').split('&');
- for (var i = 0; i < parts.length; i++) {
- // split on first equal sign
- var part = parts[i];
- pos = part.indexOf('=');
- if (pos >= 0) {
- components = [part.substr(0, pos), part.substr(pos + 1)];
- } else {
- // key only
- components = [part];
- }
- if (!components.length) {
- continue;
- }
- key = decodeURIComponent(components[0]);
- if (!key) {
- continue;
- }
- // if equal sign was there, return string
- if (components.length > 1) {
- result[key] = decodeURIComponent(components[1]);
- } else {
- // no equal sign => null value
- result[key] = null;
- }
- }
- return result;
-};
-
-/**
- * Builds a URL query from a JS map.
- *
- * @param {Object<string, string>} params map containing key/values matching the URL parameters
- * @return {string} String containing a URL query (without question) mark
- */
-var build = function build(params) {
- if (!params) {
- return '';
- }
- return jquery__WEBPACK_IMPORTED_MODULE_0___default().map(params, function (value, key) {
- var s = encodeURIComponent(key);
- if (value !== null && typeof value !== 'undefined') {
- s += '=' + encodeURIComponent(value);
- }
- return s;
- }).join('&');
-};
-
-/***/ }),
-
-/***/ "./core/src/OC/requesttoken.js":
-/*!*************************************!*\
- !*** ./core/src/OC/requesttoken.js ***!
- \*************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ getToken: function() { return /* binding */ getToken; },
-/* harmony export */ manageToken: function() { return /* binding */ manageToken; },
-/* harmony export */ setToken: function() { return /* binding */ setToken; }
-/* harmony export */ });
-/* harmony import */ var _nextcloud_event_bus__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/event-bus */ "./node_modules/@nextcloud/event-bus/dist/index.mjs");
-/**
- * @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>
- *
- * @author Christoph Wurst <christoph@winzerhof-wurst.at>
- * @author John Molakvoæ <skjnldsv@protonmail.com>
- *
- * @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 <http://www.gnu.org/licenses/>.
- *
- */
-
-
-
-/**
- * @private
- * @param {Document} global the document to read the initial value from
- * @param {Function} emit the function to invoke for every new token
- * @return {object}
- */
-var manageToken = function manageToken(global, emit) {
- var token = global.getElementsByTagName('head')[0].getAttribute('data-requesttoken');
- return {
- getToken: function getToken() {
- return token;
- },
- setToken: function setToken(newToken) {
- token = newToken;
- emit('csrf-token-update', {
- token: token
- });
- }
- };
-};
-var manageFromDocument = manageToken(document, _nextcloud_event_bus__WEBPACK_IMPORTED_MODULE_0__.emit);
-
-/**
- * @return {string}
- */
-var getToken = manageFromDocument.getToken;
-
-/**
- * @param {string} newToken new token
- */
-var setToken = manageFromDocument.setToken;
-
-/***/ }),
-
-/***/ "./core/src/OC/routing.js":
-/*!********************************!*\
- !*** ./core/src/OC/routing.js ***!
- \********************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ linkToRemoteBase: function() { return /* binding */ linkToRemoteBase; }
-/* harmony export */ });
-/* harmony import */ var _nextcloud_router__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/router */ "./node_modules/@nextcloud/router/dist/index.js");
-/**
- * @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>
- *
- * @author Christoph Wurst <christoph@winzerhof-wurst.at>
- * @author John Molakvoæ <skjnldsv@protonmail.com>
- * @author Roeland Jago Douma <roeland@famdouma.nl>
- *
- * @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 <http://www.gnu.org/licenses/>.
- *
- */
-
-
-
-/**
- * Creates a relative url for remote use
- *
- * @param {string} service id
- * @return {string} the url
- */
-var linkToRemoteBase = function linkToRemoteBase(service) {
- return (0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_0__.getRootUrl)() + '/remote.php/' + service;
-};
-
-/***/ }),
-
-/***/ "./core/src/OC/theme.js":
-/*!******************************!*\
- !*** ./core/src/OC/theme.js ***!
- \******************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ theme: function() { return /* binding */ theme; }
-/* harmony export */ });
-/**
- * @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>
- *
- * @author Christoph Wurst <christoph@winzerhof-wurst.at>
- *
- * @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 <http://www.gnu.org/licenses/>.
- *
- */
-
-var theme = window._theme || {};
-
-/***/ }),
-
-/***/ "./core/src/OC/util-history.js":
-/*!*************************************!*\
- !*** ./core/src/OC/util-history.js ***!
- \*************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var underscore__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! underscore */ "./node_modules/underscore/modules/index-all.js");
-/* harmony import */ var _index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./index.js */ "./core/src/OC/index.js");
-/**
- * @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>
- *
- * @author Christoph Wurst <christoph@winzerhof-wurst.at>
- * @author John Molakvoæ <skjnldsv@protonmail.com>
- *
- * @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 <http://www.gnu.org/licenses/>.
- *
- */
-
-
-
-
-/**
- * Utility class for the history API,
- * includes fallback to using the URL hash when
- * the browser doesn't support the history API.
- *
- * @namespace OC.Util.History
- */
-/* harmony default export */ __webpack_exports__["default"] = ({
- _handlers: [],
- /**
- * Push the current URL parameters to the history stack
- * and change the visible URL.
- * Note: this includes a workaround for IE8/IE9 that uses
- * the hash part instead of the search part.
- *
- * @param {object | string} params to append to the URL, can be either a string
- * or a map
- * @param {string} [url] URL to be used, otherwise the current URL will be used,
- * using the params as query string
- * @param {boolean} [replace=false] whether to replace instead of pushing
- */
- _pushState: function _pushState(params, url, replace) {
- var strParams;
- if (typeof params === 'string') {
- strParams = params;
- } else {
- strParams = _index_js__WEBPACK_IMPORTED_MODULE_1__["default"].buildQueryString(params);
- }
- if (window.history.pushState) {
- url = url || location.pathname + '?' + strParams;
- // Workaround for bug with SVG and window.history.pushState on Firefox < 51
- // https://bugzilla.mozilla.org/show_bug.cgi?id=652991
- var isFirefox = navigator.userAgent.toLowerCase().indexOf('firefox') > -1;
- if (isFirefox && parseInt(navigator.userAgent.split('/').pop()) < 51) {
- var patterns = document.querySelectorAll('[fill^="url(#"], [stroke^="url(#"], [filter^="url(#invert"]');
- for (var i = 0, ii = patterns.length, pattern; i < ii; i++) {
- pattern = patterns[i];
- // eslint-disable-next-line no-self-assign
- pattern.style.fill = pattern.style.fill;
- // eslint-disable-next-line no-self-assign
- pattern.style.stroke = pattern.style.stroke;
- pattern.removeAttribute('filter');
- pattern.setAttribute('filter', 'url(#invert)');
- }
- }
- if (replace) {
- window.history.replaceState(params, '', url);
- } else {
- window.history.pushState(params, '', url);
- }
- } else {
- // use URL hash for IE8
- window.location.hash = '?' + strParams;
- // inhibit next onhashchange that just added itself
- // to the event queue
- this._cancelPop = true;
- }
- },
- /**
- * Push the current URL parameters to the history stack
- * and change the visible URL.
- * Note: this includes a workaround for IE8/IE9 that uses
- * the hash part instead of the search part.
- *
- * @param {object | string} params to append to the URL, can be either a string or a map
- * @param {string} [url] URL to be used, otherwise the current URL will be used, using the params as query string
- */
- pushState: function pushState(params, url) {
- this._pushState(params, url, false);
- },
- /**
- * Push the current URL parameters to the history stack
- * and change the visible URL.
- * Note: this includes a workaround for IE8/IE9 that uses
- * the hash part instead of the search part.
- *
- * @param {object | string} params to append to the URL, can be either a string
- * or a map
- * @param {string} [url] URL to be used, otherwise the current URL will be used,
- * using the params as query string
- */
- replaceState: function replaceState(params, url) {
- this._pushState(params, url, true);
- },
- /**
- * Add a popstate handler
- *
- * @param {Function} handler handler
- */
- addOnPopStateHandler: function addOnPopStateHandler(handler) {
- this._handlers.push(handler);
- },
- /**
- * Parse a query string from the hash part of the URL.
- * (workaround for IE8 / IE9)
- *
- * @return {string}
- */
- _parseHashQuery: function _parseHashQuery() {
- var hash = window.location.hash;
- var pos = hash.indexOf('?');
- if (pos >= 0) {
- return hash.substr(pos + 1);
- }
- if (hash.length) {
- // remove hash sign
- return hash.substr(1);
- }
- return '';
- },
- _decodeQuery: function _decodeQuery(query) {
- return query.replace(/\+/g, ' ');
- },
- /**
- * Parse the query/search part of the URL.
- * Also try and parse it from the URL hash (for IE8)
- *
- * @return {object} map of parameters
- */
- parseUrlQuery: function parseUrlQuery() {
- var query = this._parseHashQuery();
- var params;
- // try and parse from URL hash first
- if (query) {
- params = _index_js__WEBPACK_IMPORTED_MODULE_1__["default"].parseQueryString(this._decodeQuery(query));
- }
- // else read from query attributes
- params = underscore__WEBPACK_IMPORTED_MODULE_0__["default"].extend(params || {}, _index_js__WEBPACK_IMPORTED_MODULE_1__["default"].parseQueryString(this._decodeQuery(location.search)));
- return params || {};
- },
- _onPopState: function _onPopState(e) {
- if (this._cancelPop) {
- this._cancelPop = false;
- return;
- }
- var params;
- if (!this._handlers.length) {
- return;
- }
- params = e && e.state;
- if (underscore__WEBPACK_IMPORTED_MODULE_0__["default"].isString(params)) {
- params = _index_js__WEBPACK_IMPORTED_MODULE_1__["default"].parseQueryString(params);
- } else if (!params) {
- params = this.parseUrlQuery() || {};
- }
- for (var i = 0; i < this._handlers.length; i++) {
- this._handlers[i](params);
- }
- }
-});
-
-/***/ }),
-
-/***/ "./core/src/OC/util.js":
-/*!*****************************!*\
- !*** ./core/src/OC/util.js ***!
- \*****************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! moment */ "./node_modules/moment/moment.js");
-/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(moment__WEBPACK_IMPORTED_MODULE_0__);
-/* harmony import */ var _util_history_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./util-history.js */ "./core/src/OC/util-history.js");
-/* harmony import */ var _index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./index.js */ "./core/src/OC/index.js");
-/* harmony import */ var _nextcloud_files__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @nextcloud/files */ "./node_modules/@nextcloud/files/dist/index.mjs");
-/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js");
-/**
- * @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>
- *
- * @author Christoph Wurst <christoph@winzerhof-wurst.at>
- * @author John Molakvoæ <skjnldsv@protonmail.com>
- *
- * @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 <http://www.gnu.org/licenses/>.
- *
- */
-
-
-
-
-
-
-/**
- * @param {any} t -
- */
-function chunkify(t) {
- // Adapted from http://my.opera.com/GreyWyvern/blog/show.dml/1671288
- var tz = [];
- var x = 0;
- var y = -1;
- var n = 0;
- var c;
- while (x < t.length) {
- c = t.charAt(x);
- // only include the dot in strings
- var m = !n && c === '.' || c >= '0' && c <= '9';
- if (m !== n) {
- // next chunk
- y++;
- tz[y] = '';
- n = m;
- }
- tz[y] += c;
- x++;
- }
- return tz;
-}
-
-/**
- * Utility functions
- *
- * @namespace OC.Util
- */
-/* harmony default export */ __webpack_exports__["default"] = ({
- History: _util_history_js__WEBPACK_IMPORTED_MODULE_1__["default"],
- /**
- * @deprecated use https://nextcloud.github.io/nextcloud-files/functions/formatFileSize.html
- */
- humanFileSize: _nextcloud_files__WEBPACK_IMPORTED_MODULE_3__.formatFileSize,
- /**
- * Returns a file size in bytes from a humanly readable string
- * Makes 2kB to 2048.
- * Inspired by computerFileSize in helper.php
- *
- * @param {string} string file size in human-readable format
- * @return {number} or null if string could not be parsed
- *
- *
- */
- computerFileSize: function computerFileSize(string) {
- if (typeof string !== 'string') {
- return null;
- }
- var s = string.toLowerCase().trim();
- var bytes = null;
- var bytesArray = {
- b: 1,
- k: 1024,
- kb: 1024,
- mb: 1024 * 1024,
- m: 1024 * 1024,
- gb: 1024 * 1024 * 1024,
- g: 1024 * 1024 * 1024,
- tb: 1024 * 1024 * 1024 * 1024,
- t: 1024 * 1024 * 1024 * 1024,
- pb: 1024 * 1024 * 1024 * 1024 * 1024,
- p: 1024 * 1024 * 1024 * 1024 * 1024
- };
- var matches = s.match(/^[\s+]?([0-9]*)(\.([0-9]+))?( +)?([kmgtp]?b?)$/i);
- if (matches !== null) {
- bytes = parseFloat(s);
- if (!isFinite(bytes)) {
- return null;
- }
- } else {
- return null;
- }
- if (matches[5]) {
- bytes = bytes * bytesArray[matches[5]];
- }
- bytes = Math.round(bytes);
- return bytes;
- },
- /**
- * @param {string|number} timestamp timestamp
- * @param {string} format date format, see momentjs docs
- * @return {string} timestamp formatted as requested
- */
- formatDate: function formatDate(timestamp, format) {
- if (window.TESTING === undefined) {
- _index_js__WEBPACK_IMPORTED_MODULE_2__["default"].debug && console.warn('OC.Util.formatDate is deprecated and will be removed in Nextcloud 21. See @nextcloud/moment');
- }
- format = format || 'LLL';
- return moment__WEBPACK_IMPORTED_MODULE_0___default()(timestamp).format(format);
- },
- /**
- * @param {string|number} timestamp timestamp
- * @return {string} human readable difference from now
- */
- relativeModifiedDate: function relativeModifiedDate(timestamp) {
- if (window.TESTING === undefined) {
- _index_js__WEBPACK_IMPORTED_MODULE_2__["default"].debug && console.warn('OC.Util.relativeModifiedDate is deprecated and will be removed in Nextcloud 21. See @nextcloud/moment');
- }
- var diff = moment__WEBPACK_IMPORTED_MODULE_0___default()().diff(moment__WEBPACK_IMPORTED_MODULE_0___default()(timestamp));
- if (diff >= 0 && diff < 45000) {
- return t('core', 'seconds ago');
- }
- return moment__WEBPACK_IMPORTED_MODULE_0___default()(timestamp).fromNow();
- },
- /**
- * Returns the width of a generic browser scrollbar
- *
- * @return {number} width of scrollbar
- */
- getScrollBarWidth: function getScrollBarWidth() {
- if (this._scrollBarWidth) {
- return this._scrollBarWidth;
- }
- var inner = document.createElement('p');
- inner.style.width = '100%';
- inner.style.height = '200px';
- var outer = document.createElement('div');
- outer.style.position = 'absolute';
- outer.style.top = '0px';
- outer.style.left = '0px';
- outer.style.visibility = 'hidden';
- outer.style.width = '200px';
- outer.style.height = '150px';
- outer.style.overflow = 'hidden';
- outer.appendChild(inner);
- document.body.appendChild(outer);
- var w1 = inner.offsetWidth;
- outer.style.overflow = 'scroll';
- var w2 = inner.offsetWidth;
- if (w1 === w2) {
- w2 = outer.clientWidth;
- }
- document.body.removeChild(outer);
- this._scrollBarWidth = w1 - w2;
- return this._scrollBarWidth;
- },
- /**
- * Remove the time component from a given date
- *
- * @param {Date} date date
- * @return {Date} date with stripped time
- */
- stripTime: function stripTime(date) {
- // FIXME: likely to break when crossing DST
- // would be better to use a library like momentJS
- return new Date(date.getFullYear(), date.getMonth(), date.getDate());
- },
- /**
- * Compare two strings to provide a natural sort
- *
- * @param {string} a first string to compare
- * @param {string} b second string to compare
- * @return {number} -1 if b comes before a, 1 if a comes before b
- * or 0 if the strings are identical
- */
- naturalSortCompare: function naturalSortCompare(a, b) {
- var x;
- var aa = chunkify(a);
- var bb = chunkify(b);
- for (x = 0; aa[x] && bb[x]; x++) {
- if (aa[x] !== bb[x]) {
- var aNum = Number(aa[x]);
- var bNum = Number(bb[x]);
- // note: == is correct here
- /* eslint-disable-next-line */
- if (aNum == aa[x] && bNum == bb[x]) {
- return aNum - bNum;
- } else {
- // Note: This locale setting isn't supported by all browsers but for the ones
- // that do there will be more consistency between client-server sorting
- return aa[x].localeCompare(bb[x], _index_js__WEBPACK_IMPORTED_MODULE_2__["default"].getLanguage());
- }
- }
- }
- return aa.length - bb.length;
- },
- /**
- * Calls the callback in a given interval until it returns true
- *
- * @param {Function} callback function to call on success
- * @param {number} interval in milliseconds
- */
- waitFor: function waitFor(callback, interval) {
- var internalCallback = function internalCallback() {
- if (callback() !== true) {
- setTimeout(internalCallback, interval);
- }
- };
- internalCallback();
- },
- /**
- * Checks if a cookie with the given name is present and is set to the provided value.
- *
- * @param {string} name name of the cookie
- * @param {string} value value of the cookie
- * @return {boolean} true if the cookie with the given name has the given value
- */
- isCookieSetToValue: function isCookieSetToValue(name, value) {
- var cookies = document.cookie.split(';');
- for (var i = 0; i < cookies.length; i++) {
- var cookie = cookies[i].split('=');
- if (cookie[0].trim() === name && cookie[1].trim() === value) {
- return true;
- }
- }
- return false;
- }
-});
-
-/***/ }),
-
-/***/ "./core/src/OC/webroot.js":
-/*!********************************!*\
- !*** ./core/src/OC/webroot.js ***!
- \********************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/**
- * @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>
- *
- * @author Christoph Wurst <christoph@winzerhof-wurst.at>
- *
- * @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 <http://www.gnu.org/licenses/>.
- *
- */
-
-var webroot = window._oc_webroot;
-if (typeof webroot === 'undefined') {
- webroot = location.pathname;
- var pos = webroot.indexOf('/index.php/');
- if (pos !== -1) {
- webroot = webroot.substr(0, pos);
- } else {
- webroot = webroot.substr(0, webroot.lastIndexOf('/'));
- }
-}
-/* harmony default export */ __webpack_exports__["default"] = (webroot);
-
-/***/ }),
-
-/***/ "./core/src/OC/xhr-error.js":
-/*!**********************************!*\
- !*** ./core/src/OC/xhr-error.js ***!
- \**********************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ ajaxConnectionLostHandler: function() { return /* binding */ ajaxConnectionLostHandler; },
-/* harmony export */ processAjaxError: function() { return /* binding */ processAjaxError; },
-/* harmony export */ registerXHRForErrorProcessing: function() { return /* binding */ registerXHRForErrorProcessing; }
-/* harmony export */ });
-/* harmony import */ var underscore__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! underscore */ "./node_modules/underscore/modules/index-all.js");
-/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! jquery */ "./node_modules/jquery/dist/jquery.js");
-/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_1__);
-/* harmony import */ var _index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./index.js */ "./core/src/OC/index.js");
-/* harmony import */ var _notification_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./notification.js */ "./core/src/OC/notification.js");
-/**
- * @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>
- *
- * @author Christoph Wurst <christoph@winzerhof-wurst.at>
- * @author John Molakvoæ <skjnldsv@protonmail.com>
- *
- * @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 <http://www.gnu.org/licenses/>.
- *
- */
-
-
-
-
-
-
-/**
- * Warn users that the connection to the server was lost temporarily
- *
- * This function is throttled to prevent stacked notfications.
- * After 7sec the first notification is gone, then we can show another one
- * if necessary.
- */
-var ajaxConnectionLostHandler = underscore__WEBPACK_IMPORTED_MODULE_0__["default"].throttle(function () {
- _notification_js__WEBPACK_IMPORTED_MODULE_3__["default"].showTemporary(t('core', 'Connection to server lost'));
-}, 7 * 1000, {
- trailing: false
-});
-
-/**
- * Process ajax error, redirects to main page
- * if an error/auth error status was returned.
- *
- * @param {XMLHttpRequest} xhr xhr request
- */
-var processAjaxError = function processAjaxError(xhr) {
- // purposefully aborted request ?
- // OC._userIsNavigatingAway needed to distinguish ajax calls cancelled by navigating away
- // from calls cancelled by failed cross-domain ajax due to SSO redirect
- if (xhr.status === 0 && (xhr.statusText === 'abort' || xhr.statusText === 'timeout' || _index_js__WEBPACK_IMPORTED_MODULE_2__["default"]._reloadCalled)) {
- return;
- }
- if (underscore__WEBPACK_IMPORTED_MODULE_0__["default"].contains([302, 303, 307, 401], xhr.status) && _index_js__WEBPACK_IMPORTED_MODULE_2__["default"].currentUser) {
- // sometimes "beforeunload" happens later, so need to defer the reload a bit
- setTimeout(function () {
- if (!_index_js__WEBPACK_IMPORTED_MODULE_2__["default"]._userIsNavigatingAway && !_index_js__WEBPACK_IMPORTED_MODULE_2__["default"]._reloadCalled) {
- var timer = 0;
- var seconds = 5;
- var interval = setInterval(function () {
- _notification_js__WEBPACK_IMPORTED_MODULE_3__["default"].showUpdate(n('core', 'Problem loading page, reloading in %n second', 'Problem loading page, reloading in %n seconds', seconds - timer));
- if (timer >= seconds) {
- clearInterval(interval);
- _index_js__WEBPACK_IMPORTED_MODULE_2__["default"].reload();
- }
- timer++;
- }, 1000 // 1 second interval
- );
-
- // only call reload once
- _index_js__WEBPACK_IMPORTED_MODULE_2__["default"]._reloadCalled = true;
- }
- }, 100);
- } else if (xhr.status === 0) {
- // Connection lost (e.g. WiFi disconnected or server is down)
- setTimeout(function () {
- if (!_index_js__WEBPACK_IMPORTED_MODULE_2__["default"]._userIsNavigatingAway && !_index_js__WEBPACK_IMPORTED_MODULE_2__["default"]._reloadCalled) {
- // TODO: call method above directly
- _index_js__WEBPACK_IMPORTED_MODULE_2__["default"]._ajaxConnectionLostHandler();
- }
- }, 100);
- }
-};
-
-/**
- * Registers XmlHttpRequest object for global error processing.
- *
- * This means that if this XHR object returns 401 or session timeout errors,
- * the current page will automatically be reloaded.
- *
- * @param {XMLHttpRequest} xhr xhr request
- */
-var registerXHRForErrorProcessing = function registerXHRForErrorProcessing(xhr) {
- var loadCallback = function loadCallback() {
- if (xhr.readyState !== 4) {
- return;
- }
- if (xhr.status >= 200 && xhr.status < 300 || xhr.status === 304) {
- return;
- }
-
- // fire jquery global ajax error handler
- jquery__WEBPACK_IMPORTED_MODULE_1___default()(document).trigger(new (jquery__WEBPACK_IMPORTED_MODULE_1___default().Event)('ajaxError'), xhr);
- };
- var errorCallback = function errorCallback() {
- // fire jquery global ajax error handler
- jquery__WEBPACK_IMPORTED_MODULE_1___default()(document).trigger(new (jquery__WEBPACK_IMPORTED_MODULE_1___default().Event)('ajaxError'), xhr);
- };
- if (xhr.addEventListener) {
- xhr.addEventListener('load', loadCallback);
- xhr.addEventListener('error', errorCallback);
- }
-};
-
-/***/ }),
-
-/***/ "./core/src/OCA/index.js":
-/*!*******************************!*\
- !*** ./core/src/OCA/index.js ***!
- \*******************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/**
- * @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>
- *
- * @author Christoph Wurst <christoph@winzerhof-wurst.at>
- *
- * @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 <http://www.gnu.org/licenses/>.
- *
- */
-
-/**
- * Namespace for apps
- *
- * @namespace OCA
- */
-/* harmony default export */ __webpack_exports__["default"] = ({});
-
-/***/ }),
-
-/***/ "./core/src/OCP/appconfig.js":
-/*!***********************************!*\
- !*** ./core/src/OCP/appconfig.js ***!
- \***********************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ deleteKey: function() { return /* binding */ deleteKey; },
-/* harmony export */ getApps: function() { return /* binding */ getApps; },
-/* harmony export */ getKeys: function() { return /* binding */ getKeys; },
-/* harmony export */ getValue: function() { return /* binding */ getValue; },
-/* harmony export */ setValue: function() { return /* binding */ setValue; }
-/* harmony export */ });
-/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! jquery */ "./node_modules/jquery/dist/jquery.js");
-/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jquery__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 _OC_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../OC/index.js */ "./core/src/OC/index.js");
-/**
- * @copyright Copyright (c) 2016 Joas Schilling <coding@schilljs.com>
- *
- * @author Christoph Wurst <christoph@winzerhof-wurst.at>
- * @author John Molakvoæ <skjnldsv@protonmail.com>
- *
- * @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 <http://www.gnu.org/licenses/>.
- *
- */
-
-
-
-
-
-/**
- * @param {string} method 'post' or 'delete'
- * @param {string} endpoint endpoint
- * @param {object} [options] destructuring object
- * @param {object} [options.data] option data
- * @param {Function} [options.success] success callback
- * @param {Function} [options.error] error callback
- */
-function call(method, endpoint, options) {
- if ((method === 'post' || method === 'delete') && _OC_index_js__WEBPACK_IMPORTED_MODULE_2__["default"].PasswordConfirmation.requiresPasswordConfirmation()) {
- _OC_index_js__WEBPACK_IMPORTED_MODULE_2__["default"].PasswordConfirmation.requirePasswordConfirmation(_.bind(call, this, method, endpoint, options));
- return;
- }
- options = options || {};
- jquery__WEBPACK_IMPORTED_MODULE_0___default().ajax({
- type: method.toUpperCase(),
- url: (0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_1__.generateOcsUrl)('apps/provisioning_api/api/v1/config/apps') + endpoint,
- data: options.data || {},
- success: options.success,
- error: options.error
- });
-}
-
-/**
- * @param {object} [options] destructuring object
- * @param {Function} [options.success] success callback
- * @since 11.0.0
- */
-function getApps(options) {
- call('get', '', options);
-}
-
-/**
- * @param {string} app app id
- * @param {object} [options] destructuring object
- * @param {Function} [options.success] success callback
- * @param {Function} [options.error] error callback
- * @since 11.0.0
- */
-function getKeys(app, options) {
- call('get', '/' + app, options);
-}
-
-/**
- * @param {string} app app id
- * @param {string} key key
- * @param {string | Function} defaultValue default value
- * @param {object} [options] destructuring object
- * @param {Function} [options.success] success callback
- * @param {Function} [options.error] error callback
- * @since 11.0.0
- */
-function getValue(app, key, defaultValue, options) {
- options = options || {};
- options.data = {
- defaultValue: defaultValue
- };
- call('get', '/' + app + '/' + key, options);
-}
-
-/**
- * @param {string} app app id
- * @param {string} key key
- * @param {string} value value
- * @param {object} [options] destructuring object
- * @param {Function} [options.success] success callback
- * @param {Function} [options.error] error callback
- * @since 11.0.0
- */
-function setValue(app, key, value, options) {
- options = options || {};
- options.data = {
- value: value
- };
- call('post', '/' + app + '/' + key, options);
-}
-
-/**
- * @param {string} app app id
- * @param {string} key key
- * @param {object} [options] destructuring object
- * @param {Function} [options.success] success callback
- * @param {Function} [options.error] error callback
- * @since 11.0.0
- */
-function deleteKey(app, key, options) {
- call('delete', '/' + app + '/' + key, options);
-}
-
-/***/ }),
-
-/***/ "./core/src/Util/a11y.js":
-/*!*******************************!*\
- !*** ./core/src/Util/a11y.js ***!
- \*******************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ isA11yActivation: function() { return /* binding */ isA11yActivation; }
-/* harmony export */ });
-/**
- * @copyright 2022 Christopher Ng <chrng8@gmail.com>
- *
- * @author Christopher Ng <chrng8@gmail.com>
- *
- * @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 <http://www.gnu.org/licenses/>.
- *
- */
-
-/**
- * Return whether the DOM event is an accessible mouse or keyboard element activation
- *
- * @param {Event} event DOM event
- *
- * @return {boolean}
- */
-var isA11yActivation = function isA11yActivation(event) {
- if (event.type === 'click') {
- return true;
- }
- if (event.type === 'keydown' && event.key === 'Enter') {
- return true;
- }
- return false;
-};
-
-/***/ }),
-
-/***/ "./core/src/login.js":
-/*!***************************!*\
- !*** ./core/src/login.js ***!
- \***************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! vue */ "./node_modules/vue/dist/vue.runtime.esm.js");
-/* harmony import */ var _OC_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./OC/index.js */ "./core/src/OC/index.js");
-/* harmony import */ var _views_Login_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./views/Login.vue */ "./core/src/views/Login.vue");
-/* harmony import */ var _mixins_Nextcloud_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./mixins/Nextcloud.js */ "./core/src/mixins/Nextcloud.js");
-/**
- * @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>
- *
- * @author Christoph Wurst <christoph@winzerhof-wurst.at>
- * @author John Molakvoæ <skjnldsv@protonmail.com>
- * @author Julius Härtl <jus@bitgrid.net>
- * @author Roeland Jago Douma <roeland@famdouma.nl>
- *
- * @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 <http://www.gnu.org/licenses/>.
- *
- */
-
-
-
-// eslint-disable-next-line no-unused-vars
- // TODO: Not needed but L10n breaks if removed
-
-
-vue__WEBPACK_IMPORTED_MODULE_3__["default"].mixin(_mixins_Nextcloud_js__WEBPACK_IMPORTED_MODULE_2__["default"]);
-var View = vue__WEBPACK_IMPORTED_MODULE_3__["default"].extend(_views_Login_vue__WEBPACK_IMPORTED_MODULE_1__["default"]);
-new View().$mount('#login');
-
-/***/ }),
-
-/***/ "./core/src/mixins/Nextcloud.js":
-/*!**************************************!*\
- !*** ./core/src/mixins/Nextcloud.js ***!
- \**************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _OC_l10n_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../OC/l10n.js */ "./core/src/OC/l10n.js");
-/* harmony import */ var _OC_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../OC/index.js */ "./core/src/OC/index.js");
-/**
- * @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>
- *
- * @author Christoph Wurst <christoph@winzerhof-wurst.at>
- *
- * @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 <http://www.gnu.org/licenses/>.
- *
- */
-
-
-
-/* harmony default export */ __webpack_exports__["default"] = ({
- data: function data() {
- return {
- OC: _OC_index_js__WEBPACK_IMPORTED_MODULE_1__["default"]
- };
- },
- methods: {
- t: _OC_l10n_js__WEBPACK_IMPORTED_MODULE_0__["default"].translate.bind(_OC_l10n_js__WEBPACK_IMPORTED_MODULE_0__["default"]),
- n: _OC_l10n_js__WEBPACK_IMPORTED_MODULE_0__["default"].translatePlural.bind(_OC_l10n_js__WEBPACK_IMPORTED_MODULE_0__["default"])
- }
-});
-
-/***/ }),
-
-/***/ "./core/src/services/WebAuthnAuthenticationService.js":
-/*!************************************************************!*\
- !*** ./core/src/services/WebAuthnAuthenticationService.js ***!
- \************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ finishAuthentication: function() { return /* binding */ finishAuthentication; },
-/* harmony export */ startAuthentication: function() { return /* binding */ startAuthentication; }
-/* harmony export */ });
-/* harmony import */ var _nextcloud_axios__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/axios */ "./node_modules/@nextcloud/axios/dist/index.es.mjs");
-/* harmony import */ var _nextcloud_router__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/router */ "./node_modules/@nextcloud/router/dist/index.js");
-/**
- * @copyright 2020, Roeland Jago Douma <roeland@famdouma.nl>
- *
- * @author Roeland Jago Douma <roeland@famdouma.nl>
- *
- * @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 <http://www.gnu.org/licenses/>.
- *
- */
-
-
-
-
-/**
- * @param {any} loginName -
- */
-function startAuthentication(loginName) {
- var url = (0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_1__.generateUrl)('/login/webauthn/start');
- return _nextcloud_axios__WEBPACK_IMPORTED_MODULE_0__["default"].post(url, {
- loginName: loginName
- }).then(function (resp) {
- return resp.data;
- });
-}
-
-/**
- * @param {any} data -
- */
-function finishAuthentication(data) {
- var url = (0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_1__.generateUrl)('/login/webauthn/finish');
- return _nextcloud_axios__WEBPACK_IMPORTED_MODULE_0__["default"].post(url, {
- data: data
- }).then(function (resp) {
- return resp.data;
- });
-}
-
-/***/ }),
-
-/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/LoginButton.vue?vue&type=script&lang=js&":
-/*!********************************************************************************************************************************************************************************!*\
- !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/LoginButton.vue?vue&type=script&lang=js& ***!
- \********************************************************************************************************************************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _nextcloud_vue_dist_Components_NcButton_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/vue/dist/Components/NcButton.js */ "./node_modules/@nextcloud/vue/dist/Components/NcButton.js");
-/* harmony import */ var _nextcloud_vue_dist_Components_NcButton_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue_dist_Components_NcButton_js__WEBPACK_IMPORTED_MODULE_0__);
-/* harmony import */ var vue_material_design_icons_ArrowRight_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! vue-material-design-icons/ArrowRight.vue */ "./node_modules/vue-material-design-icons/ArrowRight.vue");
-
-
-/* harmony default export */ __webpack_exports__["default"] = ({
- name: 'LoginButton',
- components: {
- ArrowRight: vue_material_design_icons_ArrowRight_vue__WEBPACK_IMPORTED_MODULE_1__["default"],
- NcButton: (_nextcloud_vue_dist_Components_NcButton_js__WEBPACK_IMPORTED_MODULE_0___default())
- },
- props: {
- value: {
- type: String,
- default: t('core', 'Log in')
- },
- valueLoading: {
- type: String,
- default: t('core', 'Logging in …')
- },
- loading: {
- type: Boolean,
- required: true
- },
- invertedColors: {
- type: Boolean,
- default: false
- }
- }
-});
-
-/***/ }),
-
-/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/LoginForm.vue?vue&type=script&lang=js&":
-/*!******************************************************************************************************************************************************************************!*\
- !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/LoginForm.vue?vue&type=script&lang=js& ***!
- \******************************************************************************************************************************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* 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_dist_Components_NcPasswordField_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/vue/dist/Components/NcPasswordField.js */ "./node_modules/@nextcloud/vue/dist/Components/NcPasswordField.js");
-/* harmony import */ var _nextcloud_vue_dist_Components_NcPasswordField_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue_dist_Components_NcPasswordField_js__WEBPACK_IMPORTED_MODULE_1__);
-/* harmony import */ var _nextcloud_vue_dist_Components_NcTextField_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @nextcloud/vue/dist/Components/NcTextField.js */ "./node_modules/@nextcloud/vue/dist/Components/NcTextField.js");
-/* harmony import */ var _nextcloud_vue_dist_Components_NcTextField_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue_dist_Components_NcTextField_js__WEBPACK_IMPORTED_MODULE_2__);
-/* harmony import */ var _nextcloud_vue_dist_Components_NcNoteCard_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @nextcloud/vue/dist/Components/NcNoteCard.js */ "./node_modules/@nextcloud/vue/dist/Components/NcNoteCard.js");
-/* harmony import */ var _nextcloud_vue_dist_Components_NcNoteCard_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue_dist_Components_NcNoteCard_js__WEBPACK_IMPORTED_MODULE_3__);
-/* harmony import */ var _LoginButton_vue__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./LoginButton.vue */ "./core/src/components/login/LoginButton.vue");
-
-
-
-
-
-/* harmony default export */ __webpack_exports__["default"] = ({
- name: 'LoginForm',
- components: {
- LoginButton: _LoginButton_vue__WEBPACK_IMPORTED_MODULE_4__["default"],
- NcPasswordField: (_nextcloud_vue_dist_Components_NcPasswordField_js__WEBPACK_IMPORTED_MODULE_1___default()),
- NcTextField: (_nextcloud_vue_dist_Components_NcTextField_js__WEBPACK_IMPORTED_MODULE_2___default()),
- NcNoteCard: (_nextcloud_vue_dist_Components_NcNoteCard_js__WEBPACK_IMPORTED_MODULE_3___default())
- },
- props: {
- username: {
- type: String,
- default: ''
- },
- redirectUrl: {
- type: [String, Boolean],
- default: false
- },
- errors: {
- type: Array,
- default: function _default() {
- return [];
- }
- },
- messages: {
- type: Array,
- default: function _default() {
- return [];
- }
- },
- throttleDelay: {
- type: Number,
- default: 0
- },
- autoCompleteAllowed: {
- type: Boolean,
- default: true
- },
- directLogin: {
- type: Boolean,
- default: false
- }
- },
- data: function data() {
- var _Intl$DateTimeFormat;
- return {
- loading: false,
- timezone: (_Intl$DateTimeFormat = new Intl.DateTimeFormat()) === null || _Intl$DateTimeFormat === void 0 || (_Intl$DateTimeFormat = _Intl$DateTimeFormat.resolvedOptions()) === null || _Intl$DateTimeFormat === void 0 ? void 0 : _Intl$DateTimeFormat.timeZone,
- timezoneOffset: -new Date().getTimezoneOffset() / 60,
- headline: t('core', 'Log in to {productName}', {
- productName: OC.theme.name
- }),
- user: '',
- password: ''
- };
- },
- computed: {
- isError: function isError() {
- return this.invalidPassword || this.userDisabled || this.throttleDelay > 5000;
- },
- errorLabel: function errorLabel() {
- if (this.invalidPassword) {
- return t('core', 'Wrong username or password.');
- }
- if (this.userDisabled) {
- return t('core', 'User disabled');
- }
- if (this.throttleDelay > 5000) {
- return t('core', 'We have detected multiple invalid login attempts from your IP. Therefore your next login is throttled up to 30 seconds.');
- }
- return undefined;
- },
- apacheAuthFailed: function apacheAuthFailed() {
- return this.errors.indexOf('apacheAuthFailed') !== -1;
- },
- internalException: function internalException() {
- return this.errors.indexOf('internalexception') !== -1;
- },
- invalidPassword: function invalidPassword() {
- return this.errors.indexOf('invalidpassword') !== -1;
- },
- userDisabled: function userDisabled() {
- return this.errors.indexOf('userdisabled') !== -1;
- },
- loadingIcon: function loadingIcon() {
- return (0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_0__.imagePath)('core', 'loading-dark.gif');
- },
- loginActionUrl: function loginActionUrl() {
- return (0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_0__.generateUrl)('login');
- }
- },
- mounted: function mounted() {
- if (this.username === '') {
- this.$refs.user.$refs.inputField.$refs.input.focus();
- } else {
- this.user = this.username;
- this.$refs.password.$refs.inputField.$refs.input.focus();
- }
- },
- methods: {
- updateUsername: function updateUsername() {
- this.$emit('update:username', this.user);
- },
- submit: function submit() {
- this.loading = true;
- this.$emit('submit');
- }
- }
-});
-
-/***/ }),
-
-/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/PasswordLessLoginForm.vue?vue&type=script&lang=js&":
-/*!******************************************************************************************************************************************************************************************!*\
- !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/PasswordLessLoginForm.vue?vue&type=script&lang=js& ***!
- \******************************************************************************************************************************************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _services_WebAuthnAuthenticationService_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../services/WebAuthnAuthenticationService.js */ "./core/src/services/WebAuthnAuthenticationService.js");
-/* harmony import */ var _LoginButton_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./LoginButton.vue */ "./core/src/components/login/LoginButton.vue");
-/* harmony import */ var vue_material_design_icons_Information_vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! vue-material-design-icons/Information.vue */ "./node_modules/vue-material-design-icons/Information.vue");
-/* harmony import */ var vue_material_design_icons_LockOpen_vue__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! vue-material-design-icons/LockOpen.vue */ "./node_modules/vue-material-design-icons/LockOpen.vue");
-/* harmony import */ var _nextcloud_vue_dist_Components_NcTextField_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @nextcloud/vue/dist/Components/NcTextField.js */ "./node_modules/@nextcloud/vue/dist/Components/NcTextField.js");
-/* harmony import */ var _nextcloud_vue_dist_Components_NcTextField_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue_dist_Components_NcTextField_js__WEBPACK_IMPORTED_MODULE_4__);
-/* 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); }
-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) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
-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, _toPropertyKey(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; }
-function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
-function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
-function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
-function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
-function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
-function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
-function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
-function _wrapNativeSuper(Class) { var _cache = typeof Map === "function" ? new Map() : undefined; _wrapNativeSuper = function _wrapNativeSuper(Class) { if (Class === null || !_isNativeFunction(Class)) return Class; if (typeof Class !== "function") { throw new TypeError("Super expression must either be null or a function"); } if (typeof _cache !== "undefined") { if (_cache.has(Class)) return _cache.get(Class); _cache.set(Class, Wrapper); } function Wrapper() { return _construct(Class, arguments, _getPrototypeOf(this).constructor); } Wrapper.prototype = Object.create(Class.prototype, { constructor: { value: Wrapper, enumerable: false, writable: true, configurable: true } }); return _setPrototypeOf(Wrapper, Class); }; return _wrapNativeSuper(Class); }
-function _construct(Parent, args, Class) { if (_isNativeReflectConstruct()) { _construct = Reflect.construct.bind(); } else { _construct = function _construct(Parent, args, Class) { var a = [null]; a.push.apply(a, args); var Constructor = Function.bind.apply(Parent, a); var instance = new Constructor(); if (Class) _setPrototypeOf(instance, Class.prototype); return instance; }; } return _construct.apply(null, arguments); }
-function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
-function _isNativeFunction(fn) { return Function.toString.call(fn).indexOf("[native code]") !== -1; }
-function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
-function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
-
-
-
-
-
-var NoValidCredentials = /*#__PURE__*/function (_Error) {
- _inherits(NoValidCredentials, _Error);
- var _super = _createSuper(NoValidCredentials);
- function NoValidCredentials() {
- _classCallCheck(this, NoValidCredentials);
- return _super.apply(this, arguments);
- }
- return _createClass(NoValidCredentials);
-}( /*#__PURE__*/_wrapNativeSuper(Error));
-/* harmony default export */ __webpack_exports__["default"] = ({
- name: 'PasswordLessLoginForm',
- components: {
- LoginButton: _LoginButton_vue__WEBPACK_IMPORTED_MODULE_1__["default"],
- InformationIcon: vue_material_design_icons_Information_vue__WEBPACK_IMPORTED_MODULE_2__["default"],
- LockOpenIcon: vue_material_design_icons_LockOpen_vue__WEBPACK_IMPORTED_MODULE_3__["default"],
- NcTextField: (_nextcloud_vue_dist_Components_NcTextField_js__WEBPACK_IMPORTED_MODULE_4___default())
- },
- props: {
- username: {
- type: String,
- default: ''
- },
- redirectUrl: {
- type: [String, Boolean],
- default: false
- },
- autoCompleteAllowed: {
- type: Boolean,
- default: true
- },
- isHttps: {
- type: Boolean,
- default: false
- },
- isLocalhost: {
- type: Boolean,
- default: false
- },
- hasPublicKeyCredential: {
- type: Boolean,
- default: false
- }
- },
- data: function data() {
- return {
- user: this.username,
- loading: false,
- validCredentials: true
- };
- },
- methods: {
- authenticate: function authenticate() {
- var _this = this;
- // check required fields
- if (!this.$refs.loginForm.checkValidity()) {
- return;
- }
- console.debug('passwordless login initiated');
- this.getAuthenticationData(this.user).then(function (publicKey) {
- console.debug(publicKey);
- return publicKey;
- }).then(this.sign).then(this.completeAuthentication).catch(function (error) {
- if (error instanceof NoValidCredentials) {
- _this.validCredentials = false;
- return;
- }
- console.debug(error);
- });
- },
- changeUsername: function changeUsername(username) {
- this.user = username;
- this.$emit('update:username', this.user);
- },
- getAuthenticationData: function getAuthenticationData(uid) {
- var base64urlDecode = function base64urlDecode(input) {
- // Replace non-url compatible chars with base64 standard chars
- input = input.replace(/-/g, '+').replace(/_/g, '/');
-
- // Pad out with standard base64 required padding characters
- var pad = input.length % 4;
- if (pad) {
- if (pad === 1) {
- throw new Error('InvalidLengthError: Input base64url string is the wrong length to determine padding');
- }
- input += new Array(5 - pad).join('=');
- }
- return window.atob(input);
- };
- return (0,_services_WebAuthnAuthenticationService_js__WEBPACK_IMPORTED_MODULE_0__.startAuthentication)(uid).then(function (publicKey) {
- console.debug('Obtained PublicKeyCredentialRequestOptions');
- console.debug(publicKey);
- if (!Object.prototype.hasOwnProperty.call(publicKey, 'allowCredentials')) {
- console.debug('No credentials found.');
- throw new NoValidCredentials();
- }
- publicKey.challenge = Uint8Array.from(base64urlDecode(publicKey.challenge), function (c) {
- return c.charCodeAt(0);
- });
- publicKey.allowCredentials = publicKey.allowCredentials.map(function (data) {
- return _objectSpread(_objectSpread({}, data), {}, {
- id: Uint8Array.from(base64urlDecode(data.id), function (c) {
- return c.charCodeAt(0);
- })
- });
- });
- console.debug('Converted PublicKeyCredentialRequestOptions');
- console.debug(publicKey);
- return publicKey;
- }).catch(function (error) {
- console.debug('Error while obtaining data');
- throw error;
- });
- },
- sign: function sign(publicKey) {
- var arrayToBase64String = function arrayToBase64String(a) {
- return window.btoa(String.fromCharCode.apply(String, _toConsumableArray(a)));
- };
- var arrayToString = function arrayToString(a) {
- return String.fromCharCode.apply(String, _toConsumableArray(a));
- };
- return navigator.credentials.get({
- publicKey: publicKey
- }).then(function (data) {
- console.debug(data);
- console.debug(new Uint8Array(data.rawId));
- console.debug(arrayToBase64String(new Uint8Array(data.rawId)));
- return {
- id: data.id,
- type: data.type,
- rawId: arrayToBase64String(new Uint8Array(data.rawId)),
- response: {
- authenticatorData: arrayToBase64String(new Uint8Array(data.response.authenticatorData)),
- clientDataJSON: arrayToBase64String(new Uint8Array(data.response.clientDataJSON)),
- signature: arrayToBase64String(new Uint8Array(data.response.signature)),
- userHandle: data.response.userHandle ? arrayToString(new Uint8Array(data.response.userHandle)) : null
- }
- };
- }).then(function (challenge) {
- console.debug(challenge);
- return challenge;
- }).catch(function (error) {
- console.debug('GOT AN ERROR!');
- console.debug(error); // Example: timeout, interaction refused...
- });
- },
- completeAuthentication: function completeAuthentication(challenge) {
- console.debug('TIME TO COMPLETE');
- var redirectUrl = this.redirectUrl;
- return (0,_services_WebAuthnAuthenticationService_js__WEBPACK_IMPORTED_MODULE_0__.finishAuthentication)(JSON.stringify(challenge)).then(function (_ref) {
- var defaultRedirectUrl = _ref.defaultRedirectUrl;
- console.debug('Logged in redirecting');
- // Redirect url might be false so || should be used instead of ??.
- window.location.href = redirectUrl || defaultRedirectUrl;
- }).catch(function (error) {
- console.debug('GOT AN ERROR WHILE SUBMITTING CHALLENGE!');
- console.debug(error); // Example: timeout, interaction refused...
- });
- },
- submit: function submit() {
- // noop
- }
- }
-});
-
-/***/ }),
-
-/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/ResetPassword.vue?vue&type=script&lang=js&":
-/*!**********************************************************************************************************************************************************************************!*\
- !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/ResetPassword.vue?vue&type=script&lang=js& ***!
- \**********************************************************************************************************************************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _nextcloud_axios__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/axios */ "./node_modules/@nextcloud/axios/dist/index.es.mjs");
-/* harmony import */ var _nextcloud_router__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/router */ "./node_modules/@nextcloud/router/dist/index.js");
-/* harmony import */ var _LoginButton_vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./LoginButton.vue */ "./core/src/components/login/LoginButton.vue");
-/* harmony import */ var _nextcloud_vue_dist_Components_NcTextField_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @nextcloud/vue/dist/Components/NcTextField.js */ "./node_modules/@nextcloud/vue/dist/Components/NcTextField.js");
-/* harmony import */ var _nextcloud_vue_dist_Components_NcTextField_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue_dist_Components_NcTextField_js__WEBPACK_IMPORTED_MODULE_3__);
-/* harmony import */ var _nextcloud_vue_dist_Components_NcNoteCard_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @nextcloud/vue/dist/Components/NcNoteCard.js */ "./node_modules/@nextcloud/vue/dist/Components/NcNoteCard.js");
-/* harmony import */ var _nextcloud_vue_dist_Components_NcNoteCard_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue_dist_Components_NcNoteCard_js__WEBPACK_IMPORTED_MODULE_4__);
-/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js");
-
-
-
-
-
-/* harmony default export */ __webpack_exports__["default"] = ({
- name: 'ResetPassword',
- components: {
- LoginButton: _LoginButton_vue__WEBPACK_IMPORTED_MODULE_2__["default"],
- NcNoteCard: (_nextcloud_vue_dist_Components_NcNoteCard_js__WEBPACK_IMPORTED_MODULE_4___default()),
- NcTextField: (_nextcloud_vue_dist_Components_NcTextField_js__WEBPACK_IMPORTED_MODULE_3___default())
- },
- props: {
- username: {
- type: String,
- required: true
- },
- resetPasswordLink: {
- type: String,
- required: true
- }
- },
- data: function data() {
- return {
- error: false,
- loading: false,
- message: undefined,
- user: this.username
- };
- },
- watch: {
- username: function username(value) {
- this.user = value;
- }
- },
- methods: {
- updateUsername: function updateUsername() {
- this.$emit('update:username', this.user);
- },
- submit: function submit() {
- var _this = this;
- this.loading = true;
- this.error = false;
- this.message = '';
- var url = (0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_1__.generateUrl)('/lostpassword/email');
- var data = {
- user: this.user
- };
- return _nextcloud_axios__WEBPACK_IMPORTED_MODULE_0__["default"].post(url, data).then(function (resp) {
- return resp.data;
- }).then(function (data) {
- if (data.status !== 'success') {
- throw new Error("got status ".concat(data.status));
- }
- _this.message = 'send-success';
- }).catch(function (e) {
- console.error('could not send reset email request', e);
- _this.error = true;
- _this.message = 'send-error';
- }).then(function () {
- _this.loading = false;
- });
- }
- }
-});
-
-/***/ }),
-
-/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/UpdatePassword.vue?vue&type=script&lang=js&":
-/*!***********************************************************************************************************************************************************************************!*\
- !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/UpdatePassword.vue?vue&type=script&lang=js& ***!
- \***********************************************************************************************************************************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _nextcloud_axios__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/axios */ "./node_modules/@nextcloud/axios/dist/index.es.mjs");
-/* harmony import */ var _LoginButton_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./LoginButton.vue */ "./core/src/components/login/LoginButton.vue");
-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 _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, "_invoke", { value: makeInvokeMethod(innerFn, self, context) }), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, "_invoke", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }
-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); }); }; }
-
-
-/* harmony default export */ __webpack_exports__["default"] = ({
- name: 'UpdatePassword',
- components: {
- LoginButton: _LoginButton_vue__WEBPACK_IMPORTED_MODULE_1__["default"]
- },
- props: {
- username: {
- type: String,
- required: true
- },
- resetPasswordTarget: {
- type: String,
- required: true
- }
- },
- data: function data() {
- return {
- error: false,
- loading: false,
- message: undefined,
- user: this.username,
- password: '',
- encrypted: false,
- proceed: false
- };
- },
- watch: {
- username: function username(value) {
- this.user = value;
- }
- },
- methods: {
- submit: function submit() {
- var _this = this;
- return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
- var _yield$Axios$post, data;
- return _regeneratorRuntime().wrap(function _callee$(_context) {
- while (1) switch (_context.prev = _context.next) {
- case 0:
- _this.loading = true;
- _this.error = false;
- _this.message = '';
- _context.prev = 3;
- _context.next = 6;
- return _nextcloud_axios__WEBPACK_IMPORTED_MODULE_0__["default"].post(_this.resetPasswordTarget, {
- password: _this.password,
- proceed: _this.proceed
- });
- case 6:
- _yield$Axios$post = _context.sent;
- data = _yield$Axios$post.data;
- if (!(data && data.status === 'success')) {
- _context.next = 14;
- break;
- }
- _this.message = 'send-success';
- _this.$emit('update:username', _this.user);
- _this.$emit('done');
- _context.next = 23;
- break;
- case 14:
- if (!(data && data.encryption)) {
- _context.next = 18;
- break;
- }
- _this.encrypted = true;
- _context.next = 23;
- break;
- case 18:
- if (!(data && data.msg)) {
- _context.next = 22;
- break;
- }
- throw new Error(data.msg);
- case 22:
- throw new Error();
- case 23:
- _context.next = 29;
- break;
- case 25:
- _context.prev = 25;
- _context.t0 = _context["catch"](3);
- _this.error = true;
- _this.message = _context.t0.message ? _context.t0.message : t('core', 'Password cannot be changed. Please contact your administrator.');
- case 29:
- _context.prev = 29;
- _this.loading = false;
- return _context.finish(29);
- case 32:
- case "end":
- return _context.stop();
- }
- }, _callee, null, [[3, 25, 29, 32]]);
- }))();
- }
- }
-});
-
-/***/ }),
-
-/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/views/Login.vue?vue&type=script&lang=js&":
-/*!***************************************************************************************************************************************************************!*\
- !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/views/Login.vue?vue&type=script&lang=js& ***!
- \***************************************************************************************************************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _nextcloud_initial_state__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/initial-state */ "./node_modules/@nextcloud/initial-state/dist/index.es.mjs");
-/* harmony import */ var query_string__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! query-string */ "./node_modules/query-string/index.js");
-/* harmony import */ var _components_login_LoginForm_vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../components/login/LoginForm.vue */ "./core/src/components/login/LoginForm.vue");
-/* harmony import */ var _components_login_PasswordLessLoginForm_vue__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../components/login/PasswordLessLoginForm.vue */ "./core/src/components/login/PasswordLessLoginForm.vue");
-/* harmony import */ var _components_login_ResetPassword_vue__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../components/login/ResetPassword.vue */ "./core/src/components/login/ResetPassword.vue");
-/* harmony import */ var _components_login_UpdatePassword_vue__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../components/login/UpdatePassword.vue */ "./core/src/components/login/UpdatePassword.vue");
-/* harmony import */ var _nextcloud_vue_dist_Components_NcButton_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @nextcloud/vue/dist/Components/NcButton.js */ "./node_modules/@nextcloud/vue/dist/Components/NcButton.js");
-/* harmony import */ var _nextcloud_vue_dist_Components_NcButton_js__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue_dist_Components_NcButton_js__WEBPACK_IMPORTED_MODULE_6__);
-/* harmony import */ var _nextcloud_vue_dist_Components_NcNoteCard_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @nextcloud/vue/dist/Components/NcNoteCard.js */ "./node_modules/@nextcloud/vue/dist/Components/NcNoteCard.js");
-/* harmony import */ var _nextcloud_vue_dist_Components_NcNoteCard_js__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue_dist_Components_NcNoteCard_js__WEBPACK_IMPORTED_MODULE_7__);
-/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js");
-
-
-
-
-
-
-
-
-var query = query_string__WEBPACK_IMPORTED_MODULE_1__["default"].parse(location.search);
-if (query.clear === '1') {
- try {
- window.localStorage.clear();
- window.sessionStorage.clear();
- console.debug('Browser storage cleared');
- } catch (e) {
- console.error('Could not clear browser storage', e);
- }
-}
-/* harmony default export */ __webpack_exports__["default"] = ({
- name: 'Login',
- components: {
- LoginForm: _components_login_LoginForm_vue__WEBPACK_IMPORTED_MODULE_2__["default"],
- PasswordLessLoginForm: _components_login_PasswordLessLoginForm_vue__WEBPACK_IMPORTED_MODULE_3__["default"],
- ResetPassword: _components_login_ResetPassword_vue__WEBPACK_IMPORTED_MODULE_4__["default"],
- UpdatePassword: _components_login_UpdatePassword_vue__WEBPACK_IMPORTED_MODULE_5__["default"],
- NcButton: (_nextcloud_vue_dist_Components_NcButton_js__WEBPACK_IMPORTED_MODULE_6___default()),
- NcNoteCard: (_nextcloud_vue_dist_Components_NcNoteCard_js__WEBPACK_IMPORTED_MODULE_7___default())
- },
- data: function data() {
- return {
- loading: false,
- user: (0,_nextcloud_initial_state__WEBPACK_IMPORTED_MODULE_0__.loadState)('core', 'loginUsername', ''),
- passwordlessLogin: false,
- resetPassword: false,
- // Initial data
- errors: (0,_nextcloud_initial_state__WEBPACK_IMPORTED_MODULE_0__.loadState)('core', 'loginErrors', []),
- messages: (0,_nextcloud_initial_state__WEBPACK_IMPORTED_MODULE_0__.loadState)('core', 'loginMessages', []),
- redirectUrl: (0,_nextcloud_initial_state__WEBPACK_IMPORTED_MODULE_0__.loadState)('core', 'loginRedirectUrl', false),
- throttleDelay: (0,_nextcloud_initial_state__WEBPACK_IMPORTED_MODULE_0__.loadState)('core', 'loginThrottleDelay', 0),
- canResetPassword: (0,_nextcloud_initial_state__WEBPACK_IMPORTED_MODULE_0__.loadState)('core', 'loginCanResetPassword', false),
- resetPasswordLink: (0,_nextcloud_initial_state__WEBPACK_IMPORTED_MODULE_0__.loadState)('core', 'loginResetPasswordLink', ''),
- autoCompleteAllowed: (0,_nextcloud_initial_state__WEBPACK_IMPORTED_MODULE_0__.loadState)('core', 'loginAutocomplete', true),
- resetPasswordTarget: (0,_nextcloud_initial_state__WEBPACK_IMPORTED_MODULE_0__.loadState)('core', 'resetPasswordTarget', ''),
- resetPasswordUser: (0,_nextcloud_initial_state__WEBPACK_IMPORTED_MODULE_0__.loadState)('core', 'resetPasswordUser', ''),
- directLogin: query.direct === '1',
- hasPasswordless: (0,_nextcloud_initial_state__WEBPACK_IMPORTED_MODULE_0__.loadState)('core', 'webauthn-available', false),
- countAlternativeLogins: (0,_nextcloud_initial_state__WEBPACK_IMPORTED_MODULE_0__.loadState)('core', 'countAlternativeLogins', false),
- alternativeLogins: (0,_nextcloud_initial_state__WEBPACK_IMPORTED_MODULE_0__.loadState)('core', 'alternativeLogins', []),
- isHttps: window.location.protocol === 'https:',
- isLocalhost: window.location.hostname === 'localhost',
- hasPublicKeyCredential: typeof window.PublicKeyCredential !== 'undefined',
- hideLoginForm: (0,_nextcloud_initial_state__WEBPACK_IMPORTED_MODULE_0__.loadState)('core', 'hideLoginForm', false)
- };
- },
- methods: {
- passwordResetFinished: function passwordResetFinished() {
- this.resetPasswordTarget = '';
- this.directLogin = true;
- }
- }
-});
-
-/***/ }),
-
-/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/LoginButton.vue?vue&type=template&id=2b0f9fce&scoped=true&":
-/*!*******************************************************************************************************************************************************************************************************************************************************************************!*\
- !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/LoginButton.vue?vue&type=template&id=2b0f9fce&scoped=true& ***!
- \*******************************************************************************************************************************************************************************************************************************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ render: function() { return /* binding */ render; },
-/* harmony export */ staticRenderFns: function() { return /* binding */ staticRenderFns; }
-/* harmony export */ });
-var render = function render() {
- var _vm = this,
- _c = _vm._self._c;
- return _c("NcButton", {
- attrs: {
- type: "primary",
- "native-type": "submit",
- wide: true
- },
- on: {
- click: function click($event) {
- return _vm.$emit("click");
- }
- },
- scopedSlots: _vm._u([{
- key: "icon",
- fn: function fn() {
- return [_vm.loading ? _c("div", {
- staticClass: "submit-wrapper__icon icon-loading-small-dark"
- }) : _c("ArrowRight", {
- staticClass: "submit-wrapper__icon"
- })];
- },
- proxy: true
- }])
- }, [_vm._v("\n\t" + _vm._s(!_vm.loading ? _vm.value : _vm.valueLoading) + "\n\t")]);
-};
-var staticRenderFns = [];
-render._withStripped = true;
-
-
-/***/ }),
-
-/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/LoginForm.vue?vue&type=template&id=722a846b&scoped=true&":
-/*!*****************************************************************************************************************************************************************************************************************************************************************************!*\
- !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/LoginForm.vue?vue&type=template&id=722a846b&scoped=true& ***!
- \*****************************************************************************************************************************************************************************************************************************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ render: function() { return /* binding */ render; },
-/* harmony export */ staticRenderFns: function() { return /* binding */ staticRenderFns; }
-/* harmony export */ });
-var render = function render() {
- var _vm = this,
- _c = _vm._self._c;
- return _c("form", {
- ref: "loginForm",
- staticClass: "login-form",
- attrs: {
- method: "post",
- name: "login",
- action: _vm.loginActionUrl
- },
- on: {
- submit: _vm.submit
- }
- }, [_c("fieldset", {
- staticClass: "login-form__fieldset",
- attrs: {
- "data-login-form": ""
- }
- }, [_vm.apacheAuthFailed ? _c("NcNoteCard", {
- attrs: {
- title: _vm.t("core", "Server side authentication failed!"),
- type: "warning"
- }
- }, [_vm._v("\n\t\t\t" + _vm._s(_vm.t("core", "Please contact your administrator.")) + "\n\t\t")]) : _vm._e(), _vm._v(" "), _vm.messages.length > 0 ? _c("NcNoteCard", _vm._l(_vm.messages, function (message, index) {
- return _c("div", {
- key: index
- }, [_vm._v("\n\t\t\t\t" + _vm._s(message)), _c("br")]);
- }), 0) : _vm._e(), _vm._v(" "), _vm.internalException ? _c("NcNoteCard", {
- class: _vm.t("core", "An internal error occurred."),
- attrs: {
- type: "warning"
- }
- }, [_vm._v("\n\t\t\t" + _vm._s(_vm.t("core", "Please try again or contact your administrator.")) + "\n\t\t")]) : _vm._e(), _vm._v(" "), _c("div", {
- staticClass: "hidden",
- attrs: {
- id: "message"
- }
- }, [_c("img", {
- staticClass: "float-spinner",
- attrs: {
- alt: "",
- src: _vm.loadingIcon
- }
- }), _vm._v(" "), _c("span", {
- attrs: {
- id: "messageText"
- }
- }), _vm._v(" "), _c("div", {
- staticStyle: {
- clear: "both"
- }
- })]), _vm._v(" "), _c("h2", {
- staticClass: "login-form__headline",
- attrs: {
- "data-login-form-headline": ""
- },
- domProps: {
- innerHTML: _vm._s(_vm.headline)
- }
- }), _vm._v(" "), _c("NcTextField", {
- ref: "user",
- class: {
- shake: _vm.invalidPassword
- },
- attrs: {
- id: "user",
- label: _vm.t("core", "Account name or email"),
- "label-visible": true,
- name: "user",
- value: _vm.user,
- autocapitalize: "none",
- spellchecking: false,
- autocomplete: _vm.autoCompleteAllowed ? "username" : "off",
- required: "",
- "data-login-form-input-user": ""
- },
- on: {
- "update:value": function updateValue($event) {
- _vm.user = $event;
- },
- change: _vm.updateUsername
- }
- }), _vm._v(" "), _c("NcPasswordField", {
- ref: "password",
- class: {
- shake: _vm.invalidPassword
- },
- attrs: {
- id: "password",
- name: "password",
- "label-visible": true,
- value: _vm.password,
- spellchecking: false,
- autocapitalize: "none",
- autocomplete: _vm.autoCompleteAllowed ? "current-password" : "off",
- label: _vm.t("core", "Password"),
- "helper-text": _vm.errorLabel,
- error: _vm.isError,
- "data-login-form-input-password": "",
- required: ""
- },
- on: {
- "update:value": function updateValue($event) {
- _vm.password = $event;
- }
- }
- }), _vm._v(" "), _c("LoginButton", {
- attrs: {
- "data-login-form-submit": "",
- loading: _vm.loading
- }
- }), _vm._v(" "), _vm.redirectUrl ? _c("input", {
- attrs: {
- type: "hidden",
- name: "redirect_url"
- },
- domProps: {
- value: _vm.redirectUrl
- }
- }) : _vm._e(), _vm._v(" "), _c("input", {
- attrs: {
- type: "hidden",
- name: "timezone"
- },
- domProps: {
- value: _vm.timezone
- }
- }), _vm._v(" "), _c("input", {
- attrs: {
- type: "hidden",
- name: "timezone_offset"
- },
- domProps: {
- value: _vm.timezoneOffset
- }
- }), _vm._v(" "), _c("input", {
- attrs: {
- type: "hidden",
- name: "requesttoken"
- },
- domProps: {
- value: _vm.OC.requestToken
- }
- }), _vm._v(" "), _vm.directLogin ? _c("input", {
- attrs: {
- type: "hidden",
- name: "direct",
- value: "1"
- }
- }) : _vm._e()], 1)]);
-};
-var staticRenderFns = [];
-render._withStripped = true;
-
-
-/***/ }),
-
-/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/PasswordLessLoginForm.vue?vue&type=template&id=34bf48f7&scoped=true&":
-/*!*****************************************************************************************************************************************************************************************************************************************************************************************!*\
- !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/PasswordLessLoginForm.vue?vue&type=template&id=34bf48f7&scoped=true& ***!
- \*****************************************************************************************************************************************************************************************************************************************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ render: function() { return /* binding */ render; },
-/* harmony export */ staticRenderFns: function() { return /* binding */ staticRenderFns; }
-/* harmony export */ });
-var render = function render() {
- var _vm = this,
- _c = _vm._self._c;
- return (_vm.isHttps || _vm.isLocalhost) && _vm.hasPublicKeyCredential ? _c("form", {
- ref: "loginForm",
- attrs: {
- method: "post",
- name: "login"
- },
- on: {
- submit: function submit($event) {
- $event.preventDefault();
- return _vm.submit.apply(null, arguments);
- }
- }
- }, [_c("h2", [_vm._v(_vm._s(_vm.t("core", "Log in with a device")))]), _vm._v(" "), _c("fieldset", [_c("NcTextField", {
- attrs: {
- required: "",
- value: _vm.user,
- autocomplete: _vm.autoCompleteAllowed ? "on" : "off",
- error: !_vm.validCredentials,
- "label-visible": true,
- label: _vm.t("core", "Username or email"),
- placeholder: _vm.t("core", "Username or email"),
- "helper-text": !_vm.validCredentials ? _vm.t("core", "Your account is not setup for passwordless login.") : ""
- },
- on: {
- "update:value": _vm.changeUsername
- }
- }), _vm._v(" "), _vm.validCredentials ? _c("LoginButton", {
- attrs: {
- loading: _vm.loading
- },
- on: {
- click: _vm.authenticate
- }
- }) : _vm._e()], 1)]) : !_vm.hasPublicKeyCredential ? _c("div", {
- staticClass: "update"
- }, [_c("InformationIcon", {
- attrs: {
- size: "70"
- }
- }), _vm._v(" "), _c("h2", [_vm._v(_vm._s(_vm.t("core", "Browser not supported")))]), _vm._v(" "), _c("p", {
- staticClass: "infogroup"
- }, [_vm._v("\n\t\t" + _vm._s(_vm.t("core", "Passwordless authentication is not supported in your browser.")) + "\n\t")])], 1) : !_vm.isHttps && !_vm.isLocalhost ? _c("div", {
- staticClass: "update"
- }, [_c("LockOpenIcon", {
- attrs: {
- size: "70"
- }
- }), _vm._v(" "), _c("h2", [_vm._v(_vm._s(_vm.t("core", "Your connection is not secure")))]), _vm._v(" "), _c("p", {
- staticClass: "infogroup"
- }, [_vm._v("\n\t\t" + _vm._s(_vm.t("core", "Passwordless authentication is only available over a secure connection.")) + "\n\t")])], 1) : _vm._e();
-};
-var staticRenderFns = [];
-render._withStripped = true;
-
-
-/***/ }),
-
-/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/ResetPassword.vue?vue&type=template&id=a10057b0&scoped=true&":
-/*!*********************************************************************************************************************************************************************************************************************************************************************************!*\
- !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/ResetPassword.vue?vue&type=template&id=a10057b0&scoped=true& ***!
- \*********************************************************************************************************************************************************************************************************************************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ render: function() { return /* binding */ render; },
-/* harmony export */ staticRenderFns: function() { return /* binding */ staticRenderFns; }
-/* harmony export */ });
-var render = function render() {
- var _vm = this,
- _c = _vm._self._c;
- return _c("form", {
- staticClass: "login-form",
- on: {
- submit: function submit($event) {
- $event.preventDefault();
- return _vm.submit.apply(null, arguments);
- }
- }
- }, [_c("fieldset", {
- staticClass: "login-form__fieldset"
- }, [_c("NcTextField", {
- attrs: {
- id: "user",
- value: _vm.user,
- name: "user",
- autocapitalize: "off",
- label: _vm.t("core", "Account name or email"),
- "label-visible": true,
- required: ""
- },
- on: {
- "update:value": function updateValue($event) {
- _vm.user = $event;
- },
- change: _vm.updateUsername
- }
- }), _vm._v(" "), _c("LoginButton", {
- attrs: {
- value: _vm.t("core", "Reset password")
- }
- }), _vm._v(" "), _vm.message === "send-success" ? _c("NcNoteCard", {
- attrs: {
- type: "success"
- }
- }, [_vm._v("\n\t\t\t" + _vm._s(_vm.t("core", "If this account exists, a password reset message has been sent to its email address. If you do not receive it, verify your email address and/or account name, check your spam/junk folders or ask your local administration for help.")) + "\n\t\t")]) : _vm.message === "send-error" ? _c("NcNoteCard", {
- attrs: {
- type: "error"
- }
- }, [_vm._v("\n\t\t\t" + _vm._s(_vm.t("core", "Couldn't send reset email. Please contact your administrator.")) + "\n\t\t")]) : _vm.message === "reset-error" ? _c("NcNoteCard", {
- attrs: {
- type: "error"
- }
- }, [_vm._v("\n\t\t\t" + _vm._s(_vm.t("core", "Password cannot be changed. Please contact your administrator.")) + "\n\t\t")]) : _vm._e(), _vm._v(" "), _c("a", {
- staticClass: "login-form__link",
- attrs: {
- href: "#"
- },
- on: {
- click: function click($event) {
- $event.preventDefault();
- return _vm.$emit("abort");
- }
- }
- }, [_vm._v("\n\t\t\t" + _vm._s(_vm.t("core", "Back to login")) + "\n\t\t")])], 1)]);
-};
-var staticRenderFns = [];
-render._withStripped = true;
-
-
-/***/ }),
-
-/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/UpdatePassword.vue?vue&type=template&id=66634656&scoped=true&":
-/*!**********************************************************************************************************************************************************************************************************************************************************************************!*\
- !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/UpdatePassword.vue?vue&type=template&id=66634656&scoped=true& ***!
- \**********************************************************************************************************************************************************************************************************************************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ render: function() { return /* binding */ render; },
-/* harmony export */ staticRenderFns: function() { return /* binding */ staticRenderFns; }
-/* harmony export */ });
-var render = function render() {
- var _vm = this,
- _c = _vm._self._c;
- return _c("form", {
- on: {
- submit: function submit($event) {
- $event.preventDefault();
- return _vm.submit.apply(null, arguments);
- }
- }
- }, [_c("fieldset", [_c("p", [_c("label", {
- staticClass: "infield",
- attrs: {
- for: "password"
- }
- }, [_vm._v(_vm._s(_vm.t("core", "New password")))]), _vm._v(" "), _c("input", {
- directives: [{
- name: "model",
- rawName: "v-model",
- value: _vm.password,
- expression: "password"
- }],
- attrs: {
- id: "password",
- type: "password",
- name: "password",
- autocomplete: "new-password",
- autocapitalize: "none",
- autocorrect: "off",
- required: "",
- placeholder: _vm.t("core", "New password")
- },
- domProps: {
- value: _vm.password
- },
- on: {
- input: function input($event) {
- if ($event.target.composing) return;
- _vm.password = $event.target.value;
- }
- }
- })]), _vm._v(" "), _vm.encrypted ? _c("div", {
- staticClass: "update"
- }, [_c("p", [_vm._v("\n\t\t\t\t" + _vm._s(_vm.t("core", "Your files are encrypted. There will be no way to get your data back after your password is reset. If you are not sure what to do, please contact your administrator before you continue. Do you really want to continue?")) + "\n\t\t\t")]), _vm._v(" "), _c("input", {
- directives: [{
- name: "model",
- rawName: "v-model",
- value: _vm.proceed,
- expression: "proceed"
- }],
- staticClass: "checkbox",
- attrs: {
- id: "encrypted-continue",
- type: "checkbox"
- },
- domProps: {
- checked: Array.isArray(_vm.proceed) ? _vm._i(_vm.proceed, null) > -1 : _vm.proceed
- },
- on: {
- change: function change($event) {
- var $$a = _vm.proceed,
- $$el = $event.target,
- $$c = $$el.checked ? true : false;
- if (Array.isArray($$a)) {
- var $$v = null,
- $$i = _vm._i($$a, $$v);
- if ($$el.checked) {
- $$i < 0 && (_vm.proceed = $$a.concat([$$v]));
- } else {
- $$i > -1 && (_vm.proceed = $$a.slice(0, $$i).concat($$a.slice($$i + 1)));
- }
- } else {
- _vm.proceed = $$c;
- }
- }
- }
- }), _vm._v(" "), _c("label", {
- attrs: {
- for: "encrypted-continue"
- }
- }, [_vm._v("\n\t\t\t\t" + _vm._s(_vm.t("core", "I know what I'm doing")) + "\n\t\t\t")])]) : _vm._e(), _vm._v(" "), _c("LoginButton", {
- attrs: {
- loading: _vm.loading,
- value: _vm.t("core", "Reset password"),
- "value-loading": _vm.t("core", "Resetting password")
- }
- }), _vm._v(" "), _vm.error && _vm.message ? _c("p", {
- class: {
- warning: _vm.error
- }
- }, [_vm._v("\n\t\t\t" + _vm._s(_vm.message) + "\n\t\t")]) : _vm._e()], 1)]);
-};
-var staticRenderFns = [];
-render._withStripped = true;
-
-
-/***/ }),
-
-/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/views/Login.vue?vue&type=template&id=020fd45b&":
-/*!**************************************************************************************************************************************************************************************************************************************************!*\
- !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/views/Login.vue?vue&type=template&id=020fd45b& ***!
- \**************************************************************************************************************************************************************************************************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ render: function() { return /* binding */ render; },
-/* harmony export */ staticRenderFns: function() { return /* binding */ staticRenderFns; }
-/* harmony export */ });
-var render = function render() {
- var _vm = this,
- _c = _vm._self._c;
- return _c("div", {
- staticClass: "guest-box login-box"
- }, [!_vm.hideLoginForm || _vm.directLogin ? [_c("transition", {
- attrs: {
- name: "fade",
- mode: "out-in"
- }
- }, [!_vm.passwordlessLogin && !_vm.resetPassword && _vm.resetPasswordTarget === "" ? _c("div", [_c("LoginForm", {
- attrs: {
- username: _vm.user,
- "redirect-url": _vm.redirectUrl,
- "direct-login": _vm.directLogin,
- messages: _vm.messages,
- errors: _vm.errors,
- "throttle-delay": _vm.throttleDelay,
- "auto-complete-allowed": _vm.autoCompleteAllowed
- },
- on: {
- "update:username": function updateUsername($event) {
- _vm.user = $event;
- },
- submit: function submit($event) {
- _vm.loading = true;
- }
- }
- }), _vm._v(" "), _vm.canResetPassword && _vm.resetPasswordLink !== "" ? _c("a", {
- staticClass: "login-box__link",
- attrs: {
- id: "lost-password",
- href: _vm.resetPasswordLink
- }
- }, [_vm._v("\n\t\t\t\t\t" + _vm._s(_vm.t("core", "Forgot password?")) + "\n\t\t\t\t")]) : _vm.canResetPassword && !_vm.resetPassword ? _c("a", {
- staticClass: "login-box__link",
- attrs: {
- id: "lost-password",
- href: _vm.resetPasswordLink
- },
- on: {
- click: function click($event) {
- $event.preventDefault();
- _vm.resetPassword = true;
- }
- }
- }, [_vm._v("\n\t\t\t\t\t" + _vm._s(_vm.t("core", "Forgot password?")) + "\n\t\t\t\t")]) : _vm._e(), _vm._v(" "), _vm.hasPasswordless ? [_vm.countAlternativeLogins ? _c("div", {
- staticClass: "alternative-logins"
- }, [_vm.hasPasswordless ? _c("a", {
- staticClass: "button",
- class: {
- "single-alt-login-option": _vm.countAlternativeLogins
- },
- attrs: {
- href: "#"
- },
- on: {
- click: function click($event) {
- $event.preventDefault();
- _vm.passwordlessLogin = true;
- }
- }
- }, [_vm._v("\n\t\t\t\t\t\t\t" + _vm._s(_vm.t("core", "Log in with a device")) + "\n\t\t\t\t\t\t")]) : _vm._e()]) : _c("a", {
- attrs: {
- href: "#"
- },
- on: {
- click: function click($event) {
- $event.preventDefault();
- _vm.passwordlessLogin = true;
- }
- }
- }, [_vm._v("\n\t\t\t\t\t\t" + _vm._s(_vm.t("core", "Log in with a device")) + "\n\t\t\t\t\t")])] : _vm._e()], 2) : !_vm.loading && _vm.passwordlessLogin ? _c("div", {
- key: "reset",
- staticClass: "login-additional login-passwordless"
- }, [_c("PasswordLessLoginForm", {
- attrs: {
- username: _vm.user,
- "redirect-url": _vm.redirectUrl,
- "auto-complete-allowed": _vm.autoCompleteAllowed,
- "is-https": _vm.isHttps,
- "is-localhost": _vm.isLocalhost,
- "has-public-key-credential": _vm.hasPublicKeyCredential
- },
- on: {
- "update:username": function updateUsername($event) {
- _vm.user = $event;
- },
- submit: function submit($event) {
- _vm.loading = true;
- }
- }
- }), _vm._v(" "), _c("NcButton", {
- attrs: {
- type: "tertiary",
- "aria-label": _vm.t("core", "Back to login form"),
- wide: true
- },
- on: {
- click: function click($event) {
- _vm.passwordlessLogin = false;
- }
- }
- }, [_vm._v("\n\t\t\t\t\t" + _vm._s(_vm.t("core", "Back")) + "\n\t\t\t\t")])], 1) : !_vm.loading && _vm.canResetPassword ? _c("div", {
- key: "reset",
- staticClass: "login-additional"
- }, [_c("div", {
- staticClass: "lost-password-container"
- }, [_vm.resetPassword ? _c("ResetPassword", {
- attrs: {
- username: _vm.user,
- "reset-password-link": _vm.resetPasswordLink
- },
- on: {
- "update:username": function updateUsername($event) {
- _vm.user = $event;
- },
- abort: function abort($event) {
- _vm.resetPassword = false;
- }
- }
- }) : _vm._e()], 1)]) : _vm.resetPasswordTarget !== "" ? _c("div", [_c("UpdatePassword", {
- attrs: {
- username: _vm.user,
- "reset-password-target": _vm.resetPasswordTarget
- },
- on: {
- "update:username": function updateUsername($event) {
- _vm.user = $event;
- },
- done: _vm.passwordResetFinished
- }
- })], 1) : _vm._e()])] : [_c("transition", {
- attrs: {
- name: "fade",
- mode: "out-in"
- }
- }, [_c("NcNoteCard", {
- attrs: {
- type: "warning",
- title: _vm.t("core", "Login form is disabled.")
- }
- }, [_vm._v("\n\t\t\t\t" + _vm._s(_vm.t("core", "Please contact your administrator.")) + "\n\t\t\t")])], 1)], _vm._v(" "), _c("div", {
- staticClass: "alternative-logins",
- attrs: {
- id: "alternative-logins"
- }
- }, _vm._l(_vm.alternativeLogins, function (alternativeLogin, index) {
- return _c("NcButton", {
- key: index,
- class: [alternativeLogin.class],
- attrs: {
- type: "secondary",
- wide: true,
- role: "link",
- href: alternativeLogin.href
- }
- }, [_vm._v("\n\t\t\t" + _vm._s(alternativeLogin.name) + "\n\t\t")]);
- }), 1)], 2);
-};
-var staticRenderFns = [];
-render._withStripped = true;
-
-
-/***/ }),
-
-/***/ "./node_modules/backbone/backbone.js":
-/*!*******************************************!*\
- !*** ./node_modules/backbone/backbone.js ***!
- \*******************************************/
-/***/ (function(module, exports, __webpack_require__) {
-
-var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;// Backbone.js 1.5.0
-
-// (c) 2010-2022 Jeremy Ashkenas and DocumentCloud
-// Backbone may be freely distributed under the MIT license.
-// For all details and documentation:
-// http://backbonejs.org
-
-(function(factory) {
-
- // Establish the root object, `window` (`self`) in the browser, or `global` on the server.
- // We use `self` instead of `window` for `WebWorker` support.
- var root = typeof self == 'object' && self.self === self && self ||
- typeof __webpack_require__.g == 'object' && __webpack_require__.g.global === __webpack_require__.g && __webpack_require__.g;
-
- // Set up Backbone appropriately for the environment. Start with AMD.
- if (true) {
- !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(/*! underscore */ "./node_modules/underscore/modules/index-all.js"), __webpack_require__(/*! jquery */ "./node_modules/jquery/dist/jquery.js"), exports], __WEBPACK_AMD_DEFINE_RESULT__ = (function(_, $, exports) {
- // Export global even in AMD case in case this script is loaded with
- // others that may still expect a global Backbone.
- root.Backbone = factory(root, exports, _, $);
- }).apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__),
- __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));
-
- // Next for Node.js or CommonJS. jQuery may not be needed as a module.
- } else { var _, $; }
-
-})(function(root, Backbone, _, $) {
-
- // Initial Setup
- // -------------
-
- // Save the previous value of the `Backbone` variable, so that it can be
- // restored later on, if `noConflict` is used.
- var previousBackbone = root.Backbone;
-
- // Create a local reference to a common array method we'll want to use later.
- var slice = Array.prototype.slice;
-
- // Current version of the library. Keep in sync with `package.json`.
- Backbone.VERSION = '1.5.0';
-
- // For Backbone's purposes, jQuery, Zepto, Ender, or My Library (kidding) owns
- // the `$` variable.
- Backbone.$ = $;
-
- // Runs Backbone.js in *noConflict* mode, returning the `Backbone` variable
- // to its previous owner. Returns a reference to this Backbone object.
- Backbone.noConflict = function() {
- root.Backbone = previousBackbone;
- return this;
- };
-
- // Turn on `emulateHTTP` to support legacy HTTP servers. Setting this option
- // will fake `"PATCH"`, `"PUT"` and `"DELETE"` requests via the `_method` parameter and
- // set a `X-Http-Method-Override` header.
- Backbone.emulateHTTP = false;
-
- // Turn on `emulateJSON` to support legacy servers that can't deal with direct
- // `application/json` requests ... this will encode the body as
- // `application/x-www-form-urlencoded` instead and will send the model in a
- // form param named `model`.
- Backbone.emulateJSON = false;
-
- // Backbone.Events
- // ---------------
-
- // A module that can be mixed in to *any object* in order to provide it with
- // a custom event channel. You may bind a callback to an event with `on` or
- // remove with `off`; `trigger`-ing an event fires all callbacks in
- // succession.
- //
- // var object = {};
- // _.extend(object, Backbone.Events);
- // object.on('expand', function(){ alert('expanded'); });
- // object.trigger('expand');
- //
- var Events = Backbone.Events = {};
-
- // Regular expression used to split event strings.
- var eventSplitter = /\s+/;
-
- // A private global variable to share between listeners and listenees.
- var _listening;
-
- // Iterates over the standard `event, callback` (as well as the fancy multiple
- // space-separated events `"change blur", callback` and jQuery-style event
- // maps `{event: callback}`).
- var eventsApi = function(iteratee, events, name, callback, opts) {
- var i = 0, names;
- if (name && typeof name === 'object') {
- // Handle event maps.
- if (callback !== void 0 && 'context' in opts && opts.context === void 0) opts.context = callback;
- for (names = _.keys(name); i < names.length ; i++) {
- events = eventsApi(iteratee, events, names[i], name[names[i]], opts);
- }
- } else if (name && eventSplitter.test(name)) {
- // Handle space-separated event names by delegating them individually.
- for (names = name.split(eventSplitter); i < names.length; i++) {
- events = iteratee(events, names[i], callback, opts);
- }
- } else {
- // Finally, standard events.
- events = iteratee(events, name, callback, opts);
- }
- return events;
- };
-
- // Bind an event to a `callback` function. Passing `"all"` will bind
- // the callback to all events fired.
- Events.on = function(name, callback, context) {
- this._events = eventsApi(onApi, this._events || {}, name, callback, {
- context: context,
- ctx: this,
- listening: _listening
- });
-
- if (_listening) {
- var listeners = this._listeners || (this._listeners = {});
- listeners[_listening.id] = _listening;
- // Allow the listening to use a counter, instead of tracking
- // callbacks for library interop
- _listening.interop = false;
- }
-
- return this;
- };
-
- // Inversion-of-control versions of `on`. Tell *this* object to listen to
- // an event in another object... keeping track of what it's listening to
- // for easier unbinding later.
- Events.listenTo = function(obj, name, callback) {
- if (!obj) return this;
- var id = obj._listenId || (obj._listenId = _.uniqueId('l'));
- var listeningTo = this._listeningTo || (this._listeningTo = {});
- var listening = _listening = listeningTo[id];
-
- // This object is not listening to any other events on `obj` yet.
- // Setup the necessary references to track the listening callbacks.
- if (!listening) {
- this._listenId || (this._listenId = _.uniqueId('l'));
- listening = _listening = listeningTo[id] = new Listening(this, obj);
- }
-
- // Bind callbacks on obj.
- var error = tryCatchOn(obj, name, callback, this);
- _listening = void 0;
-
- if (error) throw error;
- // If the target obj is not Backbone.Events, track events manually.
- if (listening.interop) listening.on(name, callback);
-
- return this;
- };
-
- // The reducing API that adds a callback to the `events` object.
- var onApi = function(events, name, callback, options) {
- if (callback) {
- var handlers = events[name] || (events[name] = []);
- var context = options.context, ctx = options.ctx, listening = options.listening;
- if (listening) listening.count++;
-
- handlers.push({callback: callback, context: context, ctx: context || ctx, listening: listening});
- }
- return events;
- };
-
- // An try-catch guarded #on function, to prevent poisoning the global
- // `_listening` variable.
- var tryCatchOn = function(obj, name, callback, context) {
- try {
- obj.on(name, callback, context);
- } catch (e) {
- return e;
- }
- };
-
- // Remove one or many callbacks. If `context` is null, removes all
- // callbacks with that function. If `callback` is null, removes all
- // callbacks for the event. If `name` is null, removes all bound
- // callbacks for all events.
- Events.off = function(name, callback, context) {
- if (!this._events) return this;
- this._events = eventsApi(offApi, this._events, name, callback, {
- context: context,
- listeners: this._listeners
- });
-
- return this;
- };
-
- // Tell this object to stop listening to either specific events ... or
- // to every object it's currently listening to.
- Events.stopListening = function(obj, name, callback) {
- var listeningTo = this._listeningTo;
- if (!listeningTo) return this;
-
- var ids = obj ? [obj._listenId] : _.keys(listeningTo);
- for (var i = 0; i < ids.length; i++) {
- var listening = listeningTo[ids[i]];
-
- // If listening doesn't exist, this object is not currently
- // listening to obj. Break out early.
- if (!listening) break;
-
- listening.obj.off(name, callback, this);
- if (listening.interop) listening.off(name, callback);
- }
- if (_.isEmpty(listeningTo)) this._listeningTo = void 0;
-
- return this;
- };
-
- // The reducing API that removes a callback from the `events` object.
- var offApi = function(events, name, callback, options) {
- if (!events) return;
-
- var context = options.context, listeners = options.listeners;
- var i = 0, names;
-
- // Delete all event listeners and "drop" events.
- if (!name && !context && !callback) {
- for (names = _.keys(listeners); i < names.length; i++) {
- listeners[names[i]].cleanup();
- }
- return;
- }
-
- names = name ? [name] : _.keys(events);
- for (; i < names.length; i++) {
- name = names[i];
- var handlers = events[name];
-
- // Bail out if there are no events stored.
- if (!handlers) break;
-
- // Find any remaining events.
- var remaining = [];
- for (var j = 0; j < handlers.length; j++) {
- var handler = handlers[j];
- if (
- callback && callback !== handler.callback &&
- callback !== handler.callback._callback ||
- context && context !== handler.context
- ) {
- remaining.push(handler);
- } else {
- var listening = handler.listening;
- if (listening) listening.off(name, callback);
- }
- }
-
- // Replace events if there are any remaining. Otherwise, clean up.
- if (remaining.length) {
- events[name] = remaining;
- } else {
- delete events[name];
- }
- }
-
- return events;
- };
-
- // Bind an event to only be triggered a single time. After the first time
- // the callback is invoked, its listener will be removed. If multiple events
- // are passed in using the space-separated syntax, the handler will fire
- // once for each event, not once for a combination of all events.
- Events.once = function(name, callback, context) {
- // Map the event into a `{event: once}` object.
- var events = eventsApi(onceMap, {}, name, callback, this.off.bind(this));
- if (typeof name === 'string' && context == null) callback = void 0;
- return this.on(events, callback, context);
- };
-
- // Inversion-of-control versions of `once`.
- Events.listenToOnce = function(obj, name, callback) {
- // Map the event into a `{event: once}` object.
- var events = eventsApi(onceMap, {}, name, callback, this.stopListening.bind(this, obj));
- return this.listenTo(obj, events);
- };
-
- // Reduces the event callbacks into a map of `{event: onceWrapper}`.
- // `offer` unbinds the `onceWrapper` after it has been called.
- var onceMap = function(map, name, callback, offer) {
- if (callback) {
- var once = map[name] = _.once(function() {
- offer(name, once);
- callback.apply(this, arguments);
- });
- once._callback = callback;
- }
- return map;
- };
-
- // Trigger one or many events, firing all bound callbacks. Callbacks are
- // passed the same arguments as `trigger` is, apart from the event name
- // (unless you're listening on `"all"`, which will cause your callback to
- // receive the true name of the event as the first argument).
- Events.trigger = function(name) {
- if (!this._events) return this;
-
- var length = Math.max(0, arguments.length - 1);
- var args = Array(length);
- for (var i = 0; i < length; i++) args[i] = arguments[i + 1];
-
- eventsApi(triggerApi, this._events, name, void 0, args);
- return this;
- };
-
- // Handles triggering the appropriate event callbacks.
- var triggerApi = function(objEvents, name, callback, args) {
- if (objEvents) {
- var events = objEvents[name];
- var allEvents = objEvents.all;
- if (events && allEvents) allEvents = allEvents.slice();
- if (events) triggerEvents(events, args);
- if (allEvents) triggerEvents(allEvents, [name].concat(args));
- }
- return objEvents;
- };
-
- // A difficult-to-believe, but optimized internal dispatch function for
- // triggering events. Tries to keep the usual cases speedy (most internal
- // Backbone events have 3 arguments).
- var triggerEvents = function(events, args) {
- var ev, i = -1, l = events.length, a1 = args[0], a2 = args[1], a3 = args[2];
- switch (args.length) {
- case 0: while (++i < l) (ev = events[i]).callback.call(ev.ctx); return;
- case 1: while (++i < l) (ev = events[i]).callback.call(ev.ctx, a1); return;
- case 2: while (++i < l) (ev = events[i]).callback.call(ev.ctx, a1, a2); return;
- case 3: while (++i < l) (ev = events[i]).callback.call(ev.ctx, a1, a2, a3); return;
- default: while (++i < l) (ev = events[i]).callback.apply(ev.ctx, args); return;
- }
- };
-
- // A listening class that tracks and cleans up memory bindings
- // when all callbacks have been offed.
- var Listening = function(listener, obj) {
- this.id = listener._listenId;
- this.listener = listener;
- this.obj = obj;
- this.interop = true;
- this.count = 0;
- this._events = void 0;
- };
-
- Listening.prototype.on = Events.on;
-
- // Offs a callback (or several).
- // Uses an optimized counter if the listenee uses Backbone.Events.
- // Otherwise, falls back to manual tracking to support events
- // library interop.
- Listening.prototype.off = function(name, callback) {
- var cleanup;
- if (this.interop) {
- this._events = eventsApi(offApi, this._events, name, callback, {
- context: void 0,
- listeners: void 0
- });
- cleanup = !this._events;
- } else {
- this.count--;
- cleanup = this.count === 0;
- }
- if (cleanup) this.cleanup();
- };
-
- // Cleans up memory bindings between the listener and the listenee.
- Listening.prototype.cleanup = function() {
- delete this.listener._listeningTo[this.obj._listenId];
- if (!this.interop) delete this.obj._listeners[this.id];
- };
-
- // Aliases for backwards compatibility.
- Events.bind = Events.on;
- Events.unbind = Events.off;
-
- // Allow the `Backbone` object to serve as a global event bus, for folks who
- // want global "pubsub" in a convenient place.
- _.extend(Backbone, Events);
-
- // Backbone.Model
- // --------------
-
- // Backbone **Models** are the basic data object in the framework --
- // frequently representing a row in a table in a database on your server.
- // A discrete chunk of data and a bunch of useful, related methods for
- // performing computations and transformations on that data.
-
- // Create a new model with the specified attributes. A client id (`cid`)
- // is automatically generated and assigned for you.
- var Model = Backbone.Model = function(attributes, options) {
- var attrs = attributes || {};
- options || (options = {});
- this.preinitialize.apply(this, arguments);
- this.cid = _.uniqueId(this.cidPrefix);
- this.attributes = {};
- if (options.collection) this.collection = options.collection;
- if (options.parse) attrs = this.parse(attrs, options) || {};
- var defaults = _.result(this, 'defaults');
-
- // Just _.defaults would work fine, but the additional _.extends
- // is in there for historical reasons. See #3843.
- attrs = _.defaults(_.extend({}, defaults, attrs), defaults);
-
- this.set(attrs, options);
- this.changed = {};
- this.initialize.apply(this, arguments);
- };
-
- // Attach all inheritable methods to the Model prototype.
- _.extend(Model.prototype, Events, {
-
- // A hash of attributes whose current and previous value differ.
- changed: null,
-
- // The value returned during the last failed validation.
- validationError: null,
-
- // The default name for the JSON `id` attribute is `"id"`. MongoDB and
- // CouchDB users may want to set this to `"_id"`.
- idAttribute: 'id',
-
- // The prefix is used to create the client id which is used to identify models locally.
- // You may want to override this if you're experiencing name clashes with model ids.
- cidPrefix: 'c',
-
- // preinitialize is an empty function by default. You can override it with a function
- // or object. preinitialize will run before any instantiation logic is run in the Model.
- preinitialize: function(){},
-
- // Initialize is an empty function by default. Override it with your own
- // initialization logic.
- initialize: function(){},
-
- // Return a copy of the model's `attributes` object.
- toJSON: function(options) {
- return _.clone(this.attributes);
- },
-
- // Proxy `Backbone.sync` by default -- but override this if you need
- // custom syncing semantics for *this* particular model.
- sync: function() {
- return Backbone.sync.apply(this, arguments);
- },
-
- // Get the value of an attribute.
- get: function(attr) {
- return this.attributes[attr];
- },
-
- // Get the HTML-escaped value of an attribute.
- escape: function(attr) {
- return _.escape(this.get(attr));
- },
-
- // Returns `true` if the attribute contains a value that is not null
- // or undefined.
- has: function(attr) {
- return this.get(attr) != null;
- },
-
- // Special-cased proxy to underscore's `_.matches` method.
- matches: function(attrs) {
- return !!_.iteratee(attrs, this)(this.attributes);
- },
-
- // Set a hash of model attributes on the object, firing `"change"`. This is
- // the core primitive operation of a model, updating the data and notifying
- // anyone who needs to know about the change in state. The heart of the beast.
- set: function(key, val, options) {
- if (key == null) return this;
-
- // Handle both `"key", value` and `{key: value}` -style arguments.
- var attrs;
- if (typeof key === 'object') {
- attrs = key;
- options = val;
- } else {
- (attrs = {})[key] = val;
- }
-
- options || (options = {});
-
- // Run validation.
- if (!this._validate(attrs, options)) return false;
-
- // Extract attributes and options.
- var unset = options.unset;
- var silent = options.silent;
- var changes = [];
- var changing = this._changing;
- this._changing = true;
-
- if (!changing) {
- this._previousAttributes = _.clone(this.attributes);
- this.changed = {};
- }
-
- var current = this.attributes;
- var changed = this.changed;
- var prev = this._previousAttributes;
-
- // For each `set` attribute, update or delete the current value.
- for (var attr in attrs) {
- val = attrs[attr];
- if (!_.isEqual(current[attr], val)) changes.push(attr);
- if (!_.isEqual(prev[attr], val)) {
- changed[attr] = val;
- } else {
- delete changed[attr];
- }
- unset ? delete current[attr] : current[attr] = val;
- }
-
- // Update the `id`.
- if (this.idAttribute in attrs) {
- var prevId = this.id;
- this.id = this.get(this.idAttribute);
- this.trigger('changeId', this, prevId, options);
- }
-
- // Trigger all relevant attribute changes.
- if (!silent) {
- if (changes.length) this._pending = options;
- for (var i = 0; i < changes.length; i++) {
- this.trigger('change:' + changes[i], this, current[changes[i]], options);
- }
- }
-
- // You might be wondering why there's a `while` loop here. Changes can
- // be recursively nested within `"change"` events.
- if (changing) return this;
- if (!silent) {
- while (this._pending) {
- options = this._pending;
- this._pending = false;
- this.trigger('change', this, options);
- }
- }
- this._pending = false;
- this._changing = false;
- return this;
- },
-
- // Remove an attribute from the model, firing `"change"`. `unset` is a noop
- // if the attribute doesn't exist.
- unset: function(attr, options) {
- return this.set(attr, void 0, _.extend({}, options, {unset: true}));
- },
-
- // Clear all attributes on the model, firing `"change"`.
- clear: function(options) {
- var attrs = {};
- for (var key in this.attributes) attrs[key] = void 0;
- return this.set(attrs, _.extend({}, options, {unset: true}));
- },
-
- // Determine if the model has changed since the last `"change"` event.
- // If you specify an attribute name, determine if that attribute has changed.
- hasChanged: function(attr) {
- if (attr == null) return !_.isEmpty(this.changed);
- return _.has(this.changed, attr);
- },
-
- // Return an object containing all the attributes that have changed, or
- // false if there are no changed attributes. Useful for determining what
- // parts of a view need to be updated and/or what attributes need to be
- // persisted to the server. Unset attributes will be set to undefined.
- // You can also pass an attributes object to diff against the model,
- // determining if there *would be* a change.
- changedAttributes: function(diff) {
- if (!diff) return this.hasChanged() ? _.clone(this.changed) : false;
- var old = this._changing ? this._previousAttributes : this.attributes;
- var changed = {};
- var hasChanged;
- for (var attr in diff) {
- var val = diff[attr];
- if (_.isEqual(old[attr], val)) continue;
- changed[attr] = val;
- hasChanged = true;
- }
- return hasChanged ? changed : false;
- },
-
- // Get the previous value of an attribute, recorded at the time the last
- // `"change"` event was fired.
- previous: function(attr) {
- if (attr == null || !this._previousAttributes) return null;
- return this._previousAttributes[attr];
- },
-
- // Get all of the attributes of the model at the time of the previous
- // `"change"` event.
- previousAttributes: function() {
- return _.clone(this._previousAttributes);
- },
-
- // Fetch the model from the server, merging the response with the model's
- // local attributes. Any changed attributes will trigger a "change" event.
- fetch: function(options) {
- options = _.extend({parse: true}, options);
- var model = this;
- var success = options.success;
- options.success = function(resp) {
- var serverAttrs = options.parse ? model.parse(resp, options) : resp;
- if (!model.set(serverAttrs, options)) return false;
- if (success) success.call(options.context, model, resp, options);
- model.trigger('sync', model, resp, options);
- };
- wrapError(this, options);
- return this.sync('read', this, options);
- },
-
- // Set a hash of model attributes, and sync the model to the server.
- // If the server returns an attributes hash that differs, the model's
- // state will be `set` again.
- save: function(key, val, options) {
- // Handle both `"key", value` and `{key: value}` -style arguments.
- var attrs;
- if (key == null || typeof key === 'object') {
- attrs = key;
- options = val;
- } else {
- (attrs = {})[key] = val;
- }
-
- options = _.extend({validate: true, parse: true}, options);
- var wait = options.wait;
-
- // If we're not waiting and attributes exist, save acts as
- // `set(attr).save(null, opts)` with validation. Otherwise, check if
- // the model will be valid when the attributes, if any, are set.
- if (attrs && !wait) {
- if (!this.set(attrs, options)) return false;
- } else if (!this._validate(attrs, options)) {
- return false;
- }
-
- // After a successful server-side save, the client is (optionally)
- // updated with the server-side state.
- var model = this;
- var success = options.success;
- var attributes = this.attributes;
- options.success = function(resp) {
- // Ensure attributes are restored during synchronous saves.
- model.attributes = attributes;
- var serverAttrs = options.parse ? model.parse(resp, options) : resp;
- if (wait) serverAttrs = _.extend({}, attrs, serverAttrs);
- if (serverAttrs && !model.set(serverAttrs, options)) return false;
- if (success) success.call(options.context, model, resp, options);
- model.trigger('sync', model, resp, options);
- };
- wrapError(this, options);
-
- // Set temporary attributes if `{wait: true}` to properly find new ids.
- if (attrs && wait) this.attributes = _.extend({}, attributes, attrs);
-
- var method = this.isNew() ? 'create' : options.patch ? 'patch' : 'update';
- if (method === 'patch' && !options.attrs) options.attrs = attrs;
- var xhr = this.sync(method, this, options);
-
- // Restore attributes.
- this.attributes = attributes;
-
- return xhr;
- },
-
- // Destroy this model on the server if it was already persisted.
- // Optimistically removes the model from its collection, if it has one.
- // If `wait: true` is passed, waits for the server to respond before removal.
- destroy: function(options) {
- options = options ? _.clone(options) : {};
- var model = this;
- var success = options.success;
- var wait = options.wait;
-
- var destroy = function() {
- model.stopListening();
- model.trigger('destroy', model, model.collection, options);
- };
-
- options.success = function(resp) {
- if (wait) destroy();
- if (success) success.call(options.context, model, resp, options);
- if (!model.isNew()) model.trigger('sync', model, resp, options);
- };
-
- var xhr = false;
- if (this.isNew()) {
- _.defer(options.success);
- } else {
- wrapError(this, options);
- xhr = this.sync('delete', this, options);
- }
- if (!wait) destroy();
- return xhr;
- },
-
- // Default URL for the model's representation on the server -- if you're
- // using Backbone's restful methods, override this to change the endpoint
- // that will be called.
- url: function() {
- var base =
- _.result(this, 'urlRoot') ||
- _.result(this.collection, 'url') ||
- urlError();
- if (this.isNew()) return base;
- var id = this.get(this.idAttribute);
- return base.replace(/[^\/]$/, '$&/') + encodeURIComponent(id);
- },
-
- // **parse** converts a response into the hash of attributes to be `set` on
- // the model. The default implementation is just to pass the response along.
- parse: function(resp, options) {
- return resp;
- },
-
- // Create a new model with identical attributes to this one.
- clone: function() {
- return new this.constructor(this.attributes);
- },
-
- // A model is new if it has never been saved to the server, and lacks an id.
- isNew: function() {
- return !this.has(this.idAttribute);
- },
-
- // Check if the model is currently in a valid state.
- isValid: function(options) {
- return this._validate({}, _.extend({}, options, {validate: true}));
- },
-
- // Run validation against the next complete set of model attributes,
- // returning `true` if all is well. Otherwise, fire an `"invalid"` event.
- _validate: function(attrs, options) {
- if (!options.validate || !this.validate) return true;
- attrs = _.extend({}, this.attributes, attrs);
- var error = this.validationError = this.validate(attrs, options) || null;
- if (!error) return true;
- this.trigger('invalid', this, error, _.extend(options, {validationError: error}));
- return false;
- }
-
- });
-
- // Backbone.Collection
- // -------------------
-
- // If models tend to represent a single row of data, a Backbone Collection is
- // more analogous to a table full of data ... or a small slice or page of that
- // table, or a collection of rows that belong together for a particular reason
- // -- all of the messages in this particular folder, all of the documents
- // belonging to this particular author, and so on. Collections maintain
- // indexes of their models, both in order, and for lookup by `id`.
-
- // Create a new **Collection**, perhaps to contain a specific type of `model`.
- // If a `comparator` is specified, the Collection will maintain
- // its models in sort order, as they're added and removed.
- var Collection = Backbone.Collection = function(models, options) {
- options || (options = {});
- this.preinitialize.apply(this, arguments);
- if (options.model) this.model = options.model;
- if (options.comparator !== void 0) this.comparator = options.comparator;
- this._reset();
- this.initialize.apply(this, arguments);
- if (models) this.reset(models, _.extend({silent: true}, options));
- };
-
- // Default options for `Collection#set`.
- var setOptions = {add: true, remove: true, merge: true};
- var addOptions = {add: true, remove: false};
-
- // Splices `insert` into `array` at index `at`.
- var splice = function(array, insert, at) {
- at = Math.min(Math.max(at, 0), array.length);
- var tail = Array(array.length - at);
- var length = insert.length;
- var i;
- for (i = 0; i < tail.length; i++) tail[i] = array[i + at];
- for (i = 0; i < length; i++) array[i + at] = insert[i];
- for (i = 0; i < tail.length; i++) array[i + length + at] = tail[i];
- };
-
- // Define the Collection's inheritable methods.
- _.extend(Collection.prototype, Events, {
-
- // The default model for a collection is just a **Backbone.Model**.
- // This should be overridden in most cases.
- model: Model,
-
-
- // preinitialize is an empty function by default. You can override it with a function
- // or object. preinitialize will run before any instantiation logic is run in the Collection.
- preinitialize: function(){},
-
- // Initialize is an empty function by default. Override it with your own
- // initialization logic.
- initialize: function(){},
-
- // The JSON representation of a Collection is an array of the
- // models' attributes.
- toJSON: function(options) {
- return this.map(function(model) { return model.toJSON(options); });
- },
-
- // Proxy `Backbone.sync` by default.
- sync: function() {
- return Backbone.sync.apply(this, arguments);
- },
-
- // Add a model, or list of models to the set. `models` may be Backbone
- // Models or raw JavaScript objects to be converted to Models, or any
- // combination of the two.
- add: function(models, options) {
- return this.set(models, _.extend({merge: false}, options, addOptions));
- },
-
- // Remove a model, or a list of models from the set.
- remove: function(models, options) {
- options = _.extend({}, options);
- var singular = !_.isArray(models);
- models = singular ? [models] : models.slice();
- var removed = this._removeModels(models, options);
- if (!options.silent && removed.length) {
- options.changes = {added: [], merged: [], removed: removed};
- this.trigger('update', this, options);
- }
- return singular ? removed[0] : removed;
- },
-
- // Update a collection by `set`-ing a new list of models, adding new ones,
- // removing models that are no longer present, and merging models that
- // already exist in the collection, as necessary. Similar to **Model#set**,
- // the core operation for updating the data contained by the collection.
- set: function(models, options) {
- if (models == null) return;
-
- options = _.extend({}, setOptions, options);
- if (options.parse && !this._isModel(models)) {
- models = this.parse(models, options) || [];
- }
-
- var singular = !_.isArray(models);
- models = singular ? [models] : models.slice();
-
- var at = options.at;
- if (at != null) at = +at;
- if (at > this.length) at = this.length;
- if (at < 0) at += this.length + 1;
-
- var set = [];
- var toAdd = [];
- var toMerge = [];
- var toRemove = [];
- var modelMap = {};
-
- var add = options.add;
- var merge = options.merge;
- var remove = options.remove;
-
- var sort = false;
- var sortable = this.comparator && at == null && options.sort !== false;
- var sortAttr = _.isString(this.comparator) ? this.comparator : null;
-
- // Turn bare objects into model references, and prevent invalid models
- // from being added.
- var model, i;
- for (i = 0; i < models.length; i++) {
- model = models[i];
-
- // If a duplicate is found, prevent it from being added and
- // optionally merge it into the existing model.
- var existing = this.get(model);
- if (existing) {
- if (merge && model !== existing) {
- var attrs = this._isModel(model) ? model.attributes : model;
- if (options.parse) attrs = existing.parse(attrs, options);
- existing.set(attrs, options);
- toMerge.push(existing);
- if (sortable && !sort) sort = existing.hasChanged(sortAttr);
- }
- if (!modelMap[existing.cid]) {
- modelMap[existing.cid] = true;
- set.push(existing);
- }
- models[i] = existing;
-
- // If this is a new, valid model, push it to the `toAdd` list.
- } else if (add) {
- model = models[i] = this._prepareModel(model, options);
- if (model) {
- toAdd.push(model);
- this._addReference(model, options);
- modelMap[model.cid] = true;
- set.push(model);
- }
- }
- }
-
- // Remove stale models.
- if (remove) {
- for (i = 0; i < this.length; i++) {
- model = this.models[i];
- if (!modelMap[model.cid]) toRemove.push(model);
- }
- if (toRemove.length) this._removeModels(toRemove, options);
- }
-
- // See if sorting is needed, update `length` and splice in new models.
- var orderChanged = false;
- var replace = !sortable && add && remove;
- if (set.length && replace) {
- orderChanged = this.length !== set.length || _.some(this.models, function(m, index) {
- return m !== set[index];
- });
- this.models.length = 0;
- splice(this.models, set, 0);
- this.length = this.models.length;
- } else if (toAdd.length) {
- if (sortable) sort = true;
- splice(this.models, toAdd, at == null ? this.length : at);
- this.length = this.models.length;
- }
-
- // Silently sort the collection if appropriate.
- if (sort) this.sort({silent: true});
-
- // Unless silenced, it's time to fire all appropriate add/sort/update events.
- if (!options.silent) {
- for (i = 0; i < toAdd.length; i++) {
- if (at != null) options.index = at + i;
- model = toAdd[i];
- model.trigger('add', model, this, options);
- }
- if (sort || orderChanged) this.trigger('sort', this, options);
- if (toAdd.length || toRemove.length || toMerge.length) {
- options.changes = {
- added: toAdd,
- removed: toRemove,
- merged: toMerge
- };
- this.trigger('update', this, options);
- }
- }
-
- // Return the added (or merged) model (or models).
- return singular ? models[0] : models;
- },
-
- // When you have more items than you want to add or remove individually,
- // you can reset the entire set with a new list of models, without firing
- // any granular `add` or `remove` events. Fires `reset` when finished.
- // Useful for bulk operations and optimizations.
- reset: function(models, options) {
- options = options ? _.clone(options) : {};
- for (var i = 0; i < this.models.length; i++) {
- this._removeReference(this.models[i], options);
- }
- options.previousModels = this.models;
- this._reset();
- models = this.add(models, _.extend({silent: true}, options));
- if (!options.silent) this.trigger('reset', this, options);
- return models;
- },
-
- // Add a model to the end of the collection.
- push: function(model, options) {
- return this.add(model, _.extend({at: this.length}, options));
- },
-
- // Remove a model from the end of the collection.
- pop: function(options) {
- var model = this.at(this.length - 1);
- return this.remove(model, options);
- },
-
- // Add a model to the beginning of the collection.
- unshift: function(model, options) {
- return this.add(model, _.extend({at: 0}, options));
- },
-
- // Remove a model from the beginning of the collection.
- shift: function(options) {
- var model = this.at(0);
- return this.remove(model, options);
- },
-
- // Slice out a sub-array of models from the collection.
- slice: function() {
- return slice.apply(this.models, arguments);
- },
-
- // Get a model from the set by id, cid, model object with id or cid
- // properties, or an attributes object that is transformed through modelId.
- get: function(obj) {
- if (obj == null) return void 0;
- return this._byId[obj] ||
- this._byId[this.modelId(this._isModel(obj) ? obj.attributes : obj, obj.idAttribute)] ||
- obj.cid && this._byId[obj.cid];
- },
-
- // Returns `true` if the model is in the collection.
- has: function(obj) {
- return this.get(obj) != null;
- },
-
- // Get the model at the given index.
- at: function(index) {
- if (index < 0) index += this.length;
- return this.models[index];
- },
-
- // Return models with matching attributes. Useful for simple cases of
- // `filter`.
- where: function(attrs, first) {
- return this[first ? 'find' : 'filter'](attrs);
- },
-
- // Return the first model with matching attributes. Useful for simple cases
- // of `find`.
- findWhere: function(attrs) {
- return this.where(attrs, true);
- },
-
- // Force the collection to re-sort itself. You don't need to call this under
- // normal circumstances, as the set will maintain sort order as each item
- // is added.
- sort: function(options) {
- var comparator = this.comparator;
- if (!comparator) throw new Error('Cannot sort a set without a comparator');
- options || (options = {});
-
- var length = comparator.length;
- if (_.isFunction(comparator)) comparator = comparator.bind(this);
-
- // Run sort based on type of `comparator`.
- if (length === 1 || _.isString(comparator)) {
- this.models = this.sortBy(comparator);
- } else {
- this.models.sort(comparator);
- }
- if (!options.silent) this.trigger('sort', this, options);
- return this;
- },
-
- // Pluck an attribute from each model in the collection.
- pluck: function(attr) {
- return this.map(attr + '');
- },
-
- // Fetch the default set of models for this collection, resetting the
- // collection when they arrive. If `reset: true` is passed, the response
- // data will be passed through the `reset` method instead of `set`.
- fetch: function(options) {
- options = _.extend({parse: true}, options);
- var success = options.success;
- var collection = this;
- options.success = function(resp) {
- var method = options.reset ? 'reset' : 'set';
- collection[method](resp, options);
- if (success) success.call(options.context, collection, resp, options);
- collection.trigger('sync', collection, resp, options);
- };
- wrapError(this, options);
- return this.sync('read', this, options);
- },
-
- // Create a new instance of a model in this collection. Add the model to the
- // collection immediately, unless `wait: true` is passed, in which case we
- // wait for the server to agree.
- create: function(model, options) {
- options = options ? _.clone(options) : {};
- var wait = options.wait;
- model = this._prepareModel(model, options);
- if (!model) return false;
- if (!wait) this.add(model, options);
- var collection = this;
- var success = options.success;
- options.success = function(m, resp, callbackOpts) {
- if (wait) {
- m.off('error', this._forwardPristineError, this);
- collection.add(m, callbackOpts);
- }
- if (success) success.call(callbackOpts.context, m, resp, callbackOpts);
- };
- // In case of wait:true, our collection is not listening to any
- // of the model's events yet, so it will not forward the error
- // event. In this special case, we need to listen for it
- // separately and handle the event just once.
- // (The reason we don't need to do this for the sync event is
- // in the success handler above: we add the model first, which
- // causes the collection to listen, and then invoke the callback
- // that triggers the event.)
- if (wait) {
- model.once('error', this._forwardPristineError, this);
- }
- model.save(null, options);
- return model;
- },
-
- // **parse** converts a response into a list of models to be added to the
- // collection. The default implementation is just to pass it through.
- parse: function(resp, options) {
- return resp;
- },
-
- // Create a new collection with an identical list of models as this one.
- clone: function() {
- return new this.constructor(this.models, {
- model: this.model,
- comparator: this.comparator
- });
- },
-
- // Define how to uniquely identify models in the collection.
- modelId: function(attrs, idAttribute) {
- return attrs[idAttribute || this.model.prototype.idAttribute || 'id'];
- },
-
- // Get an iterator of all models in this collection.
- values: function() {
- return new CollectionIterator(this, ITERATOR_VALUES);
- },
-
- // Get an iterator of all model IDs in this collection.
- keys: function() {
- return new CollectionIterator(this, ITERATOR_KEYS);
- },
-
- // Get an iterator of all [ID, model] tuples in this collection.
- entries: function() {
- return new CollectionIterator(this, ITERATOR_KEYSVALUES);
- },
-
- // Private method to reset all internal state. Called when the collection
- // is first initialized or reset.
- _reset: function() {
- this.length = 0;
- this.models = [];
- this._byId = {};
- },
-
- // Prepare a hash of attributes (or other model) to be added to this
- // collection.
- _prepareModel: function(attrs, options) {
- if (this._isModel(attrs)) {
- if (!attrs.collection) attrs.collection = this;
- return attrs;
- }
- options = options ? _.clone(options) : {};
- options.collection = this;
-
- var model;
- if (this.model.prototype) {
- model = new this.model(attrs, options);
- } else {
- // ES class methods didn't have prototype
- model = this.model(attrs, options);
- }
-
- if (!model.validationError) return model;
- this.trigger('invalid', this, model.validationError, options);
- return false;
- },
-
- // Internal method called by both remove and set.
- _removeModels: function(models, options) {
- var removed = [];
- for (var i = 0; i < models.length; i++) {
- var model = this.get(models[i]);
- if (!model) continue;
-
- var index = this.indexOf(model);
- this.models.splice(index, 1);
- this.length--;
-
- // Remove references before triggering 'remove' event to prevent an
- // infinite loop. #3693
- delete this._byId[model.cid];
- var id = this.modelId(model.attributes, model.idAttribute);
- if (id != null) delete this._byId[id];
-
- if (!options.silent) {
- options.index = index;
- model.trigger('remove', model, this, options);
- }
-
- removed.push(model);
- this._removeReference(model, options);
- }
- if (models.length > 0 && !options.silent) delete options.index;
- return removed;
- },
-
- // Method for checking whether an object should be considered a model for
- // the purposes of adding to the collection.
- _isModel: function(model) {
- return model instanceof Model;
- },
-
- // Internal method to create a model's ties to a collection.
- _addReference: function(model, options) {
- this._byId[model.cid] = model;
- var id = this.modelId(model.attributes, model.idAttribute);
- if (id != null) this._byId[id] = model;
- model.on('all', this._onModelEvent, this);
- },
-
- // Internal method to sever a model's ties to a collection.
- _removeReference: function(model, options) {
- delete this._byId[model.cid];
- var id = this.modelId(model.attributes, model.idAttribute);
- if (id != null) delete this._byId[id];
- if (this === model.collection) delete model.collection;
- model.off('all', this._onModelEvent, this);
- },
-
- // Internal method called every time a model in the set fires an event.
- // Sets need to update their indexes when models change ids. All other
- // events simply proxy through. "add" and "remove" events that originate
- // in other collections are ignored.
- _onModelEvent: function(event, model, collection, options) {
- if (model) {
- if ((event === 'add' || event === 'remove') && collection !== this) return;
- if (event === 'destroy') this.remove(model, options);
- if (event === 'changeId') {
- var prevId = this.modelId(model.previousAttributes(), model.idAttribute);
- var id = this.modelId(model.attributes, model.idAttribute);
- if (prevId != null) delete this._byId[prevId];
- if (id != null) this._byId[id] = model;
- }
- }
- this.trigger.apply(this, arguments);
- },
-
- // Internal callback method used in `create`. It serves as a
- // stand-in for the `_onModelEvent` method, which is not yet bound
- // during the `wait` period of the `create` call. We still want to
- // forward any `'error'` event at the end of the `wait` period,
- // hence a customized callback.
- _forwardPristineError: function(model, collection, options) {
- // Prevent double forward if the model was already in the
- // collection before the call to `create`.
- if (this.has(model)) return;
- this._onModelEvent('error', model, collection, options);
- }
- });
-
- // Defining an @@iterator method implements JavaScript's Iterable protocol.
- // In modern ES2015 browsers, this value is found at Symbol.iterator.
- /* global Symbol */
- var $$iterator = typeof Symbol === 'function' && Symbol.iterator;
- if ($$iterator) {
- Collection.prototype[$$iterator] = Collection.prototype.values;
- }
-
- // CollectionIterator
- // ------------------
-
- // A CollectionIterator implements JavaScript's Iterator protocol, allowing the
- // use of `for of` loops in modern browsers and interoperation between
- // Backbone.Collection and other JavaScript functions and third-party libraries
- // which can operate on Iterables.
- var CollectionIterator = function(collection, kind) {
- this._collection = collection;
- this._kind = kind;
- this._index = 0;
- };
-
- // This "enum" defines the three possible kinds of values which can be emitted
- // by a CollectionIterator that correspond to the values(), keys() and entries()
- // methods on Collection, respectively.
- var ITERATOR_VALUES = 1;
- var ITERATOR_KEYS = 2;
- var ITERATOR_KEYSVALUES = 3;
-
- // All Iterators should themselves be Iterable.
- if ($$iterator) {
- CollectionIterator.prototype[$$iterator] = function() {
- return this;
- };
- }
-
- CollectionIterator.prototype.next = function() {
- if (this._collection) {
-
- // Only continue iterating if the iterated collection is long enough.
- if (this._index < this._collection.length) {
- var model = this._collection.at(this._index);
- this._index++;
-
- // Construct a value depending on what kind of values should be iterated.
- var value;
- if (this._kind === ITERATOR_VALUES) {
- value = model;
- } else {
- var id = this._collection.modelId(model.attributes, model.idAttribute);
- if (this._kind === ITERATOR_KEYS) {
- value = id;
- } else { // ITERATOR_KEYSVALUES
- value = [id, model];
- }
- }
- return {value: value, done: false};
- }
-
- // Once exhausted, remove the reference to the collection so future
- // calls to the next method always return done.
- this._collection = void 0;
- }
-
- return {value: void 0, done: true};
- };
-
- // Backbone.View
- // -------------
-
- // Backbone Views are almost more convention than they are actual code. A View
- // is simply a JavaScript object that represents a logical chunk of UI in the
- // DOM. This might be a single item, an entire list, a sidebar or panel, or
- // even the surrounding frame which wraps your whole app. Defining a chunk of
- // UI as a **View** allows you to define your DOM events declaratively, without
- // having to worry about render order ... and makes it easy for the view to
- // react to specific changes in the state of your models.
-
- // Creating a Backbone.View creates its initial element outside of the DOM,
- // if an existing element is not provided...
- var View = Backbone.View = function(options) {
- this.cid = _.uniqueId('view');
- this.preinitialize.apply(this, arguments);
- _.extend(this, _.pick(options, viewOptions));
- this._ensureElement();
- this.initialize.apply(this, arguments);
- };
-
- // Cached regex to split keys for `delegate`.
- var delegateEventSplitter = /^(\S+)\s*(.*)$/;
-
- // List of view options to be set as properties.
- var viewOptions = ['model', 'collection', 'el', 'id', 'attributes', 'className', 'tagName', 'events'];
-
- // Set up all inheritable **Backbone.View** properties and methods.
- _.extend(View.prototype, Events, {
-
- // The default `tagName` of a View's element is `"div"`.
- tagName: 'div',
-
- // jQuery delegate for element lookup, scoped to DOM elements within the
- // current view. This should be preferred to global lookups where possible.
- $: function(selector) {
- return this.$el.find(selector);
- },
-
- // preinitialize is an empty function by default. You can override it with a function
- // or object. preinitialize will run before any instantiation logic is run in the View
- preinitialize: function(){},
-
- // Initialize is an empty function by default. Override it with your own
- // initialization logic.
- initialize: function(){},
-
- // **render** is the core function that your view should override, in order
- // to populate its element (`this.el`), with the appropriate HTML. The
- // convention is for **render** to always return `this`.
- render: function() {
- return this;
- },
-
- // Remove this view by taking the element out of the DOM, and removing any
- // applicable Backbone.Events listeners.
- remove: function() {
- this._removeElement();
- this.stopListening();
- return this;
- },
-
- // Remove this view's element from the document and all event listeners
- // attached to it. Exposed for subclasses using an alternative DOM
- // manipulation API.
- _removeElement: function() {
- this.$el.remove();
- },
-
- // Change the view's element (`this.el` property) and re-delegate the
- // view's events on the new element.
- setElement: function(element) {
- this.undelegateEvents();
- this._setElement(element);
- this.delegateEvents();
- return this;
- },
-
- // Creates the `this.el` and `this.$el` references for this view using the
- // given `el`. `el` can be a CSS selector or an HTML string, a jQuery
- // context or an element. Subclasses can override this to utilize an
- // alternative DOM manipulation API and are only required to set the
- // `this.el` property.
- _setElement: function(el) {
- this.$el = el instanceof Backbone.$ ? el : Backbone.$(el);
- this.el = this.$el[0];
- },
-
- // Set callbacks, where `this.events` is a hash of
- //
- // *{"event selector": "callback"}*
- //
- // {
- // 'mousedown .title': 'edit',
- // 'click .button': 'save',
- // 'click .open': function(e) { ... }
- // }
- //
- // pairs. Callbacks will be bound to the view, with `this` set properly.
- // Uses event delegation for efficiency.
- // Omitting the selector binds the event to `this.el`.
- delegateEvents: function(events) {
- events || (events = _.result(this, 'events'));
- if (!events) return this;
- this.undelegateEvents();
- for (var key in events) {
- var method = events[key];
- if (!_.isFunction(method)) method = this[method];
- if (!method) continue;
- var match = key.match(delegateEventSplitter);
- this.delegate(match[1], match[2], method.bind(this));
- }
- return this;
- },
-
- // Add a single event listener to the view's element (or a child element
- // using `selector`). This only works for delegate-able events: not `focus`,
- // `blur`, and not `change`, `submit`, and `reset` in Internet Explorer.
- delegate: function(eventName, selector, listener) {
- this.$el.on(eventName + '.delegateEvents' + this.cid, selector, listener);
- return this;
- },
-
- // Clears all callbacks previously bound to the view by `delegateEvents`.
- // You usually don't need to use this, but may wish to if you have multiple
- // Backbone views attached to the same DOM element.
- undelegateEvents: function() {
- if (this.$el) this.$el.off('.delegateEvents' + this.cid);
- return this;
- },
-
- // A finer-grained `undelegateEvents` for removing a single delegated event.
- // `selector` and `listener` are both optional.
- undelegate: function(eventName, selector, listener) {
- this.$el.off(eventName + '.delegateEvents' + this.cid, selector, listener);
- return this;
- },
-
- // Produces a DOM element to be assigned to your view. Exposed for
- // subclasses using an alternative DOM manipulation API.
- _createElement: function(tagName) {
- return document.createElement(tagName);
- },
-
- // Ensure that the View has a DOM element to render into.
- // If `this.el` is a string, pass it through `$()`, take the first
- // matching element, and re-assign it to `el`. Otherwise, create
- // an element from the `id`, `className` and `tagName` properties.
- _ensureElement: function() {
- if (!this.el) {
- var attrs = _.extend({}, _.result(this, 'attributes'));
- if (this.id) attrs.id = _.result(this, 'id');
- if (this.className) attrs['class'] = _.result(this, 'className');
- this.setElement(this._createElement(_.result(this, 'tagName')));
- this._setAttributes(attrs);
- } else {
- this.setElement(_.result(this, 'el'));
- }
- },
-
- // Set attributes from a hash on this view's element. Exposed for
- // subclasses using an alternative DOM manipulation API.
- _setAttributes: function(attributes) {
- this.$el.attr(attributes);
- }
-
- });
-
- // Proxy Backbone class methods to Underscore functions, wrapping the model's
- // `attributes` object or collection's `models` array behind the scenes.
- //
- // collection.filter(function(model) { return model.get('age') > 10 });
- // collection.each(this.addView);
- //
- // `Function#apply` can be slow so we use the method's arg count, if we know it.
- var addMethod = function(base, length, method, attribute) {
- switch (length) {
- case 1: return function() {
- return base[method](this[attribute]);
- };
- case 2: return function(value) {
- return base[method](this[attribute], value);
- };
- case 3: return function(iteratee, context) {
- return base[method](this[attribute], cb(iteratee, this), context);
- };
- case 4: return function(iteratee, defaultVal, context) {
- return base[method](this[attribute], cb(iteratee, this), defaultVal, context);
- };
- default: return function() {
- var args = slice.call(arguments);
- args.unshift(this[attribute]);
- return base[method].apply(base, args);
- };
- }
- };
-
- var addUnderscoreMethods = function(Class, base, methods, attribute) {
- _.each(methods, function(length, method) {
- if (base[method]) Class.prototype[method] = addMethod(base, length, method, attribute);
- });
- };
-
- // Support `collection.sortBy('attr')` and `collection.findWhere({id: 1})`.
- var cb = function(iteratee, instance) {
- if (_.isFunction(iteratee)) return iteratee;
- if (_.isObject(iteratee) && !instance._isModel(iteratee)) return modelMatcher(iteratee);
- if (_.isString(iteratee)) return function(model) { return model.get(iteratee); };
- return iteratee;
- };
- var modelMatcher = function(attrs) {
- var matcher = _.matches(attrs);
- return function(model) {
- return matcher(model.attributes);
- };
- };
-
- // Underscore methods that we want to implement on the Collection.
- // 90% of the core usefulness of Backbone Collections is actually implemented
- // right here:
- var collectionMethods = {forEach: 3, each: 3, map: 3, collect: 3, reduce: 0,
- foldl: 0, inject: 0, reduceRight: 0, foldr: 0, find: 3, detect: 3, filter: 3,
- select: 3, reject: 3, every: 3, all: 3, some: 3, any: 3, include: 3, includes: 3,
- contains: 3, invoke: 0, max: 3, min: 3, toArray: 1, size: 1, first: 3,
- head: 3, take: 3, initial: 3, rest: 3, tail: 3, drop: 3, last: 3,
- without: 0, difference: 0, indexOf: 3, shuffle: 1, lastIndexOf: 3,
- isEmpty: 1, chain: 1, sample: 3, partition: 3, groupBy: 3, countBy: 3,
- sortBy: 3, indexBy: 3, findIndex: 3, findLastIndex: 3};
-
-
- // Underscore methods that we want to implement on the Model, mapped to the
- // number of arguments they take.
- var modelMethods = {keys: 1, values: 1, pairs: 1, invert: 1, pick: 0,
- omit: 0, chain: 1, isEmpty: 1};
-
- // Mix in each Underscore method as a proxy to `Collection#models`.
-
- _.each([
- [Collection, collectionMethods, 'models'],
- [Model, modelMethods, 'attributes']
- ], function(config) {
- var Base = config[0],
- methods = config[1],
- attribute = config[2];
-
- Base.mixin = function(obj) {
- var mappings = _.reduce(_.functions(obj), function(memo, name) {
- memo[name] = 0;
- return memo;
- }, {});
- addUnderscoreMethods(Base, obj, mappings, attribute);
- };
-
- addUnderscoreMethods(Base, _, methods, attribute);
- });
-
- // Backbone.sync
- // -------------
-
- // Override this function to change the manner in which Backbone persists
- // models to the server. You will be passed the type of request, and the
- // model in question. By default, makes a RESTful Ajax request
- // to the model's `url()`. Some possible customizations could be:
- //
- // * Use `setTimeout` to batch rapid-fire updates into a single request.
- // * Send up the models as XML instead of JSON.
- // * Persist models via WebSockets instead of Ajax.
- //
- // Turn on `Backbone.emulateHTTP` in order to send `PUT` and `DELETE` requests
- // as `POST`, with a `_method` parameter containing the true HTTP method,
- // as well as all requests with the body as `application/x-www-form-urlencoded`
- // instead of `application/json` with the model in a param named `model`.
- // Useful when interfacing with server-side languages like **PHP** that make
- // it difficult to read the body of `PUT` requests.
- Backbone.sync = function(method, model, options) {
- var type = methodMap[method];
-
- // Default options, unless specified.
- _.defaults(options || (options = {}), {
- emulateHTTP: Backbone.emulateHTTP,
- emulateJSON: Backbone.emulateJSON
- });
-
- // Default JSON-request options.
- var params = {type: type, dataType: 'json'};
-
- // Ensure that we have a URL.
- if (!options.url) {
- params.url = _.result(model, 'url') || urlError();
- }
-
- // Ensure that we have the appropriate request data.
- if (options.data == null && model && (method === 'create' || method === 'update' || method === 'patch')) {
- params.contentType = 'application/json';
- params.data = JSON.stringify(options.attrs || model.toJSON(options));
- }
-
- // For older servers, emulate JSON by encoding the request into an HTML-form.
- if (options.emulateJSON) {
- params.contentType = 'application/x-www-form-urlencoded';
- params.data = params.data ? {model: params.data} : {};
- }
-
- // For older servers, emulate HTTP by mimicking the HTTP method with `_method`
- // And an `X-HTTP-Method-Override` header.
- if (options.emulateHTTP && (type === 'PUT' || type === 'DELETE' || type === 'PATCH')) {
- params.type = 'POST';
- if (options.emulateJSON) params.data._method = type;
- var beforeSend = options.beforeSend;
- options.beforeSend = function(xhr) {
- xhr.setRequestHeader('X-HTTP-Method-Override', type);
- if (beforeSend) return beforeSend.apply(this, arguments);
- };
- }
-
- // Don't process data on a non-GET request.
- if (params.type !== 'GET' && !options.emulateJSON) {
- params.processData = false;
- }
-
- // Pass along `textStatus` and `errorThrown` from jQuery.
- var error = options.error;
- options.error = function(xhr, textStatus, errorThrown) {
- options.textStatus = textStatus;
- options.errorThrown = errorThrown;
- if (error) error.call(options.context, xhr, textStatus, errorThrown);
- };
-
- // Make the request, allowing the user to override any Ajax options.
- var xhr = options.xhr = Backbone.ajax(_.extend(params, options));
- model.trigger('request', model, xhr, options);
- return xhr;
- };
-
- // Map from CRUD to HTTP for our default `Backbone.sync` implementation.
- var methodMap = {
- 'create': 'POST',
- 'update': 'PUT',
- 'patch': 'PATCH',
- 'delete': 'DELETE',
- 'read': 'GET'
- };
-
- // Set the default implementation of `Backbone.ajax` to proxy through to `$`.
- // Override this if you'd like to use a different library.
- Backbone.ajax = function() {
- return Backbone.$.ajax.apply(Backbone.$, arguments);
- };
-
- // Backbone.Router
- // ---------------
-
- // Routers map faux-URLs to actions, and fire events when routes are
- // matched. Creating a new one sets its `routes` hash, if not set statically.
- var Router = Backbone.Router = function(options) {
- options || (options = {});
- this.preinitialize.apply(this, arguments);
- if (options.routes) this.routes = options.routes;
- this._bindRoutes();
- this.initialize.apply(this, arguments);
- };
-
- // Cached regular expressions for matching named param parts and splatted
- // parts of route strings.
- var optionalParam = /\((.*?)\)/g;
- var namedParam = /(\(\?)?:\w+/g;
- var splatParam = /\*\w+/g;
- var escapeRegExp = /[\-{}\[\]+?.,\\\^$|#\s]/g;
-
- // Set up all inheritable **Backbone.Router** properties and methods.
- _.extend(Router.prototype, Events, {
-
- // preinitialize is an empty function by default. You can override it with a function
- // or object. preinitialize will run before any instantiation logic is run in the Router.
- preinitialize: function(){},
-
- // Initialize is an empty function by default. Override it with your own
- // initialization logic.
- initialize: function(){},
-
- // Manually bind a single named route to a callback. For example:
- //
- // this.route('search/:query/p:num', 'search', function(query, num) {
- // ...
- // });
- //
- route: function(route, name, callback) {
- if (!_.isRegExp(route)) route = this._routeToRegExp(route);
- if (_.isFunction(name)) {
- callback = name;
- name = '';
- }
- if (!callback) callback = this[name];
- var router = this;
- Backbone.history.route(route, function(fragment) {
- var args = router._extractParameters(route, fragment);
- if (router.execute(callback, args, name) !== false) {
- router.trigger.apply(router, ['route:' + name].concat(args));
- router.trigger('route', name, args);
- Backbone.history.trigger('route', router, name, args);
- }
- });
- return this;
- },
-
- // Execute a route handler with the provided parameters. This is an
- // excellent place to do pre-route setup or post-route cleanup.
- execute: function(callback, args, name) {
- if (callback) callback.apply(this, args);
- },
-
- // Simple proxy to `Backbone.history` to save a fragment into the history.
- navigate: function(fragment, options) {
- Backbone.history.navigate(fragment, options);
- return this;
- },
-
- // Bind all defined routes to `Backbone.history`. We have to reverse the
- // order of the routes here to support behavior where the most general
- // routes can be defined at the bottom of the route map.
- _bindRoutes: function() {
- if (!this.routes) return;
- this.routes = _.result(this, 'routes');
- var route, routes = _.keys(this.routes);
- while ((route = routes.pop()) != null) {
- this.route(route, this.routes[route]);
- }
- },
-
- // Convert a route string into a regular expression, suitable for matching
- // against the current location hash.
- _routeToRegExp: function(route) {
- route = route.replace(escapeRegExp, '\\$&')
- .replace(optionalParam, '(?:$1)?')
- .replace(namedParam, function(match, optional) {
- return optional ? match : '([^/?]+)';
- })
- .replace(splatParam, '([^?]*?)');
- return new RegExp('^' + route + '(?:\\?([\\s\\S]*))?$');
- },
-
- // Given a route, and a URL fragment that it matches, return the array of
- // extracted decoded parameters. Empty or unmatched parameters will be
- // treated as `null` to normalize cross-browser behavior.
- _extractParameters: function(route, fragment) {
- var params = route.exec(fragment).slice(1);
- return _.map(params, function(param, i) {
- // Don't decode the search params.
- if (i === params.length - 1) return param || null;
- return param ? decodeURIComponent(param) : null;
- });
- }
-
- });
-
- // Backbone.History
- // ----------------
-
- // Handles cross-browser history management, based on either
- // [pushState](http://diveintohtml5.info/history.html) and real URLs, or
- // [onhashchange](https://developer.mozilla.org/en-US/docs/DOM/window.onhashchange)
- // and URL fragments. If the browser supports neither (old IE, natch),
- // falls back to polling.
- var History = Backbone.History = function() {
- this.handlers = [];
- this.checkUrl = this.checkUrl.bind(this);
-
- // Ensure that `History` can be used outside of the browser.
- if (typeof window !== 'undefined') {
- this.location = window.location;
- this.history = window.history;
- }
- };
-
- // Cached regex for stripping a leading hash/slash and trailing space.
- var routeStripper = /^[#\/]|\s+$/g;
-
- // Cached regex for stripping leading and trailing slashes.
- var rootStripper = /^\/+|\/+$/g;
-
- // Cached regex for stripping urls of hash.
- var pathStripper = /#.*$/;
-
- // Has the history handling already been started?
- History.started = false;
-
- // Set up all inheritable **Backbone.History** properties and methods.
- _.extend(History.prototype, Events, {
-
- // The default interval to poll for hash changes, if necessary, is
- // twenty times a second.
- interval: 50,
-
- // Are we at the app root?
- atRoot: function() {
- var path = this.location.pathname.replace(/[^\/]$/, '$&/');
- return path === this.root && !this.getSearch();
- },
-
- // Does the pathname match the root?
- matchRoot: function() {
- var path = this.decodeFragment(this.location.pathname);
- var rootPath = path.slice(0, this.root.length - 1) + '/';
- return rootPath === this.root;
- },
-
- // Unicode characters in `location.pathname` are percent encoded so they're
- // decoded for comparison. `%25` should not be decoded since it may be part
- // of an encoded parameter.
- decodeFragment: function(fragment) {
- return decodeURI(fragment.replace(/%25/g, '%2525'));
- },
-
- // In IE6, the hash fragment and search params are incorrect if the
- // fragment contains `?`.
- getSearch: function() {
- var match = this.location.href.replace(/#.*/, '').match(/\?.+/);
- return match ? match[0] : '';
- },
-
- // Gets the true hash value. Cannot use location.hash directly due to bug
- // in Firefox where location.hash will always be decoded.
- getHash: function(window) {
- var match = (window || this).location.href.match(/#(.*)$/);
- return match ? match[1] : '';
- },
-
- // Get the pathname and search params, without the root.
- getPath: function() {
- var path = this.decodeFragment(
- this.location.pathname + this.getSearch()
- ).slice(this.root.length - 1);
- return path.charAt(0) === '/' ? path.slice(1) : path;
- },
-
- // Get the cross-browser normalized URL fragment from the path or hash.
- getFragment: function(fragment) {
- if (fragment == null) {
- if (this._usePushState || !this._wantsHashChange) {
- fragment = this.getPath();
- } else {
- fragment = this.getHash();
- }
- }
- return fragment.replace(routeStripper, '');
- },
-
- // Start the hash change handling, returning `true` if the current URL matches
- // an existing route, and `false` otherwise.
- start: function(options) {
- if (History.started) throw new Error('Backbone.history has already been started');
- History.started = true;
-
- // Figure out the initial configuration. Do we need an iframe?
- // Is pushState desired ... is it available?
- this.options = _.extend({root: '/'}, this.options, options);
- this.root = this.options.root;
- this._trailingSlash = this.options.trailingSlash;
- this._wantsHashChange = this.options.hashChange !== false;
- this._hasHashChange = 'onhashchange' in window && (document.documentMode === void 0 || document.documentMode > 7);
- this._useHashChange = this._wantsHashChange && this._hasHashChange;
- this._wantsPushState = !!this.options.pushState;
- this._hasPushState = !!(this.history && this.history.pushState);
- this._usePushState = this._wantsPushState && this._hasPushState;
- this.fragment = this.getFragment();
-
- // Normalize root to always include a leading and trailing slash.
- this.root = ('/' + this.root + '/').replace(rootStripper, '/');
-
- // Transition from hashChange to pushState or vice versa if both are
- // requested.
- if (this._wantsHashChange && this._wantsPushState) {
-
- // If we've started off with a route from a `pushState`-enabled
- // browser, but we're currently in a browser that doesn't support it...
- if (!this._hasPushState && !this.atRoot()) {
- var rootPath = this.root.slice(0, -1) || '/';
- this.location.replace(rootPath + '#' + this.getPath());
- // Return immediately as browser will do redirect to new url
- return true;
-
- // Or if we've started out with a hash-based route, but we're currently
- // in a browser where it could be `pushState`-based instead...
- } else if (this._hasPushState && this.atRoot()) {
- this.navigate(this.getHash(), {replace: true});
- }
-
- }
-
- // Proxy an iframe to handle location events if the browser doesn't
- // support the `hashchange` event, HTML5 history, or the user wants
- // `hashChange` but not `pushState`.
- if (!this._hasHashChange && this._wantsHashChange && !this._usePushState) {
- this.iframe = document.createElement('iframe');
- this.iframe.src = 'javascript:0';
- this.iframe.style.display = 'none';
- this.iframe.tabIndex = -1;
- var body = document.body;
- // Using `appendChild` will throw on IE < 9 if the document is not ready.
- var iWindow = body.insertBefore(this.iframe, body.firstChild).contentWindow;
- iWindow.document.open();
- iWindow.document.close();
- iWindow.location.hash = '#' + this.fragment;
- }
-
- // Add a cross-platform `addEventListener` shim for older browsers.
- var addEventListener = window.addEventListener || function(eventName, listener) {
- return attachEvent('on' + eventName, listener);
- };
-
- // Depending on whether we're using pushState or hashes, and whether
- // 'onhashchange' is supported, determine how we check the URL state.
- if (this._usePushState) {
- addEventListener('popstate', this.checkUrl, false);
- } else if (this._useHashChange && !this.iframe) {
- addEventListener('hashchange', this.checkUrl, false);
- } else if (this._wantsHashChange) {
- this._checkUrlInterval = setInterval(this.checkUrl, this.interval);
- }
-
- if (!this.options.silent) return this.loadUrl();
- },
-
- // Disable Backbone.history, perhaps temporarily. Not useful in a real app,
- // but possibly useful for unit testing Routers.
- stop: function() {
- // Add a cross-platform `removeEventListener` shim for older browsers.
- var removeEventListener = window.removeEventListener || function(eventName, listener) {
- return detachEvent('on' + eventName, listener);
- };
-
- // Remove window listeners.
- if (this._usePushState) {
- removeEventListener('popstate', this.checkUrl, false);
- } else if (this._useHashChange && !this.iframe) {
- removeEventListener('hashchange', this.checkUrl, false);
- }
-
- // Clean up the iframe if necessary.
- if (this.iframe) {
- document.body.removeChild(this.iframe);
- this.iframe = null;
- }
-
- // Some environments will throw when clearing an undefined interval.
- if (this._checkUrlInterval) clearInterval(this._checkUrlInterval);
- History.started = false;
- },
-
- // Add a route to be tested when the fragment changes. Routes added later
- // may override previous routes.
- route: function(route, callback) {
- this.handlers.unshift({route: route, callback: callback});
- },
-
- // Checks the current URL to see if it has changed, and if it has,
- // calls `loadUrl`, normalizing across the hidden iframe.
- checkUrl: function(e) {
- var current = this.getFragment();
-
- // If the user pressed the back button, the iframe's hash will have
- // changed and we should use that for comparison.
- if (current === this.fragment && this.iframe) {
- current = this.getHash(this.iframe.contentWindow);
- }
-
- if (current === this.fragment) return false;
- if (this.iframe) this.navigate(current);
- this.loadUrl();
- },
-
- // Attempt to load the current URL fragment. If a route succeeds with a
- // match, returns `true`. If no defined routes matches the fragment,
- // returns `false`.
- loadUrl: function(fragment) {
- // If the root doesn't match, no routes can match either.
- if (!this.matchRoot()) return false;
- fragment = this.fragment = this.getFragment(fragment);
- return _.some(this.handlers, function(handler) {
- if (handler.route.test(fragment)) {
- handler.callback(fragment);
- return true;
- }
- });
- },
-
- // Save a fragment into the hash history, or replace the URL state if the
- // 'replace' option is passed. You are responsible for properly URL-encoding
- // the fragment in advance.
- //
- // The options object can contain `trigger: true` if you wish to have the
- // route callback be fired (not usually desirable), or `replace: true`, if
- // you wish to modify the current URL without adding an entry to the history.
- navigate: function(fragment, options) {
- if (!History.started) return false;
- if (!options || options === true) options = {trigger: !!options};
-
- // Normalize the fragment.
- fragment = this.getFragment(fragment || '');
-
- // Strip trailing slash on the root unless _trailingSlash is true
- var rootPath = this.root;
- if (!this._trailingSlash && (fragment === '' || fragment.charAt(0) === '?')) {
- rootPath = rootPath.slice(0, -1) || '/';
- }
- var url = rootPath + fragment;
-
- // Strip the fragment of the query and hash for matching.
- fragment = fragment.replace(pathStripper, '');
-
- // Decode for matching.
- var decodedFragment = this.decodeFragment(fragment);
-
- if (this.fragment === decodedFragment) return;
- this.fragment = decodedFragment;
-
- // If pushState is available, we use it to set the fragment as a real URL.
- if (this._usePushState) {
- this.history[options.replace ? 'replaceState' : 'pushState']({}, document.title, url);
-
- // If hash changes haven't been explicitly disabled, update the hash
- // fragment to store history.
- } else if (this._wantsHashChange) {
- this._updateHash(this.location, fragment, options.replace);
- if (this.iframe && fragment !== this.getHash(this.iframe.contentWindow)) {
- var iWindow = this.iframe.contentWindow;
-
- // Opening and closing the iframe tricks IE7 and earlier to push a
- // history entry on hash-tag change. When replace is true, we don't
- // want this.
- if (!options.replace) {
- iWindow.document.open();
- iWindow.document.close();
- }
-
- this._updateHash(iWindow.location, fragment, options.replace);
- }
-
- // If you've told us that you explicitly don't want fallback hashchange-
- // based history, then `navigate` becomes a page refresh.
- } else {
- return this.location.assign(url);
- }
- if (options.trigger) return this.loadUrl(fragment);
- },
-
- // Update the hash location, either replacing the current entry, or adding
- // a new one to the browser history.
- _updateHash: function(location, fragment, replace) {
- if (replace) {
- var href = location.href.replace(/(javascript:|#).*$/, '');
- location.replace(href + '#' + fragment);
- } else {
- // Some browsers require that `hash` contains a leading #.
- location.hash = '#' + fragment;
- }
- }
-
- });
-
- // Create the default Backbone.history.
- Backbone.history = new History;
-
- // Helpers
- // -------
-
- // Helper function to correctly set up the prototype chain for subclasses.
- // Similar to `goog.inherits`, but uses a hash of prototype properties and
- // class properties to be extended.
- var extend = function(protoProps, staticProps) {
- var parent = this;
- var child;
-
- // The constructor function for the new subclass is either defined by you
- // (the "constructor" property in your `extend` definition), or defaulted
- // by us to simply call the parent constructor.
- if (protoProps && _.has(protoProps, 'constructor')) {
- child = protoProps.constructor;
- } else {
- child = function(){ return parent.apply(this, arguments); };
- }
-
- // Add static properties to the constructor function, if supplied.
- _.extend(child, parent, staticProps);
-
- // Set the prototype chain to inherit from `parent`, without calling
- // `parent`'s constructor function and add the prototype properties.
- child.prototype = _.create(parent.prototype, protoProps);
- child.prototype.constructor = child;
-
- // Set a convenience property in case the parent's prototype is needed
- // later.
- child.__super__ = parent.prototype;
-
- return child;
- };
-
- // Set up inheritance for the model, collection, router, view and history.
- Model.extend = Collection.extend = Router.extend = View.extend = History.extend = extend;
-
- // Throw an error when a URL is needed, and none is supplied.
- var urlError = function() {
- throw new Error('A "url" property or function must be specified');
- };
-
- // Wrap an optional error callback with a fallback error event.
- var wrapError = function(model, options) {
- var error = options.error;
- options.error = function(resp) {
- if (error) error.call(options.context, model, resp, options);
- model.trigger('error', model, resp, options);
- };
- };
-
- return Backbone;
-});
-
-
-/***/ }),
-
-/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/LoginButton.vue?vue&type=style&index=0&id=2b0f9fce&lang=scss&scoped=true&":
-/*!**************************************************************************************************************************************************************************************************************************************************************************************************************!*\
- !*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/LoginButton.vue?vue&type=style&index=0&id=2b0f9fce&lang=scss&scoped=true& ***!
- \**************************************************************************************************************************************************************************************************************************************************************************************************************/
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* 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, ".button-vue[data-v-2b0f9fce] {\n margin-top: 0.5rem;\n}", ""]);
-// Exports
-/* harmony default export */ __webpack_exports__["default"] = (___CSS_LOADER_EXPORT___);
-
-
-/***/ }),
-
-/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/LoginForm.vue?vue&type=style&index=0&id=722a846b&lang=scss&scoped=true&":
-/*!************************************************************************************************************************************************************************************************************************************************************************************************************!*\
- !*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/LoginForm.vue?vue&type=style&index=0&id=722a846b&lang=scss&scoped=true& ***!
- \************************************************************************************************************************************************************************************************************************************************************************************************************/
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* 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, ".login-form[data-v-722a846b] {\n text-align: left;\n font-size: 1rem;\n}\n.login-form__fieldset[data-v-722a846b] {\n width: 100%;\n display: flex;\n flex-direction: column;\n gap: 0.5rem;\n}\n.login-form__headline[data-v-722a846b] {\n text-align: center;\n overflow-wrap: anywhere;\n}", ""]);
-// Exports
-/* harmony default export */ __webpack_exports__["default"] = (___CSS_LOADER_EXPORT___);
-
-
-/***/ }),
-
-/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/PasswordLessLoginForm.vue?vue&type=style&index=0&id=34bf48f7&lang=scss&scoped=true&":
-/*!************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
- !*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/PasswordLessLoginForm.vue?vue&type=style&index=0&id=34bf48f7&lang=scss&scoped=true& ***!
- \************************************************************************************************************************************************************************************************************************************************************************************************************************/
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* 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, "fieldset[data-v-34bf48f7] {\n display: flex;\n flex-direction: column;\n gap: 0.5rem;\n}\nfieldset[data-v-34bf48f7] label {\n text-align: initial;\n}\n.update[data-v-34bf48f7] {\n margin: 0 auto;\n}", ""]);
-// Exports
-/* harmony default export */ __webpack_exports__["default"] = (___CSS_LOADER_EXPORT___);
-
-
-/***/ }),
-
-/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/ResetPassword.vue?vue&type=style&index=0&id=a10057b0&lang=scss&scoped=true&":
-/*!****************************************************************************************************************************************************************************************************************************************************************************************************************!*\
- !*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/ResetPassword.vue?vue&type=style&index=0&id=a10057b0&lang=scss&scoped=true& ***!
- \****************************************************************************************************************************************************************************************************************************************************************************************************************/
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* 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, ".login-form[data-v-a10057b0] {\n text-align: left;\n font-size: 1rem;\n}\n.login-form__fieldset[data-v-a10057b0] {\n width: 100%;\n display: flex;\n flex-direction: column;\n gap: 0.5rem;\n}\n.login-form__link[data-v-a10057b0] {\n display: block;\n font-weight: normal !important;\n padding-bottom: 1rem;\n cursor: pointer;\n font-size: var(--default-font-size);\n text-align: center;\n padding: 0.5rem 1rem 1rem 1rem;\n}", ""]);
-// Exports
-/* harmony default export */ __webpack_exports__["default"] = (___CSS_LOADER_EXPORT___);
-
-
-/***/ }),
-
-/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/views/Login.vue?vue&type=style&index=0&id=020fd45b&lang=scss&":
-/*!*********************************************************************************************************************************************************************************************************************************************************************************!*\
- !*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/views/Login.vue?vue&type=style&index=0&id=020fd45b&lang=scss& ***!
- \*********************************************************************************************************************************************************************************************************************************************************************************/
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* 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, "body {\n font-size: var(--default-font-size);\n}\n.login-box {\n width: 320px;\n box-sizing: border-box;\n}\n.login-box__link {\n display: block;\n padding: 1rem;\n font-size: var(--default-font-size);\n text-align: center;\n font-weight: normal !important;\n}\n.login-box.guest-box, footer {\n color: var(--color-main-text);\n background-color: var(--color-main-background-blur);\n -webkit-backdrop-filter: var(--filter-background-blur);\n backdrop-filter: var(--filter-background-blur);\n}\nfooter {\n min-width: 320px;\n box-sizing: border-box;\n box-shadow: 0 0 10px var(--color-box-shadow);\n border-radius: var(--border-radius-pill);\n padding: 6px 24px;\n margin-bottom: 1rem;\n min-height: unset;\n}\nfooter p.info {\n margin: auto 0px;\n}\n.fade-enter-active, .fade-leave-active {\n transition: opacity 0.3s;\n}\n.fade-enter, .fade-leave-to {\n opacity: 0;\n}\n.alternative-logins {\n display: flex;\n flex-direction: column;\n gap: 0.75rem;\n}\n.alternative-logins .button-vue {\n box-sizing: border-box;\n}\n.login-passwordless .button-vue {\n margin-top: 0.5rem;\n}", ""]);
-// Exports
-/* harmony default export */ __webpack_exports__["default"] = (___CSS_LOADER_EXPORT___);
-
-
-/***/ }),
-
-/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/UpdatePassword.vue?vue&type=style&index=0&id=66634656&scoped=true&lang=css&":
-/*!*************************************************************************************************************************************************************************************************************************************************************************!*\
- !*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/UpdatePassword.vue?vue&type=style&index=0&id=66634656&scoped=true&lang=css& ***!
- \*************************************************************************************************************************************************************************************************************************************************************************/
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* 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, "\nfieldset[data-v-66634656] {\n\ttext-align: center;\n}\ninput[type=submit][data-v-66634656] {\n\tmargin-top: 20px;\n}\n", ""]);
-// Exports
-/* harmony default export */ __webpack_exports__["default"] = (___CSS_LOADER_EXPORT___);
-
-
-/***/ }),
-
-/***/ "./node_modules/davclient.js/lib/client.js":
-/*!*************************************************!*\
- !*** ./node_modules/davclient.js/lib/client.js ***!
- \*************************************************/
-/***/ (function(module) {
-
-/*
- * vim: expandtab shiftwidth=4 softtabstop=4
- */
-
-/* global dav */
-if (typeof dav === 'undefined') {
- dav = {};
-}
-;
-dav._XML_CHAR_MAP = {
- '<': '&lt;',
- '>': '&gt;',
- '&': '&amp;',
- '"': '&quot;',
- "'": '&apos;'
-};
-dav._escapeXml = function (s) {
- return s.replace(/[<>&"']/g, function (ch) {
- return dav._XML_CHAR_MAP[ch];
- });
-};
-dav.Client = function (options) {
- var i;
- for (i in options) {
- this[i] = options[i];
- }
-};
-dav.Client.prototype = {
- baseUrl: null,
- userName: null,
- password: null,
- xmlNamespaces: {
- 'DAV:': 'd'
- },
- /**
- * Generates a propFind request.
- *
- * @param {string} url Url to do the propfind request on
- * @param {Array} properties List of properties to retrieve.
- * @param {string} depth "0", "1" or "infinity"
- * @param {Object} [headers] headers
- * @return {Promise}
- */
- propFind: function propFind(url, properties, depth, headers) {
- if (typeof depth === "undefined") {
- depth = '0';
- }
-
- // depth header must be a string, in case a number was passed in
- depth = '' + depth;
- headers = headers || {};
- headers['Depth'] = depth;
- headers['Content-Type'] = 'application/xml; charset=utf-8';
- var body = '<?xml version="1.0"?>\n' + '<d:propfind ';
- var namespace;
- for (namespace in this.xmlNamespaces) {
- body += ' xmlns:' + this.xmlNamespaces[namespace] + '="' + namespace + '"';
- }
- body += '>\n' + ' <d:prop>\n';
- for (var ii in properties) {
- if (!properties.hasOwnProperty(ii)) {
- continue;
- }
- var property = this.parseClarkNotation(properties[ii]);
- if (this.xmlNamespaces[property.namespace]) {
- body += ' <' + this.xmlNamespaces[property.namespace] + ':' + property.name + ' />\n';
- } else {
- body += ' <x:' + property.name + ' xmlns:x="' + property.namespace + '" />\n';
- }
- }
- body += ' </d:prop>\n';
- body += '</d:propfind>';
- return this.request('PROPFIND', url, headers, body).then(function (result) {
- if (depth === '0') {
- return {
- status: result.status,
- body: result.body[0],
- xhr: result.xhr
- };
- } else {
- return {
- status: result.status,
- body: result.body,
- xhr: result.xhr
- };
- }
- }.bind(this));
- },
- /**
- * Renders a "d:set" block for the given properties.
- *
- * @param {Object.<String,String>} properties
- * @return {String} XML "<d:set>" block
- */
- _renderPropSet: function _renderPropSet(properties) {
- var body = ' <d:set>\n' + ' <d:prop>\n';
- for (var ii in properties) {
- if (!properties.hasOwnProperty(ii)) {
- continue;
- }
- var property = this.parseClarkNotation(ii);
- var propName;
- var propValue = properties[ii];
- if (this.xmlNamespaces[property.namespace]) {
- propName = this.xmlNamespaces[property.namespace] + ':' + property.name;
- } else {
- propName = 'x:' + property.name + ' xmlns:x="' + property.namespace + '"';
- }
-
- // FIXME: hard-coded for now until we allow properties to
- // specify whether to be escaped or not
- if (propName !== 'd:resourcetype') {
- propValue = dav._escapeXml(propValue);
- }
- body += ' <' + propName + '>' + propValue + '</' + propName + '>\n';
- }
- body += ' </d:prop>\n';
- body += ' </d:set>\n';
- return body;
- },
- /**
- * Generates a propPatch request.
- *
- * @param {string} url Url to do the proppatch request on
- * @param {Object.<String,String>} properties List of properties to store.
- * @param {Object} [headers] headers
- * @return {Promise}
- */
- propPatch: function propPatch(url, properties, headers) {
- headers = headers || {};
- headers['Content-Type'] = 'application/xml; charset=utf-8';
- var body = '<?xml version="1.0"?>\n' + '<d:propertyupdate ';
- var namespace;
- for (namespace in this.xmlNamespaces) {
- body += ' xmlns:' + this.xmlNamespaces[namespace] + '="' + namespace + '"';
- }
- body += '>\n' + this._renderPropSet(properties);
- body += '</d:propertyupdate>';
- return this.request('PROPPATCH', url, headers, body).then(function (result) {
- return {
- status: result.status,
- body: result.body,
- xhr: result.xhr
- };
- }.bind(this));
- },
- /**
- * Generates a MKCOL request.
- * If attributes are given, it will use an extended MKCOL request.
- *
- * @param {string} url Url to do the proppatch request on
- * @param {Object.<String,String>} [properties] list of properties to store.
- * @param {Object} [headers] headers
- * @return {Promise}
- */
- mkcol: function mkcol(url, properties, headers) {
- var body = '';
- headers = headers || {};
- headers['Content-Type'] = 'application/xml; charset=utf-8';
- if (properties) {
- body = '<?xml version="1.0"?>\n' + '<d:mkcol';
- var namespace;
- for (namespace in this.xmlNamespaces) {
- body += ' xmlns:' + this.xmlNamespaces[namespace] + '="' + namespace + '"';
- }
- body += '>\n' + this._renderPropSet(properties);
- body += '</d:mkcol>';
- }
- return this.request('MKCOL', url, headers, body).then(function (result) {
- return {
- status: result.status,
- body: result.body,
- xhr: result.xhr
- };
- }.bind(this));
- },
- /**
- * Performs a HTTP request, and returns a Promise
- *
- * @param {string} method HTTP method
- * @param {string} url Relative or absolute url
- * @param {Object} headers HTTP headers as an object.
- * @param {string} body HTTP request body.
- * @param {string} responseType HTTP request response type.
- * @param {Object} options
- * @param {Function} options.onProgress progress callback
- * @return {Promise}
- */
- request: function request(method, url, headers, body, responseType, options) {
- var self = this;
- var xhr = this.xhrProvider();
- headers = headers || {};
- responseType = responseType || "";
- if (this.userName) {
- headers['Authorization'] = 'Basic ' + btoa(this.userName + ':' + this.password);
- // xhr.open(method, this.resolveUrl(url), true, this.userName, this.password);
- }
-
- xhr.open(method, this.resolveUrl(url), true);
- var ii;
- for (ii in headers) {
- xhr.setRequestHeader(ii, headers[ii]);
- }
- xhr.responseType = responseType;
- if (options && typeof options.onProgress === 'function') {
- if (method === 'PUT' || method === 'POST') {
- xhr.upload.addEventListener('progress', function (e) {
- options.onProgress(e);
- }, false);
- } else {
- xhr.addEventListener('progress', function (e) {
- options.onProgress(e);
- }, false);
- }
- }
-
- // Work around for edge
- if (body === undefined) {
- xhr.send();
- } else {
- xhr.send(body);
- }
- return new Promise(function (fulfill, reject) {
- xhr.onreadystatechange = function () {
- if (xhr.readyState !== 4) {
- return;
- }
- var resultBody = xhr.response;
- if (xhr.status === 207) {
- resultBody = self.parseMultiStatus(xhr.response);
- }
- fulfill({
- body: resultBody,
- status: xhr.status,
- xhr: xhr
- });
- };
- xhr.ontimeout = function () {
- reject(new Error('Timeout exceeded'));
- };
- });
- },
- /**
- * Returns an XMLHttpRequest object.
- *
- * This is in its own method, so it can be easily overridden.
- *
- * @return {XMLHttpRequest}
- */
- xhrProvider: function xhrProvider() {
- return new XMLHttpRequest();
- },
- /**
- * Parses a property node.
- *
- * Either returns a string if the node only contains text, or returns an
- * array of non-text subnodes.
- *
- * @param {Object} propNode node to parse
- * @return {string|Array} text content as string or array of subnodes, excluding text nodes
- */
- _parsePropNode: function _parsePropNode(propNode) {
- var content = null;
- if (propNode.childNodes && propNode.childNodes.length > 0) {
- var subNodes = [];
- // filter out text nodes
- for (var j = 0; j < propNode.childNodes.length; j++) {
- var node = propNode.childNodes[j];
- if (node.nodeType === 1) {
- subNodes.push(node);
- }
- }
- if (subNodes.length) {
- content = subNodes;
- }
- }
- return content || propNode.textContent || propNode.text || '';
- },
- /**
- * Parses a multi-status response body.
- *
- * @param {string} xmlBody
- * @param {Array}
- */
- parseMultiStatus: function parseMultiStatus(xmlBody) {
- var parser = new DOMParser();
- var doc = parser.parseFromString(xmlBody, "application/xml");
- var resolver = function (foo) {
- var ii;
- for (ii in this.xmlNamespaces) {
- if (this.xmlNamespaces[ii] === foo) {
- return ii;
- }
- }
- }.bind(this);
- var responseIterator = doc.evaluate('/d:multistatus/d:response', doc, resolver, XPathResult.ANY_TYPE, null);
- var result = [];
- var responseNode = responseIterator.iterateNext();
- while (responseNode) {
- var response = {
- href: null,
- propStat: []
- };
- response.href = doc.evaluate('string(d:href)', responseNode, resolver, XPathResult.ANY_TYPE, null).stringValue;
- var propStatIterator = doc.evaluate('d:propstat', responseNode, resolver, XPathResult.ANY_TYPE, null);
- var propStatNode = propStatIterator.iterateNext();
- while (propStatNode) {
- var propStat = {
- status: doc.evaluate('string(d:status)', propStatNode, resolver, XPathResult.ANY_TYPE, null).stringValue,
- properties: {}
- };
- var propIterator = doc.evaluate('d:prop/*', propStatNode, resolver, XPathResult.ANY_TYPE, null);
- var propNode = propIterator.iterateNext();
- while (propNode) {
- var content = this._parsePropNode(propNode);
- propStat.properties['{' + propNode.namespaceURI + '}' + propNode.localName] = content;
- propNode = propIterator.iterateNext();
- }
- response.propStat.push(propStat);
- propStatNode = propStatIterator.iterateNext();
- }
- result.push(response);
- responseNode = responseIterator.iterateNext();
- }
- return result;
- },
- /**
- * Takes a relative url, and maps it to an absolute url, using the baseUrl
- *
- * @param {string} url
- * @return {string}
- */
- resolveUrl: function resolveUrl(url) {
- // Note: this is rudamentary.. not sure yet if it handles every case.
- if (/^https?:\/\//i.test(url)) {
- // absolute
- return url;
- }
- var baseParts = this.parseUrl(this.baseUrl);
- if (url.charAt('/')) {
- // Url starts with a slash
- return baseParts.root + url;
- }
-
- // Url does not start with a slash, we need grab the base url right up until the last slash.
- var newUrl = baseParts.root + '/';
- if (baseParts.path.lastIndexOf('/') !== -1) {
- newUrl = newUrl = baseParts.path.subString(0, baseParts.path.lastIndexOf('/')) + '/';
- }
- newUrl += url;
- return url;
- },
- /**
- * Parses a url and returns its individual components.
- *
- * @param {String} url
- * @return {Object}
- */
- parseUrl: function parseUrl(url) {
- var parts = url.match(/^(?:([A-Za-z]+):)?(\/{0,3})([0-9.\-A-Za-z]+)(?::(\d+))?(?:\/([^?#]*))?(?:\?([^#]*))?(?:#(.*))?$/);
- var result = {
- url: parts[0],
- scheme: parts[1],
- host: parts[3],
- port: parts[4],
- path: parts[5],
- query: parts[6],
- fragment: parts[7]
- };
- result.root = result.scheme + '://' + result.host + (result.port ? ':' + result.port : '');
- return result;
- },
- parseClarkNotation: function parseClarkNotation(propertyName) {
- var result = propertyName.match(/^{([^}]+)}(.*)$/);
- if (!result) {
- return;
- }
- return {
- name: result[2],
- namespace: result[1]
- };
- }
-};
-if ( true && typeof module.exports !== 'undefined') {
- module.exports.Client = dav.Client;
-}
-/*** EXPORTS FROM exports-loader ***/
-module.exports = {
- dav
-};
-
-
-/***/ }),
-
-/***/ "./core/src/OC/contactsmenu/contact.handlebars":
-/*!*****************************************************!*\
- !*** ./core/src/OC/contactsmenu/contact.handlebars ***!
- \*****************************************************/
-/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
-
-var Handlebars = __webpack_require__(/*! ../../../../node_modules/handlebars/runtime.js */ "./node_modules/handlebars/runtime.js");
-function __default(obj) { return obj && (obj.__esModule ? obj["default"] : obj); }
-module.exports = (Handlebars["default"] || Handlebars).template({"1":function(container,depth0,helpers,partials,data) {
- var stack1, lookupProperty = container.lookupProperty || function(parent, propertyName) {
- if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
- return parent[propertyName];
- }
- return undefined
- };
-
- return ((stack1 = lookupProperty(helpers,"if").call(depth0 != null ? depth0 : (container.nullContext || {}),((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"profileUrl") : stack1),{"name":"if","hash":{},"fn":container.program(2, data, 0),"inverse":container.program(5, data, 0),"data":data,"loc":{"start":{"line":2,"column":1},"end":{"line":10,"column":8}}})) != null ? stack1 : "");
-},"2":function(container,depth0,helpers,partials,data) {
- var stack1, lookupProperty = container.lookupProperty || function(parent, propertyName) {
- if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
- return parent[propertyName];
- }
- return undefined
- };
-
- return ((stack1 = lookupProperty(helpers,"if").call(depth0 != null ? depth0 : (container.nullContext || {}),((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"profileTitle") : stack1),{"name":"if","hash":{},"fn":container.program(3, data, 0),"inverse":container.noop,"data":data,"loc":{"start":{"line":3,"column":2},"end":{"line":7,"column":9}}})) != null ? stack1 : "");
-},"3":function(container,depth0,helpers,partials,data) {
- var stack1, alias1=container.lambda, alias2=container.escapeExpression, lookupProperty = container.lookupProperty || function(parent, propertyName) {
- if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
- return parent[propertyName];
- }
- return undefined
- };
-
- return " <a class=\"profile-link--avatar\" href=\""
- + alias2(alias1(((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"profileUrl") : stack1), depth0))
- + "\">\n <img src=\""
- + alias2(alias1(((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"avatar") : stack1), depth0))
- + "&size=32\" class=\"avatar\" srcset=\""
- + alias2(alias1(((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"avatar") : stack1), depth0))
- + "&size=32 1x, "
- + alias2(alias1(((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"avatar") : stack1), depth0))
- + "&size=64 2x, "
- + alias2(alias1(((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"avatar") : stack1), depth0))
- + "&size=128 4x\" alt=\""
- + alias2(alias1(((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"avatarLabel") : stack1), depth0))
- + "\">\n </a>\n";
-},"5":function(container,depth0,helpers,partials,data) {
- var stack1, alias1=container.lambda, alias2=container.escapeExpression, lookupProperty = container.lookupProperty || function(parent, propertyName) {
- if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
- return parent[propertyName];
- }
- return undefined
- };
-
- return " <img src=\""
- + alias2(alias1(((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"avatar") : stack1), depth0))
- + "&size=32\" class=\"avatar\" srcset=\""
- + alias2(alias1(((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"avatar") : stack1), depth0))
- + "&size=32 1x, "
- + alias2(alias1(((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"avatar") : stack1), depth0))
- + "&size=64 2x, "
- + alias2(alias1(((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"avatar") : stack1), depth0))
- + "&size=128 4x\" alt=\""
- + alias2(alias1(((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"avatarLabel") : stack1), depth0))
- + "\">\n";
-},"7":function(container,depth0,helpers,partials,data) {
- var stack1, lookupProperty = container.lookupProperty || function(parent, propertyName) {
- if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
- return parent[propertyName];
- }
- return undefined
- };
-
- return ((stack1 = lookupProperty(helpers,"if").call(depth0 != null ? depth0 : (container.nullContext || {}),((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"profileUrl") : stack1),{"name":"if","hash":{},"fn":container.program(8, data, 0),"inverse":container.program(11, data, 0),"data":data,"loc":{"start":{"line":12,"column":1},"end":{"line":20,"column":8}}})) != null ? stack1 : "");
-},"8":function(container,depth0,helpers,partials,data) {
- var stack1, lookupProperty = container.lookupProperty || function(parent, propertyName) {
- if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
- return parent[propertyName];
- }
- return undefined
- };
-
- return ((stack1 = lookupProperty(helpers,"if").call(depth0 != null ? depth0 : (container.nullContext || {}),((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"profileTitle") : stack1),{"name":"if","hash":{},"fn":container.program(9, data, 0),"inverse":container.noop,"data":data,"loc":{"start":{"line":13,"column":2},"end":{"line":17,"column":9}}})) != null ? stack1 : "");
-},"9":function(container,depth0,helpers,partials,data) {
- var stack1, lookupProperty = container.lookupProperty || function(parent, propertyName) {
- if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
- return parent[propertyName];
- }
- return undefined
- };
-
- return " <a class=\"profile-link--avatar\" href=\""
- + container.escapeExpression(container.lambda(((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"profileUrl") : stack1), depth0))
- + "\">\n <div class=\"avatar\"></div>\n </a>\n";
-},"11":function(container,depth0,helpers,partials,data) {
- return " <div class=\"avatar\"></div>\n";
-},"13":function(container,depth0,helpers,partials,data) {
- var stack1, alias1=depth0 != null ? depth0 : (container.nullContext || {}), lookupProperty = container.lookupProperty || function(parent, propertyName) {
- if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
- return parent[propertyName];
- }
- return undefined
- };
-
- return ((stack1 = lookupProperty(helpers,"if").call(alias1,((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"profileTitle") : stack1),{"name":"if","hash":{},"fn":container.program(14, data, 0),"inverse":container.noop,"data":data,"loc":{"start":{"line":23,"column":1},"end":{"line":29,"column":8}}})) != null ? stack1 : "")
- + ((stack1 = lookupProperty(helpers,"if").call(alias1,((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"topAction") : stack1),{"name":"if","hash":{},"fn":container.program(16, data, 0),"inverse":container.noop,"data":data,"loc":{"start":{"line":30,"column":1},"end":{"line":34,"column":8}}})) != null ? stack1 : "");
-},"14":function(container,depth0,helpers,partials,data) {
- var stack1, alias1=container.lambda, alias2=container.escapeExpression, lookupProperty = container.lookupProperty || function(parent, propertyName) {
- if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
- return parent[propertyName];
- }
- return undefined
- };
-
- return " <a class=\"body profile-link--full-name\" href=\""
- + alias2(alias1(((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"profileUrl") : stack1), depth0))
- + "\">\n <div class=\"full-name\">"
- + alias2(alias1(((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"fullName") : stack1), depth0))
- + "</div>\n <div class=\"last-message\">"
- + alias2(alias1(((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"lastMessage") : stack1), depth0))
- + "</div>\n <div class=\"email-address\">"
- + alias2(alias1(((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"emailAddresses") : stack1), depth0))
- + "</div>\n </a>\n";
-},"16":function(container,depth0,helpers,partials,data) {
- var stack1, alias1=container.lambda, alias2=container.escapeExpression, lookupProperty = container.lookupProperty || function(parent, propertyName) {
- if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
- return parent[propertyName];
- }
- return undefined
- };
-
- return " <a class=\"top-action\" href=\""
- + alias2(alias1(((stack1 = ((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"topAction") : stack1)) != null ? lookupProperty(stack1,"hyperlink") : stack1), depth0))
- + "\" title=\""
- + alias2(alias1(((stack1 = ((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"topAction") : stack1)) != null ? lookupProperty(stack1,"title") : stack1), depth0))
- + "\" aria-label=\""
- + alias2(alias1(((stack1 = ((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"topAction") : stack1)) != null ? lookupProperty(stack1,"title") : stack1), depth0))
- + "\">\n <img src=\""
- + alias2(alias1(((stack1 = ((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"topAction") : stack1)) != null ? lookupProperty(stack1,"icon") : stack1), depth0))
- + "\" alt=\""
- + alias2(alias1(((stack1 = ((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"topAction") : stack1)) != null ? lookupProperty(stack1,"title") : stack1), depth0))
- + "\">\n </a>\n";
-},"18":function(container,depth0,helpers,partials,data) {
- var stack1, lookupProperty = container.lookupProperty || function(parent, propertyName) {
- if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
- return parent[propertyName];
- }
- return undefined
- };
-
- return ((stack1 = lookupProperty(helpers,"if").call(depth0 != null ? depth0 : (container.nullContext || {}),((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"topAction") : stack1),{"name":"if","hash":{},"fn":container.program(19, data, 0),"inverse":container.program(21, data, 0),"data":data,"loc":{"start":{"line":35,"column":0},"end":{"line":50,"column":0}}})) != null ? stack1 : "");
-},"19":function(container,depth0,helpers,partials,data) {
- var stack1, alias1=container.lambda, alias2=container.escapeExpression, lookupProperty = container.lookupProperty || function(parent, propertyName) {
- if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
- return parent[propertyName];
- }
- return undefined
- };
-
- return " <a class=\"body\" href=\""
- + alias2(alias1(((stack1 = ((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"topAction") : stack1)) != null ? lookupProperty(stack1,"hyperlink") : stack1), depth0))
- + "\">\n <div class=\"full-name\">"
- + alias2(alias1(((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"fullName") : stack1), depth0))
- + "</div>\n <div class=\"last-message\">"
- + alias2(alias1(((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"lastMessage") : stack1), depth0))
- + "</div>\n <div class=\"email-address\">"
- + alias2(alias1(((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"emailAddresses") : stack1), depth0))
- + "</div>\n </a>\n <a class=\"top-action\" href=\""
- + alias2(alias1(((stack1 = ((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"topAction") : stack1)) != null ? lookupProperty(stack1,"hyperlink") : stack1), depth0))
- + "\" title=\""
- + alias2(alias1(((stack1 = ((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"topAction") : stack1)) != null ? lookupProperty(stack1,"title") : stack1), depth0))
- + "\">\n <img src=\""
- + alias2(alias1(((stack1 = ((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"topAction") : stack1)) != null ? lookupProperty(stack1,"icon") : stack1), depth0))
- + "\" alt=\""
- + alias2(alias1(((stack1 = ((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"topAction") : stack1)) != null ? lookupProperty(stack1,"title") : stack1), depth0))
- + "\">\n </a>\n";
-},"21":function(container,depth0,helpers,partials,data) {
- var stack1, alias1=container.lambda, alias2=container.escapeExpression, lookupProperty = container.lookupProperty || function(parent, propertyName) {
- if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
- return parent[propertyName];
- }
- return undefined
- };
-
- return " <div class=\"body\">\n <div class=\"full-name\">"
- + alias2(alias1(((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"fullName") : stack1), depth0))
- + "</div>\n <div class=\"last-message\">"
- + alias2(alias1(((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"lastMessage") : stack1), depth0))
- + "</div>\n <div class=\"email-address\">"
- + alias2(alias1(((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"emailAddresses") : stack1), depth0))
- + "</div>\n </div>\n";
-},"23":function(container,depth0,helpers,partials,data) {
- var stack1, alias1=container.lambda, alias2=container.escapeExpression, lookupProperty = container.lookupProperty || function(parent, propertyName) {
- if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
- return parent[propertyName];
- }
- return undefined
- };
-
- return "<a class=\"second-action\" href=\""
- + alias2(alias1(((stack1 = ((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"secondAction") : stack1)) != null ? lookupProperty(stack1,"hyperlink") : stack1), depth0))
- + "\" aria-label=\""
- + alias2(alias1(((stack1 = ((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"secondAction") : stack1)) != null ? lookupProperty(stack1,"title") : stack1), depth0))
- + "\" title=\""
- + alias2(alias1(((stack1 = ((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"secondAction") : stack1)) != null ? lookupProperty(stack1,"title") : stack1), depth0))
- + "\">\n <img src=\""
- + alias2(alias1(((stack1 = ((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"secondAction") : stack1)) != null ? lookupProperty(stack1,"icon") : stack1), depth0))
- + "\" alt=\""
- + alias2(alias1(((stack1 = ((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"secondAction") : stack1)) != null ? lookupProperty(stack1,"title") : stack1), depth0))
- + "\">\n</a>\n";
-},"25":function(container,depth0,helpers,partials,data) {
- var stack1, lookupProperty = container.lookupProperty || function(parent, propertyName) {
- if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
- return parent[propertyName];
- }
- return undefined
- };
-
- return " <button class=\"other-actions icon-more\"></button>\n <div class=\"menu popovermenu\">\n <ul>\n"
- + ((stack1 = lookupProperty(helpers,"each").call(depth0 != null ? depth0 : (container.nullContext || {}),((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"actions") : stack1),{"name":"each","hash":{},"fn":container.program(26, data, 0),"inverse":container.noop,"data":data,"loc":{"start":{"line":60,"column":3},"end":{"line":67,"column":12}}})) != null ? stack1 : "")
- + " </ul>\n </div>\n";
-},"26":function(container,depth0,helpers,partials,data) {
- var helper, alias1=depth0 != null ? depth0 : (container.nullContext || {}), alias2=container.hooks.helperMissing, alias3="function", alias4=container.escapeExpression, lookupProperty = container.lookupProperty || function(parent, propertyName) {
- if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
- return parent[propertyName];
- }
- return undefined
- };
-
- return " <li>\n <a href=\""
- + alias4(((helper = (helper = lookupProperty(helpers,"hyperlink") || (depth0 != null ? lookupProperty(depth0,"hyperlink") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{"name":"hyperlink","hash":{},"data":data,"loc":{"start":{"line":62,"column":13},"end":{"line":62,"column":26}}}) : helper)))
- + "\">\n <img src=\""
- + alias4(((helper = (helper = lookupProperty(helpers,"icon") || (depth0 != null ? lookupProperty(depth0,"icon") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{"name":"icon","hash":{},"data":data,"loc":{"start":{"line":63,"column":15},"end":{"line":63,"column":23}}}) : helper)))
- + "\" alt=\"\">\n <span>"
- + alias4(((helper = (helper = lookupProperty(helpers,"title") || (depth0 != null ? lookupProperty(depth0,"title") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{"name":"title","hash":{},"data":data,"loc":{"start":{"line":64,"column":11},"end":{"line":64,"column":20}}}) : helper)))
- + "</span>\n </a>\n </li>\n";
-},"compiler":[8,">= 4.3.0"],"main":function(container,depth0,helpers,partials,data) {
- var stack1, alias1=depth0 != null ? depth0 : (container.nullContext || {}), lookupProperty = container.lookupProperty || function(parent, propertyName) {
- if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
- return parent[propertyName];
- }
- return undefined
- };
-
- return ((stack1 = lookupProperty(helpers,"if").call(alias1,((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"avatar") : stack1),{"name":"if","hash":{},"fn":container.program(1, data, 0),"inverse":container.program(7, data, 0),"data":data,"loc":{"start":{"line":1,"column":0},"end":{"line":21,"column":7}}})) != null ? stack1 : "")
- + ((stack1 = lookupProperty(helpers,"if").call(alias1,((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"profileUrl") : stack1),{"name":"if","hash":{},"fn":container.program(13, data, 0),"inverse":container.program(18, data, 0),"data":data,"loc":{"start":{"line":22,"column":0},"end":{"line":50,"column":7}}})) != null ? stack1 : "")
- + ((stack1 = lookupProperty(helpers,"if").call(alias1,((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"hasTwoActions") : stack1),{"name":"if","hash":{},"fn":container.program(23, data, 0),"inverse":container.noop,"data":data,"loc":{"start":{"line":51,"column":0},"end":{"line":55,"column":7}}})) != null ? stack1 : "")
- + ((stack1 = lookupProperty(helpers,"if").call(alias1,((stack1 = (depth0 != null ? lookupProperty(depth0,"contact") : depth0)) != null ? lookupProperty(stack1,"hasManyActions") : stack1),{"name":"if","hash":{},"fn":container.program(25, data, 0),"inverse":container.noop,"data":data,"loc":{"start":{"line":56,"column":0},"end":{"line":70,"column":7}}})) != null ? stack1 : "");
-},"useData":true});
-
-/***/ }),
-
-/***/ "./core/src/OC/contactsmenu/error.handlebars":
-/*!***************************************************!*\
- !*** ./core/src/OC/contactsmenu/error.handlebars ***!
- \***************************************************/
-/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
-
-var Handlebars = __webpack_require__(/*! ../../../../node_modules/handlebars/runtime.js */ "./node_modules/handlebars/runtime.js");
-function __default(obj) { return obj && (obj.__esModule ? obj["default"] : obj); }
-module.exports = (Handlebars["default"] || Handlebars).template({"compiler":[8,">= 4.3.0"],"main":function(container,depth0,helpers,partials,data) {
- var helper, lookupProperty = container.lookupProperty || function(parent, propertyName) {
- if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
- return parent[propertyName];
- }
- return undefined
- };
-
- return "<div class=\"emptycontent\">\n <div class=\"icon-search\"></div>\n <h2>"
- + container.escapeExpression(((helper = (helper = lookupProperty(helpers,"couldNotLoadText") || (depth0 != null ? lookupProperty(depth0,"couldNotLoadText") : depth0)) != null ? helper : container.hooks.helperMissing),(typeof helper === "function" ? helper.call(depth0 != null ? depth0 : (container.nullContext || {}),{"name":"couldNotLoadText","hash":{},"data":data,"loc":{"start":{"line":3,"column":5},"end":{"line":3,"column":25}}}) : helper)))
- + "</h2>\n</div>\n";
-},"useData":true});
-
-/***/ }),
-
-/***/ "./core/src/OC/contactsmenu/list.handlebars":
-/*!**************************************************!*\
- !*** ./core/src/OC/contactsmenu/list.handlebars ***!
- \**************************************************/
-/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
-
-var Handlebars = __webpack_require__(/*! ../../../../node_modules/handlebars/runtime.js */ "./node_modules/handlebars/runtime.js");
-function __default(obj) { return obj && (obj.__esModule ? obj["default"] : obj); }
-module.exports = (Handlebars["default"] || Handlebars).template({"1":function(container,depth0,helpers,partials,data) {
- var helper, lookupProperty = container.lookupProperty || function(parent, propertyName) {
- if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
- return parent[propertyName];
- }
- return undefined
- };
-
- return "<div class=\"emptycontent\">\n <div class=\"icon-search\"></div>\n <h2>"
- + container.escapeExpression(((helper = (helper = lookupProperty(helpers,"noContactsFoundText") || (depth0 != null ? lookupProperty(depth0,"noContactsFoundText") : depth0)) != null ? helper : container.hooks.helperMissing),(typeof helper === "function" ? helper.call(depth0 != null ? depth0 : (container.nullContext || {}),{"name":"noContactsFoundText","hash":{},"data":data,"loc":{"start":{"line":4,"column":5},"end":{"line":4,"column":28}}}) : helper)))
- + "</h2>\n</div>\n";
-},"3":function(container,depth0,helpers,partials,data) {
- var helper, alias1=depth0 != null ? depth0 : (container.nullContext || {}), alias2=container.hooks.helperMissing, alias3="function", alias4=container.escapeExpression, lookupProperty = container.lookupProperty || function(parent, propertyName) {
- if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
- return parent[propertyName];
- }
- return undefined
- };
-
- return "<div class=\"footer\"><a href=\""
- + alias4(((helper = (helper = lookupProperty(helpers,"contactsAppURL") || (depth0 != null ? lookupProperty(depth0,"contactsAppURL") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{"name":"contactsAppURL","hash":{},"data":data,"loc":{"start":{"line":9,"column":29},"end":{"line":9,"column":47}}}) : helper)))
- + "\">"
- + alias4(((helper = (helper = lookupProperty(helpers,"showAllContactsText") || (depth0 != null ? lookupProperty(depth0,"showAllContactsText") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{"name":"showAllContactsText","hash":{},"data":data,"loc":{"start":{"line":9,"column":49},"end":{"line":9,"column":72}}}) : helper)))
- + "</a></div>\n";
-},"5":function(container,depth0,helpers,partials,data) {
- var stack1, lookupProperty = container.lookupProperty || function(parent, propertyName) {
- if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
- return parent[propertyName];
- }
- return undefined
- };
-
- return ((stack1 = lookupProperty(helpers,"if").call(depth0 != null ? depth0 : (container.nullContext || {}),(depth0 != null ? lookupProperty(depth0,"canInstallApp") : depth0),{"name":"if","hash":{},"fn":container.program(6, data, 0),"inverse":container.noop,"data":data,"loc":{"start":{"line":10,"column":0},"end":{"line":12,"column":0}}})) != null ? stack1 : "");
-},"6":function(container,depth0,helpers,partials,data) {
- var helper, alias1=depth0 != null ? depth0 : (container.nullContext || {}), alias2=container.hooks.helperMissing, alias3="function", alias4=container.escapeExpression, lookupProperty = container.lookupProperty || function(parent, propertyName) {
- if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
- return parent[propertyName];
- }
- return undefined
- };
-
- return "<div class=\"footer\"><a href=\""
- + alias4(((helper = (helper = lookupProperty(helpers,"contactsAppMgmtURL") || (depth0 != null ? lookupProperty(depth0,"contactsAppMgmtURL") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{"name":"contactsAppMgmtURL","hash":{},"data":data,"loc":{"start":{"line":11,"column":29},"end":{"line":11,"column":51}}}) : helper)))
- + "\">"
- + alias4(((helper = (helper = lookupProperty(helpers,"contactsAppMgmtText") || (depth0 != null ? lookupProperty(depth0,"contactsAppMgmtText") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{"name":"contactsAppMgmtText","hash":{},"data":data,"loc":{"start":{"line":11,"column":53},"end":{"line":11,"column":76}}}) : helper)))
- + "</a></div>\n";
-},"compiler":[8,">= 4.3.0"],"main":function(container,depth0,helpers,partials,data) {
- var stack1, alias1=depth0 != null ? depth0 : (container.nullContext || {}), lookupProperty = container.lookupProperty || function(parent, propertyName) {
- if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
- return parent[propertyName];
- }
- return undefined
- };
-
- return ((stack1 = lookupProperty(helpers,"unless").call(alias1,((stack1 = (depth0 != null ? lookupProperty(depth0,"contacts") : depth0)) != null ? lookupProperty(stack1,"length") : stack1),{"name":"unless","hash":{},"fn":container.program(1, data, 0),"inverse":container.noop,"data":data,"loc":{"start":{"line":1,"column":0},"end":{"line":6,"column":11}}})) != null ? stack1 : "")
- + "<div id=\"contactsmenu-contacts\"></div>\n"
- + ((stack1 = lookupProperty(helpers,"if").call(alias1,(depth0 != null ? lookupProperty(depth0,"contactsAppEnabled") : depth0),{"name":"if","hash":{},"fn":container.program(3, data, 0),"inverse":container.program(5, data, 0),"data":data,"loc":{"start":{"line":8,"column":0},"end":{"line":12,"column":7}}})) != null ? stack1 : "");
-},"useData":true});
-
-/***/ }),
-
-/***/ "./core/src/OC/contactsmenu/loading.handlebars":
-/*!*****************************************************!*\
- !*** ./core/src/OC/contactsmenu/loading.handlebars ***!
- \*****************************************************/
-/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
-
-var Handlebars = __webpack_require__(/*! ../../../../node_modules/handlebars/runtime.js */ "./node_modules/handlebars/runtime.js");
-function __default(obj) { return obj && (obj.__esModule ? obj["default"] : obj); }
-module.exports = (Handlebars["default"] || Handlebars).template({"compiler":[8,">= 4.3.0"],"main":function(container,depth0,helpers,partials,data) {
- var helper, lookupProperty = container.lookupProperty || function(parent, propertyName) {
- if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
- return parent[propertyName];
- }
- return undefined
- };
-
- return "<div class=\"emptycontent\">\n <div class=\"icon-loading\"></div>\n <h2>"
- + container.escapeExpression(((helper = (helper = lookupProperty(helpers,"loadingText") || (depth0 != null ? lookupProperty(depth0,"loadingText") : depth0)) != null ? helper : container.hooks.helperMissing),(typeof helper === "function" ? helper.call(depth0 != null ? depth0 : (container.nullContext || {}),{"name":"loadingText","hash":{},"data":data,"loc":{"start":{"line":3,"column":5},"end":{"line":3,"column":20}}}) : helper)))
- + "</h2>\n</div>\n";
-},"useData":true});
-
-/***/ }),
-
-/***/ "./core/src/OC/contactsmenu/menu.handlebars":
-/*!**************************************************!*\
- !*** ./core/src/OC/contactsmenu/menu.handlebars ***!
- \**************************************************/
-/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
-
-var Handlebars = __webpack_require__(/*! ../../../../node_modules/handlebars/runtime.js */ "./node_modules/handlebars/runtime.js");
-function __default(obj) { return obj && (obj.__esModule ? obj["default"] : obj); }
-module.exports = (Handlebars["default"] || Handlebars).template({"compiler":[8,">= 4.3.0"],"main":function(container,depth0,helpers,partials,data) {
- var helper, alias1=depth0 != null ? depth0 : (container.nullContext || {}), alias2=container.hooks.helperMissing, alias3="function", alias4=container.escapeExpression, lookupProperty = container.lookupProperty || function(parent, propertyName) {
- if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
- return parent[propertyName];
- }
- return undefined
- };
-
- return "<label class=\"hidden-visually\" for=\"contactsmenu-search\">"
- + alias4(((helper = (helper = lookupProperty(helpers,"searchContactsText") || (depth0 != null ? lookupProperty(depth0,"searchContactsText") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{"name":"searchContactsText","hash":{},"data":data,"loc":{"start":{"line":1,"column":57},"end":{"line":1,"column":79}}}) : helper)))
- + "</label>\n<input id=\"contactsmenu-search\" type=\"search\" placeholder=\""
- + alias4(((helper = (helper = lookupProperty(helpers,"searchContactsText") || (depth0 != null ? lookupProperty(depth0,"searchContactsText") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{"name":"searchContactsText","hash":{},"data":data,"loc":{"start":{"line":2,"column":59},"end":{"line":2,"column":81}}}) : helper)))
- + "\" value=\""
- + alias4(((helper = (helper = lookupProperty(helpers,"searchTerm") || (depth0 != null ? lookupProperty(depth0,"searchTerm") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{"name":"searchTerm","hash":{},"data":data,"loc":{"start":{"line":2,"column":90},"end":{"line":2,"column":104}}}) : helper)))
- + "\">\n<div class=\"content\">\n</div>\n";
-},"useData":true});
-
-/***/ }),
-
-/***/ "./node_modules/moment/locale sync recursive ^\\.\\/.*$":
-/*!***************************************************!*\
- !*** ./node_modules/moment/locale/ sync ^\.\/.*$ ***!
- \***************************************************/
-/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
-
-var map = {
- "./af": "./node_modules/moment/locale/af.js",
- "./af.js": "./node_modules/moment/locale/af.js",
- "./ar": "./node_modules/moment/locale/ar.js",
- "./ar-dz": "./node_modules/moment/locale/ar-dz.js",
- "./ar-dz.js": "./node_modules/moment/locale/ar-dz.js",
- "./ar-kw": "./node_modules/moment/locale/ar-kw.js",
- "./ar-kw.js": "./node_modules/moment/locale/ar-kw.js",
- "./ar-ly": "./node_modules/moment/locale/ar-ly.js",
- "./ar-ly.js": "./node_modules/moment/locale/ar-ly.js",
- "./ar-ma": "./node_modules/moment/locale/ar-ma.js",
- "./ar-ma.js": "./node_modules/moment/locale/ar-ma.js",
- "./ar-sa": "./node_modules/moment/locale/ar-sa.js",
- "./ar-sa.js": "./node_modules/moment/locale/ar-sa.js",
- "./ar-tn": "./node_modules/moment/locale/ar-tn.js",
- "./ar-tn.js": "./node_modules/moment/locale/ar-tn.js",
- "./ar.js": "./node_modules/moment/locale/ar.js",
- "./az": "./node_modules/moment/locale/az.js",
- "./az.js": "./node_modules/moment/locale/az.js",
- "./be": "./node_modules/moment/locale/be.js",
- "./be.js": "./node_modules/moment/locale/be.js",
- "./bg": "./node_modules/moment/locale/bg.js",
- "./bg.js": "./node_modules/moment/locale/bg.js",
- "./bm": "./node_modules/moment/locale/bm.js",
- "./bm.js": "./node_modules/moment/locale/bm.js",
- "./bn": "./node_modules/moment/locale/bn.js",
- "./bn-bd": "./node_modules/moment/locale/bn-bd.js",
- "./bn-bd.js": "./node_modules/moment/locale/bn-bd.js",
- "./bn.js": "./node_modules/moment/locale/bn.js",
- "./bo": "./node_modules/moment/locale/bo.js",
- "./bo.js": "./node_modules/moment/locale/bo.js",
- "./br": "./node_modules/moment/locale/br.js",
- "./br.js": "./node_modules/moment/locale/br.js",
- "./bs": "./node_modules/moment/locale/bs.js",
- "./bs.js": "./node_modules/moment/locale/bs.js",
- "./ca": "./node_modules/moment/locale/ca.js",
- "./ca.js": "./node_modules/moment/locale/ca.js",
- "./cs": "./node_modules/moment/locale/cs.js",
- "./cs.js": "./node_modules/moment/locale/cs.js",
- "./cv": "./node_modules/moment/locale/cv.js",
- "./cv.js": "./node_modules/moment/locale/cv.js",
- "./cy": "./node_modules/moment/locale/cy.js",
- "./cy.js": "./node_modules/moment/locale/cy.js",
- "./da": "./node_modules/moment/locale/da.js",
- "./da.js": "./node_modules/moment/locale/da.js",
- "./de": "./node_modules/moment/locale/de.js",
- "./de-at": "./node_modules/moment/locale/de-at.js",
- "./de-at.js": "./node_modules/moment/locale/de-at.js",
- "./de-ch": "./node_modules/moment/locale/de-ch.js",
- "./de-ch.js": "./node_modules/moment/locale/de-ch.js",
- "./de.js": "./node_modules/moment/locale/de.js",
- "./dv": "./node_modules/moment/locale/dv.js",
- "./dv.js": "./node_modules/moment/locale/dv.js",
- "./el": "./node_modules/moment/locale/el.js",
- "./el.js": "./node_modules/moment/locale/el.js",
- "./en-au": "./node_modules/moment/locale/en-au.js",
- "./en-au.js": "./node_modules/moment/locale/en-au.js",
- "./en-ca": "./node_modules/moment/locale/en-ca.js",
- "./en-ca.js": "./node_modules/moment/locale/en-ca.js",
- "./en-gb": "./node_modules/moment/locale/en-gb.js",
- "./en-gb.js": "./node_modules/moment/locale/en-gb.js",
- "./en-ie": "./node_modules/moment/locale/en-ie.js",
- "./en-ie.js": "./node_modules/moment/locale/en-ie.js",
- "./en-il": "./node_modules/moment/locale/en-il.js",
- "./en-il.js": "./node_modules/moment/locale/en-il.js",
- "./en-in": "./node_modules/moment/locale/en-in.js",
- "./en-in.js": "./node_modules/moment/locale/en-in.js",
- "./en-nz": "./node_modules/moment/locale/en-nz.js",
- "./en-nz.js": "./node_modules/moment/locale/en-nz.js",
- "./en-sg": "./node_modules/moment/locale/en-sg.js",
- "./en-sg.js": "./node_modules/moment/locale/en-sg.js",
- "./eo": "./node_modules/moment/locale/eo.js",
- "./eo.js": "./node_modules/moment/locale/eo.js",
- "./es": "./node_modules/moment/locale/es.js",
- "./es-do": "./node_modules/moment/locale/es-do.js",
- "./es-do.js": "./node_modules/moment/locale/es-do.js",
- "./es-mx": "./node_modules/moment/locale/es-mx.js",
- "./es-mx.js": "./node_modules/moment/locale/es-mx.js",
- "./es-us": "./node_modules/moment/locale/es-us.js",
- "./es-us.js": "./node_modules/moment/locale/es-us.js",
- "./es.js": "./node_modules/moment/locale/es.js",
- "./et": "./node_modules/moment/locale/et.js",
- "./et.js": "./node_modules/moment/locale/et.js",
- "./eu": "./node_modules/moment/locale/eu.js",
- "./eu.js": "./node_modules/moment/locale/eu.js",
- "./fa": "./node_modules/moment/locale/fa.js",
- "./fa.js": "./node_modules/moment/locale/fa.js",
- "./fi": "./node_modules/moment/locale/fi.js",
- "./fi.js": "./node_modules/moment/locale/fi.js",
- "./fil": "./node_modules/moment/locale/fil.js",
- "./fil.js": "./node_modules/moment/locale/fil.js",
- "./fo": "./node_modules/moment/locale/fo.js",
- "./fo.js": "./node_modules/moment/locale/fo.js",
- "./fr": "./node_modules/moment/locale/fr.js",
- "./fr-ca": "./node_modules/moment/locale/fr-ca.js",
- "./fr-ca.js": "./node_modules/moment/locale/fr-ca.js",
- "./fr-ch": "./node_modules/moment/locale/fr-ch.js",
- "./fr-ch.js": "./node_modules/moment/locale/fr-ch.js",
- "./fr.js": "./node_modules/moment/locale/fr.js",
- "./fy": "./node_modules/moment/locale/fy.js",
- "./fy.js": "./node_modules/moment/locale/fy.js",
- "./ga": "./node_modules/moment/locale/ga.js",
- "./ga.js": "./node_modules/moment/locale/ga.js",
- "./gd": "./node_modules/moment/locale/gd.js",
- "./gd.js": "./node_modules/moment/locale/gd.js",
- "./gl": "./node_modules/moment/locale/gl.js",
- "./gl.js": "./node_modules/moment/locale/gl.js",
- "./gom-deva": "./node_modules/moment/locale/gom-deva.js",
- "./gom-deva.js": "./node_modules/moment/locale/gom-deva.js",
- "./gom-latn": "./node_modules/moment/locale/gom-latn.js",
- "./gom-latn.js": "./node_modules/moment/locale/gom-latn.js",
- "./gu": "./node_modules/moment/locale/gu.js",
- "./gu.js": "./node_modules/moment/locale/gu.js",
- "./he": "./node_modules/moment/locale/he.js",
- "./he.js": "./node_modules/moment/locale/he.js",
- "./hi": "./node_modules/moment/locale/hi.js",
- "./hi.js": "./node_modules/moment/locale/hi.js",
- "./hr": "./node_modules/moment/locale/hr.js",
- "./hr.js": "./node_modules/moment/locale/hr.js",
- "./hu": "./node_modules/moment/locale/hu.js",
- "./hu.js": "./node_modules/moment/locale/hu.js",
- "./hy-am": "./node_modules/moment/locale/hy-am.js",
- "./hy-am.js": "./node_modules/moment/locale/hy-am.js",
- "./id": "./node_modules/moment/locale/id.js",
- "./id.js": "./node_modules/moment/locale/id.js",
- "./is": "./node_modules/moment/locale/is.js",
- "./is.js": "./node_modules/moment/locale/is.js",
- "./it": "./node_modules/moment/locale/it.js",
- "./it-ch": "./node_modules/moment/locale/it-ch.js",
- "./it-ch.js": "./node_modules/moment/locale/it-ch.js",
- "./it.js": "./node_modules/moment/locale/it.js",
- "./ja": "./node_modules/moment/locale/ja.js",
- "./ja.js": "./node_modules/moment/locale/ja.js",
- "./jv": "./node_modules/moment/locale/jv.js",
- "./jv.js": "./node_modules/moment/locale/jv.js",
- "./ka": "./node_modules/moment/locale/ka.js",
- "./ka.js": "./node_modules/moment/locale/ka.js",
- "./kk": "./node_modules/moment/locale/kk.js",
- "./kk.js": "./node_modules/moment/locale/kk.js",
- "./km": "./node_modules/moment/locale/km.js",
- "./km.js": "./node_modules/moment/locale/km.js",
- "./kn": "./node_modules/moment/locale/kn.js",
- "./kn.js": "./node_modules/moment/locale/kn.js",
- "./ko": "./node_modules/moment/locale/ko.js",
- "./ko.js": "./node_modules/moment/locale/ko.js",
- "./ku": "./node_modules/moment/locale/ku.js",
- "./ku.js": "./node_modules/moment/locale/ku.js",
- "./ky": "./node_modules/moment/locale/ky.js",
- "./ky.js": "./node_modules/moment/locale/ky.js",
- "./lb": "./node_modules/moment/locale/lb.js",
- "./lb.js": "./node_modules/moment/locale/lb.js",
- "./lo": "./node_modules/moment/locale/lo.js",
- "./lo.js": "./node_modules/moment/locale/lo.js",
- "./lt": "./node_modules/moment/locale/lt.js",
- "./lt.js": "./node_modules/moment/locale/lt.js",
- "./lv": "./node_modules/moment/locale/lv.js",
- "./lv.js": "./node_modules/moment/locale/lv.js",
- "./me": "./node_modules/moment/locale/me.js",
- "./me.js": "./node_modules/moment/locale/me.js",
- "./mi": "./node_modules/moment/locale/mi.js",
- "./mi.js": "./node_modules/moment/locale/mi.js",
- "./mk": "./node_modules/moment/locale/mk.js",
- "./mk.js": "./node_modules/moment/locale/mk.js",
- "./ml": "./node_modules/moment/locale/ml.js",
- "./ml.js": "./node_modules/moment/locale/ml.js",
- "./mn": "./node_modules/moment/locale/mn.js",
- "./mn.js": "./node_modules/moment/locale/mn.js",
- "./mr": "./node_modules/moment/locale/mr.js",
- "./mr.js": "./node_modules/moment/locale/mr.js",
- "./ms": "./node_modules/moment/locale/ms.js",
- "./ms-my": "./node_modules/moment/locale/ms-my.js",
- "./ms-my.js": "./node_modules/moment/locale/ms-my.js",
- "./ms.js": "./node_modules/moment/locale/ms.js",
- "./mt": "./node_modules/moment/locale/mt.js",
- "./mt.js": "./node_modules/moment/locale/mt.js",
- "./my": "./node_modules/moment/locale/my.js",
- "./my.js": "./node_modules/moment/locale/my.js",
- "./nb": "./node_modules/moment/locale/nb.js",
- "./nb.js": "./node_modules/moment/locale/nb.js",
- "./ne": "./node_modules/moment/locale/ne.js",
- "./ne.js": "./node_modules/moment/locale/ne.js",
- "./nl": "./node_modules/moment/locale/nl.js",
- "./nl-be": "./node_modules/moment/locale/nl-be.js",
- "./nl-be.js": "./node_modules/moment/locale/nl-be.js",
- "./nl.js": "./node_modules/moment/locale/nl.js",
- "./nn": "./node_modules/moment/locale/nn.js",
- "./nn.js": "./node_modules/moment/locale/nn.js",
- "./oc-lnc": "./node_modules/moment/locale/oc-lnc.js",
- "./oc-lnc.js": "./node_modules/moment/locale/oc-lnc.js",
- "./pa-in": "./node_modules/moment/locale/pa-in.js",
- "./pa-in.js": "./node_modules/moment/locale/pa-in.js",
- "./pl": "./node_modules/moment/locale/pl.js",
- "./pl.js": "./node_modules/moment/locale/pl.js",
- "./pt": "./node_modules/moment/locale/pt.js",
- "./pt-br": "./node_modules/moment/locale/pt-br.js",
- "./pt-br.js": "./node_modules/moment/locale/pt-br.js",
- "./pt.js": "./node_modules/moment/locale/pt.js",
- "./ro": "./node_modules/moment/locale/ro.js",
- "./ro.js": "./node_modules/moment/locale/ro.js",
- "./ru": "./node_modules/moment/locale/ru.js",
- "./ru.js": "./node_modules/moment/locale/ru.js",
- "./sd": "./node_modules/moment/locale/sd.js",
- "./sd.js": "./node_modules/moment/locale/sd.js",
- "./se": "./node_modules/moment/locale/se.js",
- "./se.js": "./node_modules/moment/locale/se.js",
- "./si": "./node_modules/moment/locale/si.js",
- "./si.js": "./node_modules/moment/locale/si.js",
- "./sk": "./node_modules/moment/locale/sk.js",
- "./sk.js": "./node_modules/moment/locale/sk.js",
- "./sl": "./node_modules/moment/locale/sl.js",
- "./sl.js": "./node_modules/moment/locale/sl.js",
- "./sq": "./node_modules/moment/locale/sq.js",
- "./sq.js": "./node_modules/moment/locale/sq.js",
- "./sr": "./node_modules/moment/locale/sr.js",
- "./sr-cyrl": "./node_modules/moment/locale/sr-cyrl.js",
- "./sr-cyrl.js": "./node_modules/moment/locale/sr-cyrl.js",
- "./sr.js": "./node_modules/moment/locale/sr.js",
- "./ss": "./node_modules/moment/locale/ss.js",
- "./ss.js": "./node_modules/moment/locale/ss.js",
- "./sv": "./node_modules/moment/locale/sv.js",
- "./sv.js": "./node_modules/moment/locale/sv.js",
- "./sw": "./node_modules/moment/locale/sw.js",
- "./sw.js": "./node_modules/moment/locale/sw.js",
- "./ta": "./node_modules/moment/locale/ta.js",
- "./ta.js": "./node_modules/moment/locale/ta.js",
- "./te": "./node_modules/moment/locale/te.js",
- "./te.js": "./node_modules/moment/locale/te.js",
- "./tet": "./node_modules/moment/locale/tet.js",
- "./tet.js": "./node_modules/moment/locale/tet.js",
- "./tg": "./node_modules/moment/locale/tg.js",
- "./tg.js": "./node_modules/moment/locale/tg.js",
- "./th": "./node_modules/moment/locale/th.js",
- "./th.js": "./node_modules/moment/locale/th.js",
- "./tk": "./node_modules/moment/locale/tk.js",
- "./tk.js": "./node_modules/moment/locale/tk.js",
- "./tl-ph": "./node_modules/moment/locale/tl-ph.js",
- "./tl-ph.js": "./node_modules/moment/locale/tl-ph.js",
- "./tlh": "./node_modules/moment/locale/tlh.js",
- "./tlh.js": "./node_modules/moment/locale/tlh.js",
- "./tr": "./node_modules/moment/locale/tr.js",
- "./tr.js": "./node_modules/moment/locale/tr.js",
- "./tzl": "./node_modules/moment/locale/tzl.js",
- "./tzl.js": "./node_modules/moment/locale/tzl.js",
- "./tzm": "./node_modules/moment/locale/tzm.js",
- "./tzm-latn": "./node_modules/moment/locale/tzm-latn.js",
- "./tzm-latn.js": "./node_modules/moment/locale/tzm-latn.js",
- "./tzm.js": "./node_modules/moment/locale/tzm.js",
- "./ug-cn": "./node_modules/moment/locale/ug-cn.js",
- "./ug-cn.js": "./node_modules/moment/locale/ug-cn.js",
- "./uk": "./node_modules/moment/locale/uk.js",
- "./uk.js": "./node_modules/moment/locale/uk.js",
- "./ur": "./node_modules/moment/locale/ur.js",
- "./ur.js": "./node_modules/moment/locale/ur.js",
- "./uz": "./node_modules/moment/locale/uz.js",
- "./uz-latn": "./node_modules/moment/locale/uz-latn.js",
- "./uz-latn.js": "./node_modules/moment/locale/uz-latn.js",
- "./uz.js": "./node_modules/moment/locale/uz.js",
- "./vi": "./node_modules/moment/locale/vi.js",
- "./vi.js": "./node_modules/moment/locale/vi.js",
- "./x-pseudo": "./node_modules/moment/locale/x-pseudo.js",
- "./x-pseudo.js": "./node_modules/moment/locale/x-pseudo.js",
- "./yo": "./node_modules/moment/locale/yo.js",
- "./yo.js": "./node_modules/moment/locale/yo.js",
- "./zh-cn": "./node_modules/moment/locale/zh-cn.js",
- "./zh-cn.js": "./node_modules/moment/locale/zh-cn.js",
- "./zh-hk": "./node_modules/moment/locale/zh-hk.js",
- "./zh-hk.js": "./node_modules/moment/locale/zh-hk.js",
- "./zh-mo": "./node_modules/moment/locale/zh-mo.js",
- "./zh-mo.js": "./node_modules/moment/locale/zh-mo.js",
- "./zh-tw": "./node_modules/moment/locale/zh-tw.js",
- "./zh-tw.js": "./node_modules/moment/locale/zh-tw.js"
-};
-
-
-function webpackContext(req) {
- var id = webpackContextResolve(req);
- return __webpack_require__(id);
-}
-function webpackContextResolve(req) {
- if(!__webpack_require__.o(map, req)) {
- var e = new Error("Cannot find module '" + req + "'");
- e.code = 'MODULE_NOT_FOUND';
- throw e;
- }
- return map[req];
-}
-webpackContext.keys = function webpackContextKeys() {
- return Object.keys(map);
-};
-webpackContext.resolve = webpackContextResolve;
-module.exports = webpackContext;
-webpackContext.id = "./node_modules/moment/locale sync recursive ^\\.\\/.*$";
-
-/***/ }),
-
-/***/ "./node_modules/style-loader/dist/cjs.js!./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/LoginButton.vue?vue&type=style&index=0&id=2b0f9fce&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/sass-loader/dist/cjs.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/LoginButton.vue?vue&type=style&index=0&id=2b0f9fce&lang=scss&scoped=true& ***!
- \******************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* 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_sass_loader_dist_cjs_js_node_modules_vue_loader_lib_index_js_vue_loader_options_LoginButton_vue_vue_type_style_index_0_id_2b0f9fce_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/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LoginButton.vue?vue&type=style&index=0&id=2b0f9fce&lang=scss&scoped=true& */ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/LoginButton.vue?vue&type=style&index=0&id=2b0f9fce&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_sass_loader_dist_cjs_js_node_modules_vue_loader_lib_index_js_vue_loader_options_LoginButton_vue_vue_type_style_index_0_id_2b0f9fce_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"], options);
-
-
-
-
- /* harmony default export */ __webpack_exports__["default"] = (_node_modules_css_loader_dist_cjs_js_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_sass_loader_dist_cjs_js_node_modules_vue_loader_lib_index_js_vue_loader_options_LoginButton_vue_vue_type_style_index_0_id_2b0f9fce_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_sass_loader_dist_cjs_js_node_modules_vue_loader_lib_index_js_vue_loader_options_LoginButton_vue_vue_type_style_index_0_id_2b0f9fce_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_sass_loader_dist_cjs_js_node_modules_vue_loader_lib_index_js_vue_loader_options_LoginButton_vue_vue_type_style_index_0_id_2b0f9fce_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/sass-loader/dist/cjs.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/LoginForm.vue?vue&type=style&index=0&id=722a846b&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/sass-loader/dist/cjs.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/LoginForm.vue?vue&type=style&index=0&id=722a846b&lang=scss&scoped=true& ***!
- \****************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* 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_sass_loader_dist_cjs_js_node_modules_vue_loader_lib_index_js_vue_loader_options_LoginForm_vue_vue_type_style_index_0_id_722a846b_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/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LoginForm.vue?vue&type=style&index=0&id=722a846b&lang=scss&scoped=true& */ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/LoginForm.vue?vue&type=style&index=0&id=722a846b&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_sass_loader_dist_cjs_js_node_modules_vue_loader_lib_index_js_vue_loader_options_LoginForm_vue_vue_type_style_index_0_id_722a846b_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"], options);
-
-
-
-
- /* harmony default export */ __webpack_exports__["default"] = (_node_modules_css_loader_dist_cjs_js_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_sass_loader_dist_cjs_js_node_modules_vue_loader_lib_index_js_vue_loader_options_LoginForm_vue_vue_type_style_index_0_id_722a846b_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_sass_loader_dist_cjs_js_node_modules_vue_loader_lib_index_js_vue_loader_options_LoginForm_vue_vue_type_style_index_0_id_722a846b_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_sass_loader_dist_cjs_js_node_modules_vue_loader_lib_index_js_vue_loader_options_LoginForm_vue_vue_type_style_index_0_id_722a846b_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/sass-loader/dist/cjs.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/PasswordLessLoginForm.vue?vue&type=style&index=0&id=34bf48f7&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/sass-loader/dist/cjs.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/PasswordLessLoginForm.vue?vue&type=style&index=0&id=34bf48f7&lang=scss&scoped=true& ***!
- \****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* 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_sass_loader_dist_cjs_js_node_modules_vue_loader_lib_index_js_vue_loader_options_PasswordLessLoginForm_vue_vue_type_style_index_0_id_34bf48f7_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/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PasswordLessLoginForm.vue?vue&type=style&index=0&id=34bf48f7&lang=scss&scoped=true& */ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/PasswordLessLoginForm.vue?vue&type=style&index=0&id=34bf48f7&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_sass_loader_dist_cjs_js_node_modules_vue_loader_lib_index_js_vue_loader_options_PasswordLessLoginForm_vue_vue_type_style_index_0_id_34bf48f7_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"], options);
-
-
-
-
- /* harmony default export */ __webpack_exports__["default"] = (_node_modules_css_loader_dist_cjs_js_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_sass_loader_dist_cjs_js_node_modules_vue_loader_lib_index_js_vue_loader_options_PasswordLessLoginForm_vue_vue_type_style_index_0_id_34bf48f7_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_sass_loader_dist_cjs_js_node_modules_vue_loader_lib_index_js_vue_loader_options_PasswordLessLoginForm_vue_vue_type_style_index_0_id_34bf48f7_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_sass_loader_dist_cjs_js_node_modules_vue_loader_lib_index_js_vue_loader_options_PasswordLessLoginForm_vue_vue_type_style_index_0_id_34bf48f7_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/sass-loader/dist/cjs.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/ResetPassword.vue?vue&type=style&index=0&id=a10057b0&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/sass-loader/dist/cjs.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/ResetPassword.vue?vue&type=style&index=0&id=a10057b0&lang=scss&scoped=true& ***!
- \********************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* 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_sass_loader_dist_cjs_js_node_modules_vue_loader_lib_index_js_vue_loader_options_ResetPassword_vue_vue_type_style_index_0_id_a10057b0_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/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ResetPassword.vue?vue&type=style&index=0&id=a10057b0&lang=scss&scoped=true& */ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/ResetPassword.vue?vue&type=style&index=0&id=a10057b0&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_sass_loader_dist_cjs_js_node_modules_vue_loader_lib_index_js_vue_loader_options_ResetPassword_vue_vue_type_style_index_0_id_a10057b0_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"], options);
-
-
-
-
- /* harmony default export */ __webpack_exports__["default"] = (_node_modules_css_loader_dist_cjs_js_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_sass_loader_dist_cjs_js_node_modules_vue_loader_lib_index_js_vue_loader_options_ResetPassword_vue_vue_type_style_index_0_id_a10057b0_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_sass_loader_dist_cjs_js_node_modules_vue_loader_lib_index_js_vue_loader_options_ResetPassword_vue_vue_type_style_index_0_id_a10057b0_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_sass_loader_dist_cjs_js_node_modules_vue_loader_lib_index_js_vue_loader_options_ResetPassword_vue_vue_type_style_index_0_id_a10057b0_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/sass-loader/dist/cjs.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/views/Login.vue?vue&type=style&index=0&id=020fd45b&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/sass-loader/dist/cjs.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/views/Login.vue?vue&type=style&index=0&id=020fd45b&lang=scss& ***!
- \*************************************************************************************************************************************************************************************************************************************************************************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* 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_sass_loader_dist_cjs_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Login_vue_vue_type_style_index_0_id_020fd45b_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/sass-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Login.vue?vue&type=style&index=0&id=020fd45b&lang=scss& */ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/views/Login.vue?vue&type=style&index=0&id=020fd45b&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_sass_loader_dist_cjs_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Login_vue_vue_type_style_index_0_id_020fd45b_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"], options);
-
-
-
-
- /* harmony default export */ __webpack_exports__["default"] = (_node_modules_css_loader_dist_cjs_js_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_sass_loader_dist_cjs_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Login_vue_vue_type_style_index_0_id_020fd45b_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"] && _node_modules_css_loader_dist_cjs_js_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_sass_loader_dist_cjs_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Login_vue_vue_type_style_index_0_id_020fd45b_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_sass_loader_dist_cjs_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Login_vue_vue_type_style_index_0_id_020fd45b_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/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/UpdatePassword.vue?vue&type=style&index=0&id=66634656&scoped=true&lang=css&":
-/*!*****************************************************************************************************************************************************************************************************************************************************************************************************************!*\
- !*** ./node_modules/style-loader/dist/cjs.js!./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/UpdatePassword.vue?vue&type=style&index=0&id=66634656&scoped=true&lang=css& ***!
- \*****************************************************************************************************************************************************************************************************************************************************************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* 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_vue_loader_lib_index_js_vue_loader_options_UpdatePassword_vue_vue_type_style_index_0_id_66634656_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UpdatePassword.vue?vue&type=style&index=0&id=66634656&scoped=true&lang=css& */ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/UpdatePassword.vue?vue&type=style&index=0&id=66634656&scoped=true&lang=css&");
-
-
-
-
-
-
-
-
-
-
-
-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_vue_loader_lib_index_js_vue_loader_options_UpdatePassword_vue_vue_type_style_index_0_id_66634656_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_6__["default"], options);
-
-
-
-
- /* harmony default export */ __webpack_exports__["default"] = (_node_modules_css_loader_dist_cjs_js_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_vue_loader_lib_index_js_vue_loader_options_UpdatePassword_vue_vue_type_style_index_0_id_66634656_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_6__["default"] && _node_modules_css_loader_dist_cjs_js_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_vue_loader_lib_index_js_vue_loader_options_UpdatePassword_vue_vue_type_style_index_0_id_66634656_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _node_modules_css_loader_dist_cjs_js_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_vue_loader_lib_index_js_vue_loader_options_UpdatePassword_vue_vue_type_style_index_0_id_66634656_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined);
-
-
-/***/ }),
-
-/***/ "./core/src/components/login/LoginButton.vue":
-/*!***************************************************!*\
- !*** ./core/src/components/login/LoginButton.vue ***!
- \***************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _LoginButton_vue_vue_type_template_id_2b0f9fce_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./LoginButton.vue?vue&type=template&id=2b0f9fce&scoped=true& */ "./core/src/components/login/LoginButton.vue?vue&type=template&id=2b0f9fce&scoped=true&");
-/* harmony import */ var _LoginButton_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./LoginButton.vue?vue&type=script&lang=js& */ "./core/src/components/login/LoginButton.vue?vue&type=script&lang=js&");
-/* harmony import */ var _LoginButton_vue_vue_type_style_index_0_id_2b0f9fce_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./LoginButton.vue?vue&type=style&index=0&id=2b0f9fce&lang=scss&scoped=true& */ "./core/src/components/login/LoginButton.vue?vue&type=style&index=0&id=2b0f9fce&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"])(
- _LoginButton_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
- _LoginButton_vue_vue_type_template_id_2b0f9fce_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render,
- _LoginButton_vue_vue_type_template_id_2b0f9fce_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns,
- false,
- null,
- "2b0f9fce",
- null
-
-)
-
-/* hot reload */
-if (false) { var api; }
-component.options.__file = "core/src/components/login/LoginButton.vue"
-/* harmony default export */ __webpack_exports__["default"] = (component.exports);
-
-/***/ }),
-
-/***/ "./core/src/components/login/LoginForm.vue":
-/*!*************************************************!*\
- !*** ./core/src/components/login/LoginForm.vue ***!
- \*************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _LoginForm_vue_vue_type_template_id_722a846b_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./LoginForm.vue?vue&type=template&id=722a846b&scoped=true& */ "./core/src/components/login/LoginForm.vue?vue&type=template&id=722a846b&scoped=true&");
-/* harmony import */ var _LoginForm_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./LoginForm.vue?vue&type=script&lang=js& */ "./core/src/components/login/LoginForm.vue?vue&type=script&lang=js&");
-/* harmony import */ var _LoginForm_vue_vue_type_style_index_0_id_722a846b_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./LoginForm.vue?vue&type=style&index=0&id=722a846b&lang=scss&scoped=true& */ "./core/src/components/login/LoginForm.vue?vue&type=style&index=0&id=722a846b&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"])(
- _LoginForm_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
- _LoginForm_vue_vue_type_template_id_722a846b_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render,
- _LoginForm_vue_vue_type_template_id_722a846b_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns,
- false,
- null,
- "722a846b",
- null
-
-)
-
-/* hot reload */
-if (false) { var api; }
-component.options.__file = "core/src/components/login/LoginForm.vue"
-/* harmony default export */ __webpack_exports__["default"] = (component.exports);
-
-/***/ }),
-
-/***/ "./core/src/components/login/PasswordLessLoginForm.vue":
-/*!*************************************************************!*\
- !*** ./core/src/components/login/PasswordLessLoginForm.vue ***!
- \*************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _PasswordLessLoginForm_vue_vue_type_template_id_34bf48f7_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./PasswordLessLoginForm.vue?vue&type=template&id=34bf48f7&scoped=true& */ "./core/src/components/login/PasswordLessLoginForm.vue?vue&type=template&id=34bf48f7&scoped=true&");
-/* harmony import */ var _PasswordLessLoginForm_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./PasswordLessLoginForm.vue?vue&type=script&lang=js& */ "./core/src/components/login/PasswordLessLoginForm.vue?vue&type=script&lang=js&");
-/* harmony import */ var _PasswordLessLoginForm_vue_vue_type_style_index_0_id_34bf48f7_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./PasswordLessLoginForm.vue?vue&type=style&index=0&id=34bf48f7&lang=scss&scoped=true& */ "./core/src/components/login/PasswordLessLoginForm.vue?vue&type=style&index=0&id=34bf48f7&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"])(
- _PasswordLessLoginForm_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
- _PasswordLessLoginForm_vue_vue_type_template_id_34bf48f7_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render,
- _PasswordLessLoginForm_vue_vue_type_template_id_34bf48f7_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns,
- false,
- null,
- "34bf48f7",
- null
-
-)
-
-/* hot reload */
-if (false) { var api; }
-component.options.__file = "core/src/components/login/PasswordLessLoginForm.vue"
-/* harmony default export */ __webpack_exports__["default"] = (component.exports);
-
-/***/ }),
-
-/***/ "./core/src/components/login/ResetPassword.vue":
-/*!*****************************************************!*\
- !*** ./core/src/components/login/ResetPassword.vue ***!
- \*****************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _ResetPassword_vue_vue_type_template_id_a10057b0_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./ResetPassword.vue?vue&type=template&id=a10057b0&scoped=true& */ "./core/src/components/login/ResetPassword.vue?vue&type=template&id=a10057b0&scoped=true&");
-/* harmony import */ var _ResetPassword_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./ResetPassword.vue?vue&type=script&lang=js& */ "./core/src/components/login/ResetPassword.vue?vue&type=script&lang=js&");
-/* harmony import */ var _ResetPassword_vue_vue_type_style_index_0_id_a10057b0_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./ResetPassword.vue?vue&type=style&index=0&id=a10057b0&lang=scss&scoped=true& */ "./core/src/components/login/ResetPassword.vue?vue&type=style&index=0&id=a10057b0&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"])(
- _ResetPassword_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
- _ResetPassword_vue_vue_type_template_id_a10057b0_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render,
- _ResetPassword_vue_vue_type_template_id_a10057b0_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns,
- false,
- null,
- "a10057b0",
- null
-
-)
-
-/* hot reload */
-if (false) { var api; }
-component.options.__file = "core/src/components/login/ResetPassword.vue"
-/* harmony default export */ __webpack_exports__["default"] = (component.exports);
-
-/***/ }),
-
-/***/ "./core/src/components/login/UpdatePassword.vue":
-/*!******************************************************!*\
- !*** ./core/src/components/login/UpdatePassword.vue ***!
- \******************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _UpdatePassword_vue_vue_type_template_id_66634656_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./UpdatePassword.vue?vue&type=template&id=66634656&scoped=true& */ "./core/src/components/login/UpdatePassword.vue?vue&type=template&id=66634656&scoped=true&");
-/* harmony import */ var _UpdatePassword_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./UpdatePassword.vue?vue&type=script&lang=js& */ "./core/src/components/login/UpdatePassword.vue?vue&type=script&lang=js&");
-/* harmony import */ var _UpdatePassword_vue_vue_type_style_index_0_id_66634656_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./UpdatePassword.vue?vue&type=style&index=0&id=66634656&scoped=true&lang=css& */ "./core/src/components/login/UpdatePassword.vue?vue&type=style&index=0&id=66634656&scoped=true&lang=css&");
-/* 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"])(
- _UpdatePassword_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
- _UpdatePassword_vue_vue_type_template_id_66634656_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render,
- _UpdatePassword_vue_vue_type_template_id_66634656_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns,
- false,
- null,
- "66634656",
- null
-
-)
-
-/* hot reload */
-if (false) { var api; }
-component.options.__file = "core/src/components/login/UpdatePassword.vue"
-/* harmony default export */ __webpack_exports__["default"] = (component.exports);
-
-/***/ }),
-
-/***/ "./core/src/views/Login.vue":
-/*!**********************************!*\
- !*** ./core/src/views/Login.vue ***!
- \**********************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _Login_vue_vue_type_template_id_020fd45b___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Login.vue?vue&type=template&id=020fd45b& */ "./core/src/views/Login.vue?vue&type=template&id=020fd45b&");
-/* harmony import */ var _Login_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Login.vue?vue&type=script&lang=js& */ "./core/src/views/Login.vue?vue&type=script&lang=js&");
-/* harmony import */ var _Login_vue_vue_type_style_index_0_id_020fd45b_lang_scss___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Login.vue?vue&type=style&index=0&id=020fd45b&lang=scss& */ "./core/src/views/Login.vue?vue&type=style&index=0&id=020fd45b&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"])(
- _Login_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
- _Login_vue_vue_type_template_id_020fd45b___WEBPACK_IMPORTED_MODULE_0__.render,
- _Login_vue_vue_type_template_id_020fd45b___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns,
- false,
- null,
- null,
- null
-
-)
-
-/* hot reload */
-if (false) { var api; }
-component.options.__file = "core/src/views/Login.vue"
-/* harmony default export */ __webpack_exports__["default"] = (component.exports);
-
-/***/ }),
-
-/***/ "./node_modules/vue-material-design-icons/LockOpen.vue":
-/*!*************************************************************!*\
- !*** ./node_modules/vue-material-design-icons/LockOpen.vue ***!
- \*************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _LockOpen_vue_vue_type_template_id_2f5a5bc1___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./LockOpen.vue?vue&type=template&id=2f5a5bc1& */ "./node_modules/vue-material-design-icons/LockOpen.vue?vue&type=template&id=2f5a5bc1&");
-/* harmony import */ var _LockOpen_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./LockOpen.vue?vue&type=script&lang=js& */ "./node_modules/vue-material-design-icons/LockOpen.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"])(
- _LockOpen_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
- _LockOpen_vue_vue_type_template_id_2f5a5bc1___WEBPACK_IMPORTED_MODULE_0__.render,
- _LockOpen_vue_vue_type_template_id_2f5a5bc1___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns,
- false,
- null,
- null,
- null
-
-)
-
-/* hot reload */
-if (false) { var api; }
-component.options.__file = "node_modules/vue-material-design-icons/LockOpen.vue"
-/* harmony default export */ __webpack_exports__["default"] = (component.exports);
-
-/***/ }),
-
-/***/ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/LockOpen.vue?vue&type=script&lang=js&":
-/*!*************************************************************************************************************************************************!*\
- !*** ./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/LockOpen.vue?vue&type=script&lang=js& ***!
- \*************************************************************************************************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-
-/* harmony default export */ __webpack_exports__["default"] = ({
- name: "LockOpenIcon",
- emits: ['click'],
- props: {
- title: {
- type: String,
- },
- fillColor: {
- type: String,
- default: "currentColor"
- },
- size: {
- type: Number,
- default: 24
- }
- }
-});
-
-
-/***/ }),
-
-/***/ "./core/src/components/login/LoginButton.vue?vue&type=script&lang=js&":
-/*!****************************************************************************!*\
- !*** ./core/src/components/login/LoginButton.vue?vue&type=script&lang=js& ***!
- \****************************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_LoginButton_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!./LoginButton.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/LoginButton.vue?vue&type=script&lang=js&");
- /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_LoginButton_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
-
-/***/ }),
-
-/***/ "./core/src/components/login/LoginForm.vue?vue&type=script&lang=js&":
-/*!**************************************************************************!*\
- !*** ./core/src/components/login/LoginForm.vue?vue&type=script&lang=js& ***!
- \**************************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_LoginForm_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!./LoginForm.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/LoginForm.vue?vue&type=script&lang=js&");
- /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_LoginForm_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
-
-/***/ }),
-
-/***/ "./core/src/components/login/PasswordLessLoginForm.vue?vue&type=script&lang=js&":
-/*!**************************************************************************************!*\
- !*** ./core/src/components/login/PasswordLessLoginForm.vue?vue&type=script&lang=js& ***!
- \**************************************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_PasswordLessLoginForm_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!./PasswordLessLoginForm.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/PasswordLessLoginForm.vue?vue&type=script&lang=js&");
- /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_PasswordLessLoginForm_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
-
-/***/ }),
-
-/***/ "./core/src/components/login/ResetPassword.vue?vue&type=script&lang=js&":
-/*!******************************************************************************!*\
- !*** ./core/src/components/login/ResetPassword.vue?vue&type=script&lang=js& ***!
- \******************************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_ResetPassword_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!./ResetPassword.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/ResetPassword.vue?vue&type=script&lang=js&");
- /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_ResetPassword_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
-
-/***/ }),
-
-/***/ "./core/src/components/login/UpdatePassword.vue?vue&type=script&lang=js&":
-/*!*******************************************************************************!*\
- !*** ./core/src/components/login/UpdatePassword.vue?vue&type=script&lang=js& ***!
- \*******************************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_UpdatePassword_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!./UpdatePassword.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/UpdatePassword.vue?vue&type=script&lang=js&");
- /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_UpdatePassword_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
-
-/***/ }),
-
-/***/ "./core/src/views/Login.vue?vue&type=script&lang=js&":
-/*!***********************************************************!*\
- !*** ./core/src/views/Login.vue?vue&type=script&lang=js& ***!
- \***********************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Login_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!./Login.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/views/Login.vue?vue&type=script&lang=js&");
- /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Login_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
-
-/***/ }),
-
-/***/ "./core/src/components/login/LoginButton.vue?vue&type=template&id=2b0f9fce&scoped=true&":
-/*!**********************************************************************************************!*\
- !*** ./core/src/components/login/LoginButton.vue?vue&type=template&id=2b0f9fce&scoped=true& ***!
- \**********************************************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ render: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_LoginButton_vue_vue_type_template_id_2b0f9fce_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render; },
-/* harmony export */ staticRenderFns: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_LoginButton_vue_vue_type_template_id_2b0f9fce_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns; }
-/* harmony export */ });
-/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_LoginButton_vue_vue_type_template_id_2b0f9fce_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LoginButton.vue?vue&type=template&id=2b0f9fce&scoped=true& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/LoginButton.vue?vue&type=template&id=2b0f9fce&scoped=true&");
-
-
-/***/ }),
-
-/***/ "./core/src/components/login/LoginForm.vue?vue&type=template&id=722a846b&scoped=true&":
-/*!********************************************************************************************!*\
- !*** ./core/src/components/login/LoginForm.vue?vue&type=template&id=722a846b&scoped=true& ***!
- \********************************************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ render: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_LoginForm_vue_vue_type_template_id_722a846b_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render; },
-/* harmony export */ staticRenderFns: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_LoginForm_vue_vue_type_template_id_722a846b_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns; }
-/* harmony export */ });
-/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_LoginForm_vue_vue_type_template_id_722a846b_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LoginForm.vue?vue&type=template&id=722a846b&scoped=true& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/LoginForm.vue?vue&type=template&id=722a846b&scoped=true&");
-
-
-/***/ }),
-
-/***/ "./core/src/components/login/PasswordLessLoginForm.vue?vue&type=template&id=34bf48f7&scoped=true&":
-/*!********************************************************************************************************!*\
- !*** ./core/src/components/login/PasswordLessLoginForm.vue?vue&type=template&id=34bf48f7&scoped=true& ***!
- \********************************************************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ render: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_PasswordLessLoginForm_vue_vue_type_template_id_34bf48f7_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render; },
-/* harmony export */ staticRenderFns: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_PasswordLessLoginForm_vue_vue_type_template_id_34bf48f7_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns; }
-/* harmony export */ });
-/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_PasswordLessLoginForm_vue_vue_type_template_id_34bf48f7_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PasswordLessLoginForm.vue?vue&type=template&id=34bf48f7&scoped=true& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/PasswordLessLoginForm.vue?vue&type=template&id=34bf48f7&scoped=true&");
-
-
-/***/ }),
-
-/***/ "./core/src/components/login/ResetPassword.vue?vue&type=template&id=a10057b0&scoped=true&":
-/*!************************************************************************************************!*\
- !*** ./core/src/components/login/ResetPassword.vue?vue&type=template&id=a10057b0&scoped=true& ***!
- \************************************************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ render: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_ResetPassword_vue_vue_type_template_id_a10057b0_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render; },
-/* harmony export */ staticRenderFns: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_ResetPassword_vue_vue_type_template_id_a10057b0_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns; }
-/* harmony export */ });
-/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_ResetPassword_vue_vue_type_template_id_a10057b0_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ResetPassword.vue?vue&type=template&id=a10057b0&scoped=true& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/ResetPassword.vue?vue&type=template&id=a10057b0&scoped=true&");
-
-
-/***/ }),
-
-/***/ "./core/src/components/login/UpdatePassword.vue?vue&type=template&id=66634656&scoped=true&":
-/*!*************************************************************************************************!*\
- !*** ./core/src/components/login/UpdatePassword.vue?vue&type=template&id=66634656&scoped=true& ***!
- \*************************************************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ render: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_UpdatePassword_vue_vue_type_template_id_66634656_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render; },
-/* harmony export */ staticRenderFns: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_UpdatePassword_vue_vue_type_template_id_66634656_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns; }
-/* harmony export */ });
-/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_UpdatePassword_vue_vue_type_template_id_66634656_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UpdatePassword.vue?vue&type=template&id=66634656&scoped=true& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/UpdatePassword.vue?vue&type=template&id=66634656&scoped=true&");
-
-
-/***/ }),
-
-/***/ "./core/src/views/Login.vue?vue&type=template&id=020fd45b&":
-/*!*****************************************************************!*\
- !*** ./core/src/views/Login.vue?vue&type=template&id=020fd45b& ***!
- \*****************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ render: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Login_vue_vue_type_template_id_020fd45b___WEBPACK_IMPORTED_MODULE_0__.render; },
-/* harmony export */ staticRenderFns: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Login_vue_vue_type_template_id_020fd45b___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns; }
-/* harmony export */ });
-/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Login_vue_vue_type_template_id_020fd45b___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Login.vue?vue&type=template&id=020fd45b& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/views/Login.vue?vue&type=template&id=020fd45b&");
-
-
-/***/ }),
-
-/***/ "./core/src/components/login/LoginButton.vue?vue&type=style&index=0&id=2b0f9fce&lang=scss&scoped=true&":
-/*!*************************************************************************************************************!*\
- !*** ./core/src/components/login/LoginButton.vue?vue&type=style&index=0&id=2b0f9fce&lang=scss&scoped=true& ***!
- \*************************************************************************************************************/
-/***/ (function(__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_sass_loader_dist_cjs_js_node_modules_vue_loader_lib_index_js_vue_loader_options_LoginButton_vue_vue_type_style_index_0_id_2b0f9fce_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/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LoginButton.vue?vue&type=style&index=0&id=2b0f9fce&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/sass-loader/dist/cjs.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/LoginButton.vue?vue&type=style&index=0&id=2b0f9fce&lang=scss&scoped=true&");
-
-
-/***/ }),
-
-/***/ "./core/src/components/login/LoginForm.vue?vue&type=style&index=0&id=722a846b&lang=scss&scoped=true&":
-/*!***********************************************************************************************************!*\
- !*** ./core/src/components/login/LoginForm.vue?vue&type=style&index=0&id=722a846b&lang=scss&scoped=true& ***!
- \***********************************************************************************************************/
-/***/ (function(__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_sass_loader_dist_cjs_js_node_modules_vue_loader_lib_index_js_vue_loader_options_LoginForm_vue_vue_type_style_index_0_id_722a846b_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/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LoginForm.vue?vue&type=style&index=0&id=722a846b&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/sass-loader/dist/cjs.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/LoginForm.vue?vue&type=style&index=0&id=722a846b&lang=scss&scoped=true&");
-
-
-/***/ }),
-
-/***/ "./core/src/components/login/PasswordLessLoginForm.vue?vue&type=style&index=0&id=34bf48f7&lang=scss&scoped=true&":
-/*!***********************************************************************************************************************!*\
- !*** ./core/src/components/login/PasswordLessLoginForm.vue?vue&type=style&index=0&id=34bf48f7&lang=scss&scoped=true& ***!
- \***********************************************************************************************************************/
-/***/ (function(__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_sass_loader_dist_cjs_js_node_modules_vue_loader_lib_index_js_vue_loader_options_PasswordLessLoginForm_vue_vue_type_style_index_0_id_34bf48f7_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/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PasswordLessLoginForm.vue?vue&type=style&index=0&id=34bf48f7&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/sass-loader/dist/cjs.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/PasswordLessLoginForm.vue?vue&type=style&index=0&id=34bf48f7&lang=scss&scoped=true&");
-
-
-/***/ }),
-
-/***/ "./core/src/components/login/ResetPassword.vue?vue&type=style&index=0&id=a10057b0&lang=scss&scoped=true&":
-/*!***************************************************************************************************************!*\
- !*** ./core/src/components/login/ResetPassword.vue?vue&type=style&index=0&id=a10057b0&lang=scss&scoped=true& ***!
- \***************************************************************************************************************/
-/***/ (function(__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_sass_loader_dist_cjs_js_node_modules_vue_loader_lib_index_js_vue_loader_options_ResetPassword_vue_vue_type_style_index_0_id_a10057b0_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/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ResetPassword.vue?vue&type=style&index=0&id=a10057b0&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/sass-loader/dist/cjs.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/ResetPassword.vue?vue&type=style&index=0&id=a10057b0&lang=scss&scoped=true&");
-
-
-/***/ }),
-
-/***/ "./core/src/views/Login.vue?vue&type=style&index=0&id=020fd45b&lang=scss&":
-/*!********************************************************************************!*\
- !*** ./core/src/views/Login.vue?vue&type=style&index=0&id=020fd45b&lang=scss& ***!
- \********************************************************************************/
-/***/ (function(__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_sass_loader_dist_cjs_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Login_vue_vue_type_style_index_0_id_020fd45b_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/sass-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Login.vue?vue&type=style&index=0&id=020fd45b&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/sass-loader/dist/cjs.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/views/Login.vue?vue&type=style&index=0&id=020fd45b&lang=scss&");
-
-
-/***/ }),
-
-/***/ "./core/src/components/login/UpdatePassword.vue?vue&type=style&index=0&id=66634656&scoped=true&lang=css&":
-/*!***************************************************************************************************************!*\
- !*** ./core/src/components/login/UpdatePassword.vue?vue&type=style&index=0&id=66634656&scoped=true&lang=css& ***!
- \***************************************************************************************************************/
-/***/ (function(__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_vue_loader_lib_index_js_vue_loader_options_UpdatePassword_vue_vue_type_style_index_0_id_66634656_scoped_true_lang_css___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/vue-loader/lib/index.js??vue-loader-options!./UpdatePassword.vue?vue&type=style&index=0&id=66634656&scoped=true&lang=css& */ "./node_modules/style-loader/dist/cjs.js!./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./core/src/components/login/UpdatePassword.vue?vue&type=style&index=0&id=66634656&scoped=true&lang=css&");
-
-
-/***/ }),
-
-/***/ "./node_modules/vue-material-design-icons/LockOpen.vue?vue&type=script&lang=js&":
-/*!**************************************************************************************!*\
- !*** ./node_modules/vue-material-design-icons/LockOpen.vue?vue&type=script&lang=js& ***!
- \**************************************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _vue_loader_lib_index_js_vue_loader_options_LockOpen_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/index.js??vue-loader-options!./LockOpen.vue?vue&type=script&lang=js& */ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/LockOpen.vue?vue&type=script&lang=js&");
- /* harmony default export */ __webpack_exports__["default"] = (_vue_loader_lib_index_js_vue_loader_options_LockOpen_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
-
-/***/ }),
-
-/***/ "./node_modules/vue-material-design-icons/LockOpen.vue?vue&type=template&id=2f5a5bc1&":
-/*!********************************************************************************************!*\
- !*** ./node_modules/vue-material-design-icons/LockOpen.vue?vue&type=template&id=2f5a5bc1& ***!
- \********************************************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ render: function() { return /* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_vue_loader_lib_index_js_vue_loader_options_LockOpen_vue_vue_type_template_id_2f5a5bc1___WEBPACK_IMPORTED_MODULE_0__.render; },
-/* harmony export */ staticRenderFns: function() { return /* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_vue_loader_lib_index_js_vue_loader_options_LockOpen_vue_vue_type_template_id_2f5a5bc1___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns; }
-/* harmony export */ });
-/* harmony import */ var _vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_vue_loader_lib_index_js_vue_loader_options_LockOpen_vue_vue_type_template_id_2f5a5bc1___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!../vue-loader/lib/index.js??vue-loader-options!./LockOpen.vue?vue&type=template&id=2f5a5bc1& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/LockOpen.vue?vue&type=template&id=2f5a5bc1&");
-
-
-/***/ }),
-
-/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/LockOpen.vue?vue&type=template&id=2f5a5bc1&":
-/*!************************************************************************************************************************************************************************************************************************************!*\
- !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/LockOpen.vue?vue&type=template&id=2f5a5bc1& ***!
- \************************************************************************************************************************************************************************************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ render: function() { return /* binding */ render; },
-/* harmony export */ staticRenderFns: function() { return /* binding */ staticRenderFns; }
-/* harmony export */ });
-var render = function render() {
- var _vm = this,
- _c = _vm._self._c
- return _c(
- "span",
- _vm._b(
- {
- staticClass: "material-design-icon lock-open-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,8A2,2 0 0,1 20,10V20A2,2 0 0,1 18,22H6C4.89,22 4,21.1 4,20V10A2,2 0 0,1 6,8H15V6A3,3 0 0,0 12,3A3,3 0 0,0 9,6H7A5,5 0 0,1 12,1A5,5 0 0,1 17,6V8H18M12,17A2,2 0 0,0 14,15A2,2 0 0,0 12,13A2,2 0 0,0 10,15A2,2 0 0,0 12,17Z",
- },
- },
- [_vm.title ? _c("title", [_vm._v(_vm._s(_vm.title))]) : _vm._e()]
- ),
- ]
- ),
- ]
- )
-}
-var staticRenderFns = []
-render._withStripped = true
-
-
-
-/***/ }),
-
-/***/ "?4f7e":
-/*!********************************!*\
- !*** ./util.inspect (ignored) ***!
- \********************************/
-/***/ (function() {
-
-/* (ignored) */
-
-/***/ }),
-
-/***/ "?ed1b":
-/*!**********************!*\
- !*** util (ignored) ***!
- \**********************/
-/***/ (function() {
-
-/* (ignored) */
-
-/***/ }),
-
-/***/ "?d17e":
-/*!**********************!*\
- !*** util (ignored) ***!
- \**********************/
-/***/ (function() {
-
-/* (ignored) */
-
-/***/ }),
-
-/***/ "./node_modules/decode-uri-component/index.js":
-/*!****************************************************!*\
- !*** ./node_modules/decode-uri-component/index.js ***!
- \****************************************************/
-/***/ (function(__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": function() { return /* binding */ decodeUriComponent; }
-/* harmony export */ });
-const token = '%[a-f0-9]{2}';
-const singleMatcher = new RegExp('(' + token + ')|([^%]+?)', 'gi');
-const multiMatcher = new RegExp('(' + token + ')+', 'gi');
-
-function decodeComponents(components, split) {
- try {
- // Try to decode the entire string first
- return [decodeURIComponent(components.join(''))];
- } catch {
- // Do nothing
- }
-
- if (components.length === 1) {
- return components;
- }
-
- split = split || 1;
-
- // Split the array in 2 parts
- const left = components.slice(0, split);
- const right = components.slice(split);
-
- return Array.prototype.concat.call([], decodeComponents(left), decodeComponents(right));
-}
-
-function decode(input) {
- try {
- return decodeURIComponent(input);
- } catch {
- let tokens = input.match(singleMatcher) || [];
-
- for (let i = 1; i < tokens.length; i++) {
- input = decodeComponents(tokens, i).join('');
-
- tokens = input.match(singleMatcher) || [];
- }
-
- return input;
- }
-}
-
-function customDecodeURIComponent(input) {
- // Keep track of all the replacements and prefill the map with the `BOM`
- const replaceMap = {
- '%FE%FF': '\uFFFD\uFFFD',
- '%FF%FE': '\uFFFD\uFFFD',
- };
-
- let match = multiMatcher.exec(input);
- while (match) {
- try {
- // Decode as big chunks as possible
- replaceMap[match[0]] = decodeURIComponent(match[0]);
- } catch {
- const result = decode(match[0]);
-
- if (result !== match[0]) {
- replaceMap[match[0]] = result;
- }
- }
-
- match = multiMatcher.exec(input);
- }
-
- // Add `%C2` at the end of the map to make sure it does not replace the combinator before everything else
- replaceMap['%C2'] = '\uFFFD';
-
- const entries = Object.keys(replaceMap);
-
- for (const key of entries) {
- // Replace all decoded components
- input = input.replace(new RegExp(key, 'g'), replaceMap[key]);
- }
-
- return input;
-}
-
-function decodeUriComponent(encodedURI) {
- if (typeof encodedURI !== 'string') {
- throw new TypeError('Expected `encodedURI` to be of type `string`, got `' + typeof encodedURI + '`');
- }
-
- try {
- // Try the built in decoder first
- return decodeURIComponent(encodedURI);
- } catch {
- // Fallback to a more advanced decoder
- return customDecodeURIComponent(encodedURI);
- }
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/query-string/base.js":
-/*!*******************************************!*\
- !*** ./node_modules/query-string/base.js ***!
- \*******************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ exclude: function() { return /* binding */ exclude; },
-/* harmony export */ extract: function() { return /* binding */ extract; },
-/* harmony export */ parse: function() { return /* binding */ parse; },
-/* harmony export */ parseUrl: function() { return /* binding */ parseUrl; },
-/* harmony export */ pick: function() { return /* binding */ pick; },
-/* harmony export */ stringify: function() { return /* binding */ stringify; },
-/* harmony export */ stringifyUrl: function() { return /* binding */ stringifyUrl; }
-/* harmony export */ });
-/* harmony import */ var decode_uri_component__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! decode-uri-component */ "./node_modules/decode-uri-component/index.js");
-/* harmony import */ var split_on_first__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! split-on-first */ "./node_modules/split-on-first/index.js");
-/* harmony import */ var filter_obj__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! filter-obj */ "./node_modules/query-string/node_modules/filter-obj/index.js");
-
-
-
-
-const isNullOrUndefined = value => value === null || value === undefined;
-
-// eslint-disable-next-line unicorn/prefer-code-point
-const strictUriEncode = string => encodeURIComponent(string).replace(/[!'()*]/g, x => `%${x.charCodeAt(0).toString(16).toUpperCase()}`);
-
-const encodeFragmentIdentifier = Symbol('encodeFragmentIdentifier');
-
-function encoderForArrayFormat(options) {
- switch (options.arrayFormat) {
- case 'index': {
- return key => (result, value) => {
- const index = result.length;
-
- if (
- value === undefined
- || (options.skipNull && value === null)
- || (options.skipEmptyString && value === '')
- ) {
- return result;
- }
-
- if (value === null) {
- return [
- ...result, [encode(key, options), '[', index, ']'].join(''),
- ];
- }
-
- return [
- ...result,
- [encode(key, options), '[', encode(index, options), ']=', encode(value, options)].join(''),
- ];
- };
- }
-
- case 'bracket': {
- return key => (result, value) => {
- if (
- value === undefined
- || (options.skipNull && value === null)
- || (options.skipEmptyString && value === '')
- ) {
- return result;
- }
-
- if (value === null) {
- return [
- ...result,
- [encode(key, options), '[]'].join(''),
- ];
- }
-
- return [
- ...result,
- [encode(key, options), '[]=', encode(value, options)].join(''),
- ];
- };
- }
-
- case 'colon-list-separator': {
- return key => (result, value) => {
- if (
- value === undefined
- || (options.skipNull && value === null)
- || (options.skipEmptyString && value === '')
- ) {
- return result;
- }
-
- if (value === null) {
- return [
- ...result,
- [encode(key, options), ':list='].join(''),
- ];
- }
-
- return [
- ...result,
- [encode(key, options), ':list=', encode(value, options)].join(''),
- ];
- };
- }
-
- case 'comma':
- case 'separator':
- case 'bracket-separator': {
- const keyValueSep = options.arrayFormat === 'bracket-separator'
- ? '[]='
- : '=';
-
- return key => (result, value) => {
- if (
- value === undefined
- || (options.skipNull && value === null)
- || (options.skipEmptyString && value === '')
- ) {
- return result;
- }
-
- // Translate null to an empty string so that it doesn't serialize as 'null'
- value = value === null ? '' : value;
-
- if (result.length === 0) {
- return [[encode(key, options), keyValueSep, encode(value, options)].join('')];
- }
-
- return [[result, encode(value, options)].join(options.arrayFormatSeparator)];
- };
- }
-
- default: {
- return key => (result, value) => {
- if (
- value === undefined
- || (options.skipNull && value === null)
- || (options.skipEmptyString && value === '')
- ) {
- return result;
- }
-
- if (value === null) {
- return [
- ...result,
- encode(key, options),
- ];
- }
-
- return [
- ...result,
- [encode(key, options), '=', encode(value, options)].join(''),
- ];
- };
- }
- }
-}
-
-function parserForArrayFormat(options) {
- let result;
-
- switch (options.arrayFormat) {
- case 'index': {
- return (key, value, accumulator) => {
- result = /\[(\d*)]$/.exec(key);
-
- key = key.replace(/\[\d*]$/, '');
-
- if (!result) {
- accumulator[key] = value;
- return;
- }
-
- if (accumulator[key] === undefined) {
- accumulator[key] = {};
- }
-
- accumulator[key][result[1]] = value;
- };
- }
-
- case 'bracket': {
- return (key, value, accumulator) => {
- result = /(\[])$/.exec(key);
- key = key.replace(/\[]$/, '');
-
- if (!result) {
- accumulator[key] = value;
- return;
- }
-
- if (accumulator[key] === undefined) {
- accumulator[key] = [value];
- return;
- }
-
- accumulator[key] = [...accumulator[key], value];
- };
- }
-
- case 'colon-list-separator': {
- return (key, value, accumulator) => {
- result = /(:list)$/.exec(key);
- key = key.replace(/:list$/, '');
-
- if (!result) {
- accumulator[key] = value;
- return;
- }
-
- if (accumulator[key] === undefined) {
- accumulator[key] = [value];
- return;
- }
-
- accumulator[key] = [...accumulator[key], value];
- };
- }
-
- case 'comma':
- case 'separator': {
- return (key, value, accumulator) => {
- const isArray = typeof value === 'string' && value.includes(options.arrayFormatSeparator);
- const isEncodedArray = (typeof value === 'string' && !isArray && decode(value, options).includes(options.arrayFormatSeparator));
- value = isEncodedArray ? decode(value, options) : value;
- const newValue = isArray || isEncodedArray ? value.split(options.arrayFormatSeparator).map(item => decode(item, options)) : (value === null ? value : decode(value, options));
- accumulator[key] = newValue;
- };
- }
-
- case 'bracket-separator': {
- return (key, value, accumulator) => {
- const isArray = /(\[])$/.test(key);
- key = key.replace(/\[]$/, '');
-
- if (!isArray) {
- accumulator[key] = value ? decode(value, options) : value;
- return;
- }
-
- const arrayValue = value === null
- ? []
- : value.split(options.arrayFormatSeparator).map(item => decode(item, options));
-
- if (accumulator[key] === undefined) {
- accumulator[key] = arrayValue;
- return;
- }
-
- accumulator[key] = [...accumulator[key], ...arrayValue];
- };
- }
-
- default: {
- return (key, value, accumulator) => {
- if (accumulator[key] === undefined) {
- accumulator[key] = value;
- return;
- }
-
- accumulator[key] = [...[accumulator[key]].flat(), value];
- };
- }
- }
-}
-
-function validateArrayFormatSeparator(value) {
- if (typeof value !== 'string' || value.length !== 1) {
- throw new TypeError('arrayFormatSeparator must be single character string');
- }
-}
-
-function encode(value, options) {
- if (options.encode) {
- return options.strict ? strictUriEncode(value) : encodeURIComponent(value);
- }
-
- return value;
-}
-
-function decode(value, options) {
- if (options.decode) {
- return (0,decode_uri_component__WEBPACK_IMPORTED_MODULE_0__["default"])(value);
- }
-
- return value;
-}
-
-function keysSorter(input) {
- if (Array.isArray(input)) {
- return input.sort();
- }
-
- if (typeof input === 'object') {
- return keysSorter(Object.keys(input))
- .sort((a, b) => Number(a) - Number(b))
- .map(key => input[key]);
- }
-
- return input;
-}
-
-function removeHash(input) {
- const hashStart = input.indexOf('#');
- if (hashStart !== -1) {
- input = input.slice(0, hashStart);
- }
-
- return input;
-}
-
-function getHash(url) {
- let hash = '';
- const hashStart = url.indexOf('#');
- if (hashStart !== -1) {
- hash = url.slice(hashStart);
- }
-
- return hash;
-}
-
-function parseValue(value, options) {
- if (options.parseNumbers && !Number.isNaN(Number(value)) && (typeof value === 'string' && value.trim() !== '')) {
- value = Number(value);
- } else if (options.parseBooleans && value !== null && (value.toLowerCase() === 'true' || value.toLowerCase() === 'false')) {
- value = value.toLowerCase() === 'true';
- }
-
- return value;
-}
-
-function extract(input) {
- input = removeHash(input);
- const queryStart = input.indexOf('?');
- if (queryStart === -1) {
- return '';
- }
-
- return input.slice(queryStart + 1);
-}
-
-function parse(query, options) {
- options = {
- decode: true,
- sort: true,
- arrayFormat: 'none',
- arrayFormatSeparator: ',',
- parseNumbers: false,
- parseBooleans: false,
- ...options,
- };
-
- validateArrayFormatSeparator(options.arrayFormatSeparator);
-
- const formatter = parserForArrayFormat(options);
-
- // Create an object with no prototype
- const returnValue = Object.create(null);
-
- if (typeof query !== 'string') {
- return returnValue;
- }
-
- query = query.trim().replace(/^[?#&]/, '');
-
- if (!query) {
- return returnValue;
- }
-
- for (const parameter of query.split('&')) {
- if (parameter === '') {
- continue;
- }
-
- const parameter_ = options.decode ? parameter.replace(/\+/g, ' ') : parameter;
-
- let [key, value] = (0,split_on_first__WEBPACK_IMPORTED_MODULE_1__["default"])(parameter_, '=');
-
- if (key === undefined) {
- key = parameter_;
- }
-
- // Missing `=` should be `null`:
- // http://w3.org/TR/2012/WD-url-20120524/#collect-url-parameters
- value = value === undefined ? null : (['comma', 'separator', 'bracket-separator'].includes(options.arrayFormat) ? value : decode(value, options));
- formatter(decode(key, options), value, returnValue);
- }
-
- for (const [key, value] of Object.entries(returnValue)) {
- if (typeof value === 'object' && value !== null) {
- for (const [key2, value2] of Object.entries(value)) {
- value[key2] = parseValue(value2, options);
- }
- } else {
- returnValue[key] = parseValue(value, options);
- }
- }
-
- if (options.sort === false) {
- return returnValue;
- }
-
- // TODO: Remove the use of `reduce`.
- // eslint-disable-next-line unicorn/no-array-reduce
- return (options.sort === true ? Object.keys(returnValue).sort() : Object.keys(returnValue).sort(options.sort)).reduce((result, key) => {
- const value = returnValue[key];
- if (Boolean(value) && typeof value === 'object' && !Array.isArray(value)) {
- // Sort object keys, not values
- result[key] = keysSorter(value);
- } else {
- result[key] = value;
- }
-
- return result;
- }, Object.create(null));
-}
-
-function stringify(object, options) {
- if (!object) {
- return '';
- }
-
- options = {encode: true,
- strict: true,
- arrayFormat: 'none',
- arrayFormatSeparator: ',', ...options};
-
- validateArrayFormatSeparator(options.arrayFormatSeparator);
-
- const shouldFilter = key => (
- (options.skipNull && isNullOrUndefined(object[key]))
- || (options.skipEmptyString && object[key] === '')
- );
-
- const formatter = encoderForArrayFormat(options);
-
- const objectCopy = {};
-
- for (const [key, value] of Object.entries(object)) {
- if (!shouldFilter(key)) {
- objectCopy[key] = value;
- }
- }
-
- const keys = Object.keys(objectCopy);
-
- if (options.sort !== false) {
- keys.sort(options.sort);
- }
-
- return keys.map(key => {
- const value = object[key];
-
- if (value === undefined) {
- return '';
- }
-
- if (value === null) {
- return encode(key, options);
- }
-
- if (Array.isArray(value)) {
- if (value.length === 0 && options.arrayFormat === 'bracket-separator') {
- return encode(key, options) + '[]';
- }
-
- return value
- .reduce(formatter(key), [])
- .join('&');
- }
-
- return encode(key, options) + '=' + encode(value, options);
- }).filter(x => x.length > 0).join('&');
-}
-
-function parseUrl(url, options) {
- options = {
- decode: true,
- ...options,
- };
-
- let [url_, hash] = (0,split_on_first__WEBPACK_IMPORTED_MODULE_1__["default"])(url, '#');
-
- if (url_ === undefined) {
- url_ = url;
- }
-
- return {
- url: url_?.split('?')?.[0] ?? '',
- query: parse(extract(url), options),
- ...(options && options.parseFragmentIdentifier && hash ? {fragmentIdentifier: decode(hash, options)} : {}),
- };
-}
-
-function stringifyUrl(object, options) {
- options = {
- encode: true,
- strict: true,
- [encodeFragmentIdentifier]: true,
- ...options,
- };
-
- const url = removeHash(object.url).split('?')[0] || '';
- const queryFromUrl = extract(object.url);
-
- const query = {
- ...parse(queryFromUrl, {sort: false}),
- ...object.query,
- };
-
- let queryString = stringify(query, options);
- if (queryString) {
- queryString = `?${queryString}`;
- }
-
- let hash = getHash(object.url);
- if (object.fragmentIdentifier) {
- const urlObjectForFragmentEncode = new URL(url);
- urlObjectForFragmentEncode.hash = object.fragmentIdentifier;
- hash = options[encodeFragmentIdentifier] ? urlObjectForFragmentEncode.hash : `#${object.fragmentIdentifier}`;
- }
-
- return `${url}${queryString}${hash}`;
-}
-
-function pick(input, filter, options) {
- options = {
- parseFragmentIdentifier: true,
- [encodeFragmentIdentifier]: false,
- ...options,
- };
-
- const {url, query, fragmentIdentifier} = parseUrl(input, options);
-
- return stringifyUrl({
- url,
- query: (0,filter_obj__WEBPACK_IMPORTED_MODULE_2__.includeKeys)(query, filter),
- fragmentIdentifier,
- }, options);
-}
-
-function exclude(input, filter, options) {
- const exclusionFilter = Array.isArray(filter) ? key => !filter.includes(key) : (key, value) => !filter(key, value);
-
- return pick(input, exclusionFilter, options);
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/query-string/index.js":
-/*!********************************************!*\
- !*** ./node_modules/query-string/index.js ***!
- \********************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _base_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./base.js */ "./node_modules/query-string/base.js");
-
-
-/* harmony default export */ __webpack_exports__["default"] = (_base_js__WEBPACK_IMPORTED_MODULE_0__);
-
-
-/***/ }),
-
-/***/ "./node_modules/query-string/node_modules/filter-obj/index.js":
-/*!********************************************************************!*\
- !*** ./node_modules/query-string/node_modules/filter-obj/index.js ***!
- \********************************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ excludeKeys: function() { return /* binding */ excludeKeys; },
-/* harmony export */ includeKeys: function() { return /* binding */ includeKeys; }
-/* harmony export */ });
-function includeKeys(object, predicate) {
- const result = {};
-
- if (Array.isArray(predicate)) {
- for (const key of predicate) {
- const descriptor = Object.getOwnPropertyDescriptor(object, key);
- if (descriptor?.enumerable) {
- Object.defineProperty(result, key, descriptor);
- }
- }
- } else {
- // `Reflect.ownKeys()` is required to retrieve symbol properties
- for (const key of Reflect.ownKeys(object)) {
- const descriptor = Object.getOwnPropertyDescriptor(object, key);
- if (descriptor.enumerable) {
- const value = object[key];
- if (predicate(key, value, object)) {
- Object.defineProperty(result, key, descriptor);
- }
- }
- }
- }
-
- return result;
-}
-
-function excludeKeys(object, predicate) {
- if (Array.isArray(predicate)) {
- const set = new Set(predicate);
- return includeKeys(object, key => !set.has(key));
- }
-
- return includeKeys(object, (key, value, object) => !predicate(key, value, object));
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/split-on-first/index.js":
-/*!**********************************************!*\
- !*** ./node_modules/split-on-first/index.js ***!
- \**********************************************/
-/***/ (function(__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": function() { return /* binding */ splitOnFirst; }
-/* harmony export */ });
-function splitOnFirst(string, separator) {
- if (!(typeof string === 'string' && typeof separator === 'string')) {
- throw new TypeError('Expected the arguments to be of type `string`');
- }
-
- if (string === '' || separator === '') {
- return [];
- }
-
- const separatorIndex = string.indexOf(separator);
-
- if (separatorIndex === -1) {
- return [];
- }
-
- return [
- string.slice(0, separatorIndex),
- string.slice(separatorIndex + separator.length)
- ];
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/_baseCreate.js":
-/*!********************************************************!*\
- !*** ./node_modules/underscore/modules/_baseCreate.js ***!
- \********************************************************/
-/***/ (function(__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": function() { return /* binding */ baseCreate; }
-/* harmony export */ });
-/* harmony import */ var _isObject_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./isObject.js */ "./node_modules/underscore/modules/isObject.js");
-/* harmony import */ var _setup_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./_setup.js */ "./node_modules/underscore/modules/_setup.js");
-
-
-
-// Create a naked function reference for surrogate-prototype-swapping.
-function ctor() {
- return function(){};
-}
-
-// An internal function for creating a new object that inherits from another.
-function baseCreate(prototype) {
- if (!(0,_isObject_js__WEBPACK_IMPORTED_MODULE_0__["default"])(prototype)) return {};
- if (_setup_js__WEBPACK_IMPORTED_MODULE_1__.nativeCreate) return (0,_setup_js__WEBPACK_IMPORTED_MODULE_1__.nativeCreate)(prototype);
- var Ctor = ctor();
- Ctor.prototype = prototype;
- var result = new Ctor;
- Ctor.prototype = null;
- return result;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/_baseIteratee.js":
-/*!**********************************************************!*\
- !*** ./node_modules/underscore/modules/_baseIteratee.js ***!
- \**********************************************************/
-/***/ (function(__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": function() { return /* binding */ baseIteratee; }
-/* harmony export */ });
-/* harmony import */ var _identity_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./identity.js */ "./node_modules/underscore/modules/identity.js");
-/* harmony import */ var _isFunction_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./isFunction.js */ "./node_modules/underscore/modules/isFunction.js");
-/* harmony import */ var _isObject_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./isObject.js */ "./node_modules/underscore/modules/isObject.js");
-/* harmony import */ var _isArray_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./isArray.js */ "./node_modules/underscore/modules/isArray.js");
-/* harmony import */ var _matcher_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./matcher.js */ "./node_modules/underscore/modules/matcher.js");
-/* harmony import */ var _property_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./property.js */ "./node_modules/underscore/modules/property.js");
-/* harmony import */ var _optimizeCb_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./_optimizeCb.js */ "./node_modules/underscore/modules/_optimizeCb.js");
-
-
-
-
-
-
-
-
-// An internal function to generate callbacks that can be applied to each
-// element in a collection, returning the desired result — either `_.identity`,
-// an arbitrary callback, a property matcher, or a property accessor.
-function baseIteratee(value, context, argCount) {
- if (value == null) return _identity_js__WEBPACK_IMPORTED_MODULE_0__["default"];
- if ((0,_isFunction_js__WEBPACK_IMPORTED_MODULE_1__["default"])(value)) return (0,_optimizeCb_js__WEBPACK_IMPORTED_MODULE_6__["default"])(value, context, argCount);
- if ((0,_isObject_js__WEBPACK_IMPORTED_MODULE_2__["default"])(value) && !(0,_isArray_js__WEBPACK_IMPORTED_MODULE_3__["default"])(value)) return (0,_matcher_js__WEBPACK_IMPORTED_MODULE_4__["default"])(value);
- return (0,_property_js__WEBPACK_IMPORTED_MODULE_5__["default"])(value);
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/_cb.js":
-/*!************************************************!*\
- !*** ./node_modules/underscore/modules/_cb.js ***!
- \************************************************/
-/***/ (function(__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": function() { return /* binding */ cb; }
-/* harmony export */ });
-/* harmony import */ var _underscore_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./underscore.js */ "./node_modules/underscore/modules/underscore.js");
-/* harmony import */ var _baseIteratee_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./_baseIteratee.js */ "./node_modules/underscore/modules/_baseIteratee.js");
-/* harmony import */ var _iteratee_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./iteratee.js */ "./node_modules/underscore/modules/iteratee.js");
-
-
-
-
-// The function we call internally to generate a callback. It invokes
-// `_.iteratee` if overridden, otherwise `baseIteratee`.
-function cb(value, context, argCount) {
- if (_underscore_js__WEBPACK_IMPORTED_MODULE_0__["default"].iteratee !== _iteratee_js__WEBPACK_IMPORTED_MODULE_2__["default"]) return _underscore_js__WEBPACK_IMPORTED_MODULE_0__["default"].iteratee(value, context);
- return (0,_baseIteratee_js__WEBPACK_IMPORTED_MODULE_1__["default"])(value, context, argCount);
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/_chainResult.js":
-/*!*********************************************************!*\
- !*** ./node_modules/underscore/modules/_chainResult.js ***!
- \*********************************************************/
-/***/ (function(__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": function() { return /* binding */ chainResult; }
-/* harmony export */ });
-/* harmony import */ var _underscore_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./underscore.js */ "./node_modules/underscore/modules/underscore.js");
-
-
-// Helper function to continue chaining intermediate results.
-function chainResult(instance, obj) {
- return instance._chain ? (0,_underscore_js__WEBPACK_IMPORTED_MODULE_0__["default"])(obj).chain() : obj;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/_collectNonEnumProps.js":
-/*!*****************************************************************!*\
- !*** ./node_modules/underscore/modules/_collectNonEnumProps.js ***!
- \*****************************************************************/
-/***/ (function(__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": function() { return /* binding */ collectNonEnumProps; }
-/* harmony export */ });
-/* harmony import */ var _setup_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_setup.js */ "./node_modules/underscore/modules/_setup.js");
-/* harmony import */ var _isFunction_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./isFunction.js */ "./node_modules/underscore/modules/isFunction.js");
-/* harmony import */ var _has_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./_has.js */ "./node_modules/underscore/modules/_has.js");
-
-
-
-
-// Internal helper to create a simple lookup structure.
-// `collectNonEnumProps` used to depend on `_.contains`, but this led to
-// circular imports. `emulatedSet` is a one-off solution that only works for
-// arrays of strings.
-function emulatedSet(keys) {
- var hash = {};
- for (var l = keys.length, i = 0; i < l; ++i) hash[keys[i]] = true;
- return {
- contains: function(key) { return hash[key] === true; },
- push: function(key) {
- hash[key] = true;
- return keys.push(key);
- }
- };
-}
-
-// Internal helper. Checks `keys` for the presence of keys in IE < 9 that won't
-// be iterated by `for key in ...` and thus missed. Extends `keys` in place if
-// needed.
-function collectNonEnumProps(obj, keys) {
- keys = emulatedSet(keys);
- var nonEnumIdx = _setup_js__WEBPACK_IMPORTED_MODULE_0__.nonEnumerableProps.length;
- var constructor = obj.constructor;
- var proto = ((0,_isFunction_js__WEBPACK_IMPORTED_MODULE_1__["default"])(constructor) && constructor.prototype) || _setup_js__WEBPACK_IMPORTED_MODULE_0__.ObjProto;
-
- // Constructor is a special case.
- var prop = 'constructor';
- if ((0,_has_js__WEBPACK_IMPORTED_MODULE_2__["default"])(obj, prop) && !keys.contains(prop)) keys.push(prop);
-
- while (nonEnumIdx--) {
- prop = _setup_js__WEBPACK_IMPORTED_MODULE_0__.nonEnumerableProps[nonEnumIdx];
- if (prop in obj && obj[prop] !== proto[prop] && !keys.contains(prop)) {
- keys.push(prop);
- }
- }
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/_createAssigner.js":
-/*!************************************************************!*\
- !*** ./node_modules/underscore/modules/_createAssigner.js ***!
- \************************************************************/
-/***/ (function(__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": function() { return /* binding */ createAssigner; }
-/* harmony export */ });
-// An internal function for creating assigner functions.
-function createAssigner(keysFunc, defaults) {
- return function(obj) {
- var length = arguments.length;
- if (defaults) obj = Object(obj);
- if (length < 2 || obj == null) return obj;
- for (var index = 1; index < length; index++) {
- var source = arguments[index],
- keys = keysFunc(source),
- l = keys.length;
- for (var i = 0; i < l; i++) {
- var key = keys[i];
- if (!defaults || obj[key] === void 0) obj[key] = source[key];
- }
- }
- return obj;
- };
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/_createEscaper.js":
-/*!***********************************************************!*\
- !*** ./node_modules/underscore/modules/_createEscaper.js ***!
- \***********************************************************/
-/***/ (function(__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": function() { return /* binding */ createEscaper; }
-/* harmony export */ });
-/* harmony import */ var _keys_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./keys.js */ "./node_modules/underscore/modules/keys.js");
-
-
-// Internal helper to generate functions for escaping and unescaping strings
-// to/from HTML interpolation.
-function createEscaper(map) {
- var escaper = function(match) {
- return map[match];
- };
- // Regexes for identifying a key that needs to be escaped.
- var source = '(?:' + (0,_keys_js__WEBPACK_IMPORTED_MODULE_0__["default"])(map).join('|') + ')';
- var testRegexp = RegExp(source);
- var replaceRegexp = RegExp(source, 'g');
- return function(string) {
- string = string == null ? '' : '' + string;
- return testRegexp.test(string) ? string.replace(replaceRegexp, escaper) : string;
- };
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/_createIndexFinder.js":
-/*!***************************************************************!*\
- !*** ./node_modules/underscore/modules/_createIndexFinder.js ***!
- \***************************************************************/
-/***/ (function(__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": function() { return /* binding */ createIndexFinder; }
-/* harmony export */ });
-/* harmony import */ var _getLength_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_getLength.js */ "./node_modules/underscore/modules/_getLength.js");
-/* harmony import */ var _setup_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./_setup.js */ "./node_modules/underscore/modules/_setup.js");
-/* harmony import */ var _isNaN_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./isNaN.js */ "./node_modules/underscore/modules/isNaN.js");
-
-
-
-
-// Internal function to generate the `_.indexOf` and `_.lastIndexOf` functions.
-function createIndexFinder(dir, predicateFind, sortedIndex) {
- return function(array, item, idx) {
- var i = 0, length = (0,_getLength_js__WEBPACK_IMPORTED_MODULE_0__["default"])(array);
- if (typeof idx == 'number') {
- if (dir > 0) {
- i = idx >= 0 ? idx : Math.max(idx + length, i);
- } else {
- length = idx >= 0 ? Math.min(idx + 1, length) : idx + length + 1;
- }
- } else if (sortedIndex && idx && length) {
- idx = sortedIndex(array, item);
- return array[idx] === item ? idx : -1;
- }
- if (item !== item) {
- idx = predicateFind(_setup_js__WEBPACK_IMPORTED_MODULE_1__.slice.call(array, i, length), _isNaN_js__WEBPACK_IMPORTED_MODULE_2__["default"]);
- return idx >= 0 ? idx + i : -1;
- }
- for (idx = dir > 0 ? i : length - 1; idx >= 0 && idx < length; idx += dir) {
- if (array[idx] === item) return idx;
- }
- return -1;
- };
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/_createPredicateIndexFinder.js":
-/*!************************************************************************!*\
- !*** ./node_modules/underscore/modules/_createPredicateIndexFinder.js ***!
- \************************************************************************/
-/***/ (function(__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": function() { return /* binding */ createPredicateIndexFinder; }
-/* harmony export */ });
-/* harmony import */ var _cb_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_cb.js */ "./node_modules/underscore/modules/_cb.js");
-/* harmony import */ var _getLength_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./_getLength.js */ "./node_modules/underscore/modules/_getLength.js");
-
-
-
-// Internal function to generate `_.findIndex` and `_.findLastIndex`.
-function createPredicateIndexFinder(dir) {
- return function(array, predicate, context) {
- predicate = (0,_cb_js__WEBPACK_IMPORTED_MODULE_0__["default"])(predicate, context);
- var length = (0,_getLength_js__WEBPACK_IMPORTED_MODULE_1__["default"])(array);
- var index = dir > 0 ? 0 : length - 1;
- for (; index >= 0 && index < length; index += dir) {
- if (predicate(array[index], index, array)) return index;
- }
- return -1;
- };
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/_createReduce.js":
-/*!**********************************************************!*\
- !*** ./node_modules/underscore/modules/_createReduce.js ***!
- \**********************************************************/
-/***/ (function(__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": function() { return /* binding */ createReduce; }
-/* harmony export */ });
-/* harmony import */ var _isArrayLike_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_isArrayLike.js */ "./node_modules/underscore/modules/_isArrayLike.js");
-/* harmony import */ var _keys_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./keys.js */ "./node_modules/underscore/modules/keys.js");
-/* harmony import */ var _optimizeCb_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./_optimizeCb.js */ "./node_modules/underscore/modules/_optimizeCb.js");
-
-
-
-
-// Internal helper to create a reducing function, iterating left or right.
-function createReduce(dir) {
- // Wrap code that reassigns argument variables in a separate function than
- // the one that accesses `arguments.length` to avoid a perf hit. (#1991)
- var reducer = function(obj, iteratee, memo, initial) {
- var _keys = !(0,_isArrayLike_js__WEBPACK_IMPORTED_MODULE_0__["default"])(obj) && (0,_keys_js__WEBPACK_IMPORTED_MODULE_1__["default"])(obj),
- length = (_keys || obj).length,
- index = dir > 0 ? 0 : length - 1;
- if (!initial) {
- memo = obj[_keys ? _keys[index] : index];
- index += dir;
- }
- for (; index >= 0 && index < length; index += dir) {
- var currentKey = _keys ? _keys[index] : index;
- memo = iteratee(memo, obj[currentKey], currentKey, obj);
- }
- return memo;
- };
-
- return function(obj, iteratee, memo, context) {
- var initial = arguments.length >= 3;
- return reducer(obj, (0,_optimizeCb_js__WEBPACK_IMPORTED_MODULE_2__["default"])(iteratee, context, 4), memo, initial);
- };
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/_createSizePropertyCheck.js":
-/*!*********************************************************************!*\
- !*** ./node_modules/underscore/modules/_createSizePropertyCheck.js ***!
- \*********************************************************************/
-/***/ (function(__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": function() { return /* binding */ createSizePropertyCheck; }
-/* harmony export */ });
-/* harmony import */ var _setup_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_setup.js */ "./node_modules/underscore/modules/_setup.js");
-
-
-// Common internal logic for `isArrayLike` and `isBufferLike`.
-function createSizePropertyCheck(getSizeProperty) {
- return function(collection) {
- var sizeProperty = getSizeProperty(collection);
- return typeof sizeProperty == 'number' && sizeProperty >= 0 && sizeProperty <= _setup_js__WEBPACK_IMPORTED_MODULE_0__.MAX_ARRAY_INDEX;
- }
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/_deepGet.js":
-/*!*****************************************************!*\
- !*** ./node_modules/underscore/modules/_deepGet.js ***!
- \*****************************************************/
-/***/ (function(__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": function() { return /* binding */ deepGet; }
-/* harmony export */ });
-// Internal function to obtain a nested property in `obj` along `path`.
-function deepGet(obj, path) {
- var length = path.length;
- for (var i = 0; i < length; i++) {
- if (obj == null) return void 0;
- obj = obj[path[i]];
- }
- return length ? obj : void 0;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/_escapeMap.js":
-/*!*******************************************************!*\
- !*** ./node_modules/underscore/modules/_escapeMap.js ***!
- \*******************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-// Internal list of HTML entities for escaping.
-/* harmony default export */ __webpack_exports__["default"] = ({
- '&': '&amp;',
- '<': '&lt;',
- '>': '&gt;',
- '"': '&quot;',
- "'": '&#x27;',
- '`': '&#x60;'
-});
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/_executeBound.js":
-/*!**********************************************************!*\
- !*** ./node_modules/underscore/modules/_executeBound.js ***!
- \**********************************************************/
-/***/ (function(__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": function() { return /* binding */ executeBound; }
-/* harmony export */ });
-/* harmony import */ var _baseCreate_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_baseCreate.js */ "./node_modules/underscore/modules/_baseCreate.js");
-/* harmony import */ var _isObject_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./isObject.js */ "./node_modules/underscore/modules/isObject.js");
-
-
-
-// Internal function to execute `sourceFunc` bound to `context` with optional
-// `args`. Determines whether to execute a function as a constructor or as a
-// normal function.
-function executeBound(sourceFunc, boundFunc, context, callingContext, args) {
- if (!(callingContext instanceof boundFunc)) return sourceFunc.apply(context, args);
- var self = (0,_baseCreate_js__WEBPACK_IMPORTED_MODULE_0__["default"])(sourceFunc.prototype);
- var result = sourceFunc.apply(self, args);
- if ((0,_isObject_js__WEBPACK_IMPORTED_MODULE_1__["default"])(result)) return result;
- return self;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/_flatten.js":
-/*!*****************************************************!*\
- !*** ./node_modules/underscore/modules/_flatten.js ***!
- \*****************************************************/
-/***/ (function(__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": function() { return /* binding */ flatten; }
-/* harmony export */ });
-/* harmony import */ var _getLength_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_getLength.js */ "./node_modules/underscore/modules/_getLength.js");
-/* harmony import */ var _isArrayLike_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./_isArrayLike.js */ "./node_modules/underscore/modules/_isArrayLike.js");
-/* harmony import */ var _isArray_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./isArray.js */ "./node_modules/underscore/modules/isArray.js");
-/* harmony import */ var _isArguments_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./isArguments.js */ "./node_modules/underscore/modules/isArguments.js");
-
-
-
-
-
-// Internal implementation of a recursive `flatten` function.
-function flatten(input, depth, strict, output) {
- output = output || [];
- if (!depth && depth !== 0) {
- depth = Infinity;
- } else if (depth <= 0) {
- return output.concat(input);
- }
- var idx = output.length;
- for (var i = 0, length = (0,_getLength_js__WEBPACK_IMPORTED_MODULE_0__["default"])(input); i < length; i++) {
- var value = input[i];
- if ((0,_isArrayLike_js__WEBPACK_IMPORTED_MODULE_1__["default"])(value) && ((0,_isArray_js__WEBPACK_IMPORTED_MODULE_2__["default"])(value) || (0,_isArguments_js__WEBPACK_IMPORTED_MODULE_3__["default"])(value))) {
- // Flatten current level of array or arguments object.
- if (depth > 1) {
- flatten(value, depth - 1, strict, output);
- idx = output.length;
- } else {
- var j = 0, len = value.length;
- while (j < len) output[idx++] = value[j++];
- }
- } else if (!strict) {
- output[idx++] = value;
- }
- }
- return output;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/_getByteLength.js":
-/*!***********************************************************!*\
- !*** ./node_modules/underscore/modules/_getByteLength.js ***!
- \***********************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _shallowProperty_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_shallowProperty.js */ "./node_modules/underscore/modules/_shallowProperty.js");
-
-
-// Internal helper to obtain the `byteLength` property of an object.
-/* harmony default export */ __webpack_exports__["default"] = ((0,_shallowProperty_js__WEBPACK_IMPORTED_MODULE_0__["default"])('byteLength'));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/_getLength.js":
-/*!*******************************************************!*\
- !*** ./node_modules/underscore/modules/_getLength.js ***!
- \*******************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _shallowProperty_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_shallowProperty.js */ "./node_modules/underscore/modules/_shallowProperty.js");
-
-
-// Internal helper to obtain the `length` property of an object.
-/* harmony default export */ __webpack_exports__["default"] = ((0,_shallowProperty_js__WEBPACK_IMPORTED_MODULE_0__["default"])('length'));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/_group.js":
-/*!***************************************************!*\
- !*** ./node_modules/underscore/modules/_group.js ***!
- \***************************************************/
-/***/ (function(__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": function() { return /* binding */ group; }
-/* harmony export */ });
-/* harmony import */ var _cb_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_cb.js */ "./node_modules/underscore/modules/_cb.js");
-/* harmony import */ var _each_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./each.js */ "./node_modules/underscore/modules/each.js");
-
-
-
-// An internal function used for aggregate "group by" operations.
-function group(behavior, partition) {
- return function(obj, iteratee, context) {
- var result = partition ? [[], []] : {};
- iteratee = (0,_cb_js__WEBPACK_IMPORTED_MODULE_0__["default"])(iteratee, context);
- (0,_each_js__WEBPACK_IMPORTED_MODULE_1__["default"])(obj, function(value, index) {
- var key = iteratee(value, index, obj);
- behavior(result, value, key);
- });
- return result;
- };
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/_has.js":
-/*!*************************************************!*\
- !*** ./node_modules/underscore/modules/_has.js ***!
- \*************************************************/
-/***/ (function(__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": function() { return /* binding */ has; }
-/* harmony export */ });
-/* harmony import */ var _setup_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_setup.js */ "./node_modules/underscore/modules/_setup.js");
-
-
-// Internal function to check whether `key` is an own property name of `obj`.
-function has(obj, key) {
- return obj != null && _setup_js__WEBPACK_IMPORTED_MODULE_0__.hasOwnProperty.call(obj, key);
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/_hasObjectTag.js":
-/*!**********************************************************!*\
- !*** ./node_modules/underscore/modules/_hasObjectTag.js ***!
- \**********************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _tagTester_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_tagTester.js */ "./node_modules/underscore/modules/_tagTester.js");
-
-
-/* harmony default export */ __webpack_exports__["default"] = ((0,_tagTester_js__WEBPACK_IMPORTED_MODULE_0__["default"])('Object'));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/_isArrayLike.js":
-/*!*********************************************************!*\
- !*** ./node_modules/underscore/modules/_isArrayLike.js ***!
- \*********************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _createSizePropertyCheck_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_createSizePropertyCheck.js */ "./node_modules/underscore/modules/_createSizePropertyCheck.js");
-/* harmony import */ var _getLength_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./_getLength.js */ "./node_modules/underscore/modules/_getLength.js");
-
-
-
-// Internal helper for collection methods to determine whether a collection
-// should be iterated as an array or as an object.
-// Related: https://people.mozilla.org/~jorendorff/es6-draft.html#sec-tolength
-// Avoids a very nasty iOS 8 JIT bug on ARM-64. #2094
-/* harmony default export */ __webpack_exports__["default"] = ((0,_createSizePropertyCheck_js__WEBPACK_IMPORTED_MODULE_0__["default"])(_getLength_js__WEBPACK_IMPORTED_MODULE_1__["default"]));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/_isBufferLike.js":
-/*!**********************************************************!*\
- !*** ./node_modules/underscore/modules/_isBufferLike.js ***!
- \**********************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _createSizePropertyCheck_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_createSizePropertyCheck.js */ "./node_modules/underscore/modules/_createSizePropertyCheck.js");
-/* harmony import */ var _getByteLength_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./_getByteLength.js */ "./node_modules/underscore/modules/_getByteLength.js");
-
-
-
-// Internal helper to determine whether we should spend extensive checks against
-// `ArrayBuffer` et al.
-/* harmony default export */ __webpack_exports__["default"] = ((0,_createSizePropertyCheck_js__WEBPACK_IMPORTED_MODULE_0__["default"])(_getByteLength_js__WEBPACK_IMPORTED_MODULE_1__["default"]));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/_keyInObj.js":
-/*!******************************************************!*\
- !*** ./node_modules/underscore/modules/_keyInObj.js ***!
- \******************************************************/
-/***/ (function(__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": function() { return /* binding */ keyInObj; }
-/* harmony export */ });
-// Internal `_.pick` helper function to determine whether `key` is an enumerable
-// property name of `obj`.
-function keyInObj(value, key, obj) {
- return key in obj;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/_methodFingerprint.js":
-/*!***************************************************************!*\
- !*** ./node_modules/underscore/modules/_methodFingerprint.js ***!
- \***************************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ ie11fingerprint: function() { return /* binding */ ie11fingerprint; },
-/* harmony export */ mapMethods: function() { return /* binding */ mapMethods; },
-/* harmony export */ setMethods: function() { return /* binding */ setMethods; },
-/* harmony export */ weakMapMethods: function() { return /* binding */ weakMapMethods; }
-/* harmony export */ });
-/* harmony import */ var _getLength_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_getLength.js */ "./node_modules/underscore/modules/_getLength.js");
-/* harmony import */ var _isFunction_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./isFunction.js */ "./node_modules/underscore/modules/isFunction.js");
-/* harmony import */ var _allKeys_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./allKeys.js */ "./node_modules/underscore/modules/allKeys.js");
-
-
-
-
-// Since the regular `Object.prototype.toString` type tests don't work for
-// some types in IE 11, we use a fingerprinting heuristic instead, based
-// on the methods. It's not great, but it's the best we got.
-// The fingerprint method lists are defined below.
-function ie11fingerprint(methods) {
- var length = (0,_getLength_js__WEBPACK_IMPORTED_MODULE_0__["default"])(methods);
- return function(obj) {
- if (obj == null) return false;
- // `Map`, `WeakMap` and `Set` have no enumerable keys.
- var keys = (0,_allKeys_js__WEBPACK_IMPORTED_MODULE_2__["default"])(obj);
- if ((0,_getLength_js__WEBPACK_IMPORTED_MODULE_0__["default"])(keys)) return false;
- for (var i = 0; i < length; i++) {
- if (!(0,_isFunction_js__WEBPACK_IMPORTED_MODULE_1__["default"])(obj[methods[i]])) return false;
- }
- // If we are testing against `WeakMap`, we need to ensure that
- // `obj` doesn't have a `forEach` method in order to distinguish
- // it from a regular `Map`.
- return methods !== weakMapMethods || !(0,_isFunction_js__WEBPACK_IMPORTED_MODULE_1__["default"])(obj[forEachName]);
- };
-}
-
-// In the interest of compact minification, we write
-// each string in the fingerprints only once.
-var forEachName = 'forEach',
- hasName = 'has',
- commonInit = ['clear', 'delete'],
- mapTail = ['get', hasName, 'set'];
-
-// `Map`, `WeakMap` and `Set` each have slightly different
-// combinations of the above sublists.
-var mapMethods = commonInit.concat(forEachName, mapTail),
- weakMapMethods = commonInit.concat(mapTail),
- setMethods = ['add'].concat(commonInit, forEachName, hasName);
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/_optimizeCb.js":
-/*!********************************************************!*\
- !*** ./node_modules/underscore/modules/_optimizeCb.js ***!
- \********************************************************/
-/***/ (function(__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": function() { return /* binding */ optimizeCb; }
-/* harmony export */ });
-// Internal function that returns an efficient (for current engines) version
-// of the passed-in callback, to be repeatedly applied in other Underscore
-// functions.
-function optimizeCb(func, context, argCount) {
- if (context === void 0) return func;
- switch (argCount == null ? 3 : argCount) {
- case 1: return function(value) {
- return func.call(context, value);
- };
- // The 2-argument case is omitted because we’re not using it.
- case 3: return function(value, index, collection) {
- return func.call(context, value, index, collection);
- };
- case 4: return function(accumulator, value, index, collection) {
- return func.call(context, accumulator, value, index, collection);
- };
- }
- return function() {
- return func.apply(context, arguments);
- };
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/_setup.js":
-/*!***************************************************!*\
- !*** ./node_modules/underscore/modules/_setup.js ***!
- \***************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ ArrayProto: function() { return /* binding */ ArrayProto; },
-/* harmony export */ MAX_ARRAY_INDEX: function() { return /* binding */ MAX_ARRAY_INDEX; },
-/* harmony export */ ObjProto: function() { return /* binding */ ObjProto; },
-/* harmony export */ SymbolProto: function() { return /* binding */ SymbolProto; },
-/* harmony export */ VERSION: function() { return /* binding */ VERSION; },
-/* harmony export */ _isFinite: function() { return /* binding */ _isFinite; },
-/* harmony export */ _isNaN: function() { return /* binding */ _isNaN; },
-/* harmony export */ hasEnumBug: function() { return /* binding */ hasEnumBug; },
-/* harmony export */ hasOwnProperty: function() { return /* binding */ hasOwnProperty; },
-/* harmony export */ nativeCreate: function() { return /* binding */ nativeCreate; },
-/* harmony export */ nativeIsArray: function() { return /* binding */ nativeIsArray; },
-/* harmony export */ nativeIsView: function() { return /* binding */ nativeIsView; },
-/* harmony export */ nativeKeys: function() { return /* binding */ nativeKeys; },
-/* harmony export */ nonEnumerableProps: function() { return /* binding */ nonEnumerableProps; },
-/* harmony export */ push: function() { return /* binding */ push; },
-/* harmony export */ root: function() { return /* binding */ root; },
-/* harmony export */ slice: function() { return /* binding */ slice; },
-/* harmony export */ supportsArrayBuffer: function() { return /* binding */ supportsArrayBuffer; },
-/* harmony export */ supportsDataView: function() { return /* binding */ supportsDataView; },
-/* harmony export */ toString: function() { return /* binding */ toString; }
-/* harmony export */ });
-// Current version.
-var VERSION = '1.13.6';
-
-// Establish the root object, `window` (`self`) in the browser, `global`
-// on the server, or `this` in some virtual machines. We use `self`
-// instead of `window` for `WebWorker` support.
-var root = (typeof self == 'object' && self.self === self && self) ||
- (typeof global == 'object' && global.global === global && global) ||
- Function('return this')() ||
- {};
-
-// Save bytes in the minified (but not gzipped) version:
-var ArrayProto = Array.prototype, ObjProto = Object.prototype;
-var SymbolProto = typeof Symbol !== 'undefined' ? Symbol.prototype : null;
-
-// Create quick reference variables for speed access to core prototypes.
-var push = ArrayProto.push,
- slice = ArrayProto.slice,
- toString = ObjProto.toString,
- hasOwnProperty = ObjProto.hasOwnProperty;
-
-// Modern feature detection.
-var supportsArrayBuffer = typeof ArrayBuffer !== 'undefined',
- supportsDataView = typeof DataView !== 'undefined';
-
-// All **ECMAScript 5+** native function implementations that we hope to use
-// are declared here.
-var nativeIsArray = Array.isArray,
- nativeKeys = Object.keys,
- nativeCreate = Object.create,
- nativeIsView = supportsArrayBuffer && ArrayBuffer.isView;
-
-// Create references to these builtin functions because we override them.
-var _isNaN = isNaN,
- _isFinite = isFinite;
-
-// Keys in IE < 9 that won't be iterated by `for key in ...` and thus missed.
-var hasEnumBug = !{toString: null}.propertyIsEnumerable('toString');
-var nonEnumerableProps = ['valueOf', 'isPrototypeOf', 'toString',
- 'propertyIsEnumerable', 'hasOwnProperty', 'toLocaleString'];
-
-// The largest integer that can be represented exactly.
-var MAX_ARRAY_INDEX = Math.pow(2, 53) - 1;
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/_shallowProperty.js":
-/*!*************************************************************!*\
- !*** ./node_modules/underscore/modules/_shallowProperty.js ***!
- \*************************************************************/
-/***/ (function(__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": function() { return /* binding */ shallowProperty; }
-/* harmony export */ });
-// Internal helper to generate a function to obtain property `key` from `obj`.
-function shallowProperty(key) {
- return function(obj) {
- return obj == null ? void 0 : obj[key];
- };
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/_stringTagBug.js":
-/*!**********************************************************!*\
- !*** ./node_modules/underscore/modules/_stringTagBug.js ***!
- \**********************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ hasStringTagBug: function() { return /* binding */ hasStringTagBug; },
-/* harmony export */ isIE11: function() { return /* binding */ isIE11; }
-/* harmony export */ });
-/* harmony import */ var _setup_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_setup.js */ "./node_modules/underscore/modules/_setup.js");
-/* harmony import */ var _hasObjectTag_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./_hasObjectTag.js */ "./node_modules/underscore/modules/_hasObjectTag.js");
-
-
-
-// In IE 10 - Edge 13, `DataView` has string tag `'[object Object]'`.
-// In IE 11, the most common among them, this problem also applies to
-// `Map`, `WeakMap` and `Set`.
-var hasStringTagBug = (
- _setup_js__WEBPACK_IMPORTED_MODULE_0__.supportsDataView && (0,_hasObjectTag_js__WEBPACK_IMPORTED_MODULE_1__["default"])(new DataView(new ArrayBuffer(8)))
- ),
- isIE11 = (typeof Map !== 'undefined' && (0,_hasObjectTag_js__WEBPACK_IMPORTED_MODULE_1__["default"])(new Map));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/_tagTester.js":
-/*!*******************************************************!*\
- !*** ./node_modules/underscore/modules/_tagTester.js ***!
- \*******************************************************/
-/***/ (function(__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": function() { return /* binding */ tagTester; }
-/* harmony export */ });
-/* harmony import */ var _setup_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_setup.js */ "./node_modules/underscore/modules/_setup.js");
-
-
-// Internal function for creating a `toString`-based type tester.
-function tagTester(name) {
- var tag = '[object ' + name + ']';
- return function(obj) {
- return _setup_js__WEBPACK_IMPORTED_MODULE_0__.toString.call(obj) === tag;
- };
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/_toBufferView.js":
-/*!**********************************************************!*\
- !*** ./node_modules/underscore/modules/_toBufferView.js ***!
- \**********************************************************/
-/***/ (function(__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": function() { return /* binding */ toBufferView; }
-/* harmony export */ });
-/* harmony import */ var _getByteLength_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_getByteLength.js */ "./node_modules/underscore/modules/_getByteLength.js");
-
-
-// Internal function to wrap or shallow-copy an ArrayBuffer,
-// typed array or DataView to a new view, reusing the buffer.
-function toBufferView(bufferSource) {
- return new Uint8Array(
- bufferSource.buffer || bufferSource,
- bufferSource.byteOffset || 0,
- (0,_getByteLength_js__WEBPACK_IMPORTED_MODULE_0__["default"])(bufferSource)
- );
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/_toPath.js":
-/*!****************************************************!*\
- !*** ./node_modules/underscore/modules/_toPath.js ***!
- \****************************************************/
-/***/ (function(__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": function() { return /* binding */ toPath; }
-/* harmony export */ });
-/* harmony import */ var _underscore_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./underscore.js */ "./node_modules/underscore/modules/underscore.js");
-/* harmony import */ var _toPath_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./toPath.js */ "./node_modules/underscore/modules/toPath.js");
-
-
-
-// Internal wrapper for `_.toPath` to enable minification.
-// Similar to `cb` for `_.iteratee`.
-function toPath(path) {
- return _underscore_js__WEBPACK_IMPORTED_MODULE_0__["default"].toPath(path);
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/_unescapeMap.js":
-/*!*********************************************************!*\
- !*** ./node_modules/underscore/modules/_unescapeMap.js ***!
- \*********************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _invert_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./invert.js */ "./node_modules/underscore/modules/invert.js");
-/* harmony import */ var _escapeMap_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./_escapeMap.js */ "./node_modules/underscore/modules/_escapeMap.js");
-
-
-
-// Internal list of HTML entities for unescaping.
-/* harmony default export */ __webpack_exports__["default"] = ((0,_invert_js__WEBPACK_IMPORTED_MODULE_0__["default"])(_escapeMap_js__WEBPACK_IMPORTED_MODULE_1__["default"]));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/after.js":
-/*!**************************************************!*\
- !*** ./node_modules/underscore/modules/after.js ***!
- \**************************************************/
-/***/ (function(__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": function() { return /* binding */ after; }
-/* harmony export */ });
-// Returns a function that will only be executed on and after the Nth call.
-function after(times, func) {
- return function() {
- if (--times < 1) {
- return func.apply(this, arguments);
- }
- };
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/allKeys.js":
-/*!****************************************************!*\
- !*** ./node_modules/underscore/modules/allKeys.js ***!
- \****************************************************/
-/***/ (function(__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": function() { return /* binding */ allKeys; }
-/* harmony export */ });
-/* harmony import */ var _isObject_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./isObject.js */ "./node_modules/underscore/modules/isObject.js");
-/* harmony import */ var _setup_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./_setup.js */ "./node_modules/underscore/modules/_setup.js");
-/* harmony import */ var _collectNonEnumProps_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./_collectNonEnumProps.js */ "./node_modules/underscore/modules/_collectNonEnumProps.js");
-
-
-
-
-// Retrieve all the enumerable property names of an object.
-function allKeys(obj) {
- if (!(0,_isObject_js__WEBPACK_IMPORTED_MODULE_0__["default"])(obj)) return [];
- var keys = [];
- for (var key in obj) keys.push(key);
- // Ahem, IE < 9.
- if (_setup_js__WEBPACK_IMPORTED_MODULE_1__.hasEnumBug) (0,_collectNonEnumProps_js__WEBPACK_IMPORTED_MODULE_2__["default"])(obj, keys);
- return keys;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/before.js":
-/*!***************************************************!*\
- !*** ./node_modules/underscore/modules/before.js ***!
- \***************************************************/
-/***/ (function(__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": function() { return /* binding */ before; }
-/* harmony export */ });
-// Returns a function that will only be executed up to (but not including) the
-// Nth call.
-function before(times, func) {
- var memo;
- return function() {
- if (--times > 0) {
- memo = func.apply(this, arguments);
- }
- if (times <= 1) func = null;
- return memo;
- };
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/bind.js":
-/*!*************************************************!*\
- !*** ./node_modules/underscore/modules/bind.js ***!
- \*************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _restArguments_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./restArguments.js */ "./node_modules/underscore/modules/restArguments.js");
-/* harmony import */ var _isFunction_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./isFunction.js */ "./node_modules/underscore/modules/isFunction.js");
-/* harmony import */ var _executeBound_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./_executeBound.js */ "./node_modules/underscore/modules/_executeBound.js");
-
-
-
-
-// Create a function bound to a given object (assigning `this`, and arguments,
-// optionally).
-/* harmony default export */ __webpack_exports__["default"] = ((0,_restArguments_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function(func, context, args) {
- if (!(0,_isFunction_js__WEBPACK_IMPORTED_MODULE_1__["default"])(func)) throw new TypeError('Bind must be called on a function');
- var bound = (0,_restArguments_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function(callArgs) {
- return (0,_executeBound_js__WEBPACK_IMPORTED_MODULE_2__["default"])(func, bound, context, this, args.concat(callArgs));
- });
- return bound;
-}));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/bindAll.js":
-/*!****************************************************!*\
- !*** ./node_modules/underscore/modules/bindAll.js ***!
- \****************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _restArguments_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./restArguments.js */ "./node_modules/underscore/modules/restArguments.js");
-/* harmony import */ var _flatten_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./_flatten.js */ "./node_modules/underscore/modules/_flatten.js");
-/* harmony import */ var _bind_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./bind.js */ "./node_modules/underscore/modules/bind.js");
-
-
-
-
-// Bind a number of an object's methods to that object. Remaining arguments
-// are the method names to be bound. Useful for ensuring that all callbacks
-// defined on an object belong to it.
-/* harmony default export */ __webpack_exports__["default"] = ((0,_restArguments_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function(obj, keys) {
- keys = (0,_flatten_js__WEBPACK_IMPORTED_MODULE_1__["default"])(keys, false, false);
- var index = keys.length;
- if (index < 1) throw new Error('bindAll must be passed function names');
- while (index--) {
- var key = keys[index];
- obj[key] = (0,_bind_js__WEBPACK_IMPORTED_MODULE_2__["default"])(obj[key], obj);
- }
- return obj;
-}));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/chain.js":
-/*!**************************************************!*\
- !*** ./node_modules/underscore/modules/chain.js ***!
- \**************************************************/
-/***/ (function(__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": function() { return /* binding */ chain; }
-/* harmony export */ });
-/* harmony import */ var _underscore_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./underscore.js */ "./node_modules/underscore/modules/underscore.js");
-
-
-// Start chaining a wrapped Underscore object.
-function chain(obj) {
- var instance = (0,_underscore_js__WEBPACK_IMPORTED_MODULE_0__["default"])(obj);
- instance._chain = true;
- return instance;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/chunk.js":
-/*!**************************************************!*\
- !*** ./node_modules/underscore/modules/chunk.js ***!
- \**************************************************/
-/***/ (function(__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": function() { return /* binding */ chunk; }
-/* harmony export */ });
-/* harmony import */ var _setup_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_setup.js */ "./node_modules/underscore/modules/_setup.js");
-
-
-// Chunk a single array into multiple arrays, each containing `count` or fewer
-// items.
-function chunk(array, count) {
- if (count == null || count < 1) return [];
- var result = [];
- var i = 0, length = array.length;
- while (i < length) {
- result.push(_setup_js__WEBPACK_IMPORTED_MODULE_0__.slice.call(array, i, i += count));
- }
- return result;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/clone.js":
-/*!**************************************************!*\
- !*** ./node_modules/underscore/modules/clone.js ***!
- \**************************************************/
-/***/ (function(__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": function() { return /* binding */ clone; }
-/* harmony export */ });
-/* harmony import */ var _isObject_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./isObject.js */ "./node_modules/underscore/modules/isObject.js");
-/* harmony import */ var _isArray_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./isArray.js */ "./node_modules/underscore/modules/isArray.js");
-/* harmony import */ var _extend_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./extend.js */ "./node_modules/underscore/modules/extend.js");
-
-
-
-
-// Create a (shallow-cloned) duplicate of an object.
-function clone(obj) {
- if (!(0,_isObject_js__WEBPACK_IMPORTED_MODULE_0__["default"])(obj)) return obj;
- return (0,_isArray_js__WEBPACK_IMPORTED_MODULE_1__["default"])(obj) ? obj.slice() : (0,_extend_js__WEBPACK_IMPORTED_MODULE_2__["default"])({}, obj);
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/compact.js":
-/*!****************************************************!*\
- !*** ./node_modules/underscore/modules/compact.js ***!
- \****************************************************/
-/***/ (function(__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": function() { return /* binding */ compact; }
-/* harmony export */ });
-/* harmony import */ var _filter_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./filter.js */ "./node_modules/underscore/modules/filter.js");
-
-
-// Trim out all falsy values from an array.
-function compact(array) {
- return (0,_filter_js__WEBPACK_IMPORTED_MODULE_0__["default"])(array, Boolean);
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/compose.js":
-/*!****************************************************!*\
- !*** ./node_modules/underscore/modules/compose.js ***!
- \****************************************************/
-/***/ (function(__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": function() { return /* binding */ compose; }
-/* harmony export */ });
-// Returns a function that is the composition of a list of functions, each
-// consuming the return value of the function that follows.
-function compose() {
- var args = arguments;
- var start = args.length - 1;
- return function() {
- var i = start;
- var result = args[start].apply(this, arguments);
- while (i--) result = args[i].call(this, result);
- return result;
- };
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/constant.js":
-/*!*****************************************************!*\
- !*** ./node_modules/underscore/modules/constant.js ***!
- \*****************************************************/
-/***/ (function(__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": function() { return /* binding */ constant; }
-/* harmony export */ });
-// Predicate-generating function. Often useful outside of Underscore.
-function constant(value) {
- return function() {
- return value;
- };
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/contains.js":
-/*!*****************************************************!*\
- !*** ./node_modules/underscore/modules/contains.js ***!
- \*****************************************************/
-/***/ (function(__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": function() { return /* binding */ contains; }
-/* harmony export */ });
-/* harmony import */ var _isArrayLike_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_isArrayLike.js */ "./node_modules/underscore/modules/_isArrayLike.js");
-/* harmony import */ var _values_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./values.js */ "./node_modules/underscore/modules/values.js");
-/* harmony import */ var _indexOf_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./indexOf.js */ "./node_modules/underscore/modules/indexOf.js");
-
-
-
-
-// Determine if the array or object contains a given item (using `===`).
-function contains(obj, item, fromIndex, guard) {
- if (!(0,_isArrayLike_js__WEBPACK_IMPORTED_MODULE_0__["default"])(obj)) obj = (0,_values_js__WEBPACK_IMPORTED_MODULE_1__["default"])(obj);
- if (typeof fromIndex != 'number' || guard) fromIndex = 0;
- return (0,_indexOf_js__WEBPACK_IMPORTED_MODULE_2__["default"])(obj, item, fromIndex) >= 0;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/countBy.js":
-/*!****************************************************!*\
- !*** ./node_modules/underscore/modules/countBy.js ***!
- \****************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _group_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_group.js */ "./node_modules/underscore/modules/_group.js");
-/* harmony import */ var _has_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./_has.js */ "./node_modules/underscore/modules/_has.js");
-
-
-
-// Counts instances of an object that group by a certain criterion. Pass
-// either a string attribute to count by, or a function that returns the
-// criterion.
-/* harmony default export */ __webpack_exports__["default"] = ((0,_group_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function(result, value, key) {
- if ((0,_has_js__WEBPACK_IMPORTED_MODULE_1__["default"])(result, key)) result[key]++; else result[key] = 1;
-}));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/create.js":
-/*!***************************************************!*\
- !*** ./node_modules/underscore/modules/create.js ***!
- \***************************************************/
-/***/ (function(__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": function() { return /* binding */ create; }
-/* harmony export */ });
-/* harmony import */ var _baseCreate_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_baseCreate.js */ "./node_modules/underscore/modules/_baseCreate.js");
-/* harmony import */ var _extendOwn_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./extendOwn.js */ "./node_modules/underscore/modules/extendOwn.js");
-
-
-
-// Creates an object that inherits from the given prototype object.
-// If additional properties are provided then they will be added to the
-// created object.
-function create(prototype, props) {
- var result = (0,_baseCreate_js__WEBPACK_IMPORTED_MODULE_0__["default"])(prototype);
- if (props) (0,_extendOwn_js__WEBPACK_IMPORTED_MODULE_1__["default"])(result, props);
- return result;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/debounce.js":
-/*!*****************************************************!*\
- !*** ./node_modules/underscore/modules/debounce.js ***!
- \*****************************************************/
-/***/ (function(__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": function() { return /* binding */ debounce; }
-/* harmony export */ });
-/* harmony import */ var _restArguments_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./restArguments.js */ "./node_modules/underscore/modules/restArguments.js");
-/* harmony import */ var _now_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./now.js */ "./node_modules/underscore/modules/now.js");
-
-
-
-// When a sequence of calls of the returned function ends, the argument
-// function is triggered. The end of a sequence is defined by the `wait`
-// parameter. If `immediate` is passed, the argument function will be
-// triggered at the beginning of the sequence instead of at the end.
-function debounce(func, wait, immediate) {
- var timeout, previous, args, result, context;
-
- var later = function() {
- var passed = (0,_now_js__WEBPACK_IMPORTED_MODULE_1__["default"])() - previous;
- if (wait > passed) {
- timeout = setTimeout(later, wait - passed);
- } else {
- timeout = null;
- if (!immediate) result = func.apply(context, args);
- // This check is needed because `func` can recursively invoke `debounced`.
- if (!timeout) args = context = null;
- }
- };
-
- var debounced = (0,_restArguments_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function(_args) {
- context = this;
- args = _args;
- previous = (0,_now_js__WEBPACK_IMPORTED_MODULE_1__["default"])();
- if (!timeout) {
- timeout = setTimeout(later, wait);
- if (immediate) result = func.apply(context, args);
- }
- return result;
- });
-
- debounced.cancel = function() {
- clearTimeout(timeout);
- timeout = args = context = null;
- };
-
- return debounced;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/defaults.js":
-/*!*****************************************************!*\
- !*** ./node_modules/underscore/modules/defaults.js ***!
- \*****************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _createAssigner_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_createAssigner.js */ "./node_modules/underscore/modules/_createAssigner.js");
-/* harmony import */ var _allKeys_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./allKeys.js */ "./node_modules/underscore/modules/allKeys.js");
-
-
-
-// Fill in a given object with default properties.
-/* harmony default export */ __webpack_exports__["default"] = ((0,_createAssigner_js__WEBPACK_IMPORTED_MODULE_0__["default"])(_allKeys_js__WEBPACK_IMPORTED_MODULE_1__["default"], true));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/defer.js":
-/*!**************************************************!*\
- !*** ./node_modules/underscore/modules/defer.js ***!
- \**************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _partial_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./partial.js */ "./node_modules/underscore/modules/partial.js");
-/* harmony import */ var _delay_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./delay.js */ "./node_modules/underscore/modules/delay.js");
-/* harmony import */ var _underscore_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./underscore.js */ "./node_modules/underscore/modules/underscore.js");
-
-
-
-
-// Defers a function, scheduling it to run after the current call stack has
-// cleared.
-/* harmony default export */ __webpack_exports__["default"] = ((0,_partial_js__WEBPACK_IMPORTED_MODULE_0__["default"])(_delay_js__WEBPACK_IMPORTED_MODULE_1__["default"], _underscore_js__WEBPACK_IMPORTED_MODULE_2__["default"], 1));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/delay.js":
-/*!**************************************************!*\
- !*** ./node_modules/underscore/modules/delay.js ***!
- \**************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _restArguments_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./restArguments.js */ "./node_modules/underscore/modules/restArguments.js");
-
-
-// Delays a function for the given number of milliseconds, and then calls
-// it with the arguments supplied.
-/* harmony default export */ __webpack_exports__["default"] = ((0,_restArguments_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function(func, wait, args) {
- return setTimeout(function() {
- return func.apply(null, args);
- }, wait);
-}));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/difference.js":
-/*!*******************************************************!*\
- !*** ./node_modules/underscore/modules/difference.js ***!
- \*******************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _restArguments_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./restArguments.js */ "./node_modules/underscore/modules/restArguments.js");
-/* harmony import */ var _flatten_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./_flatten.js */ "./node_modules/underscore/modules/_flatten.js");
-/* harmony import */ var _filter_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./filter.js */ "./node_modules/underscore/modules/filter.js");
-/* harmony import */ var _contains_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./contains.js */ "./node_modules/underscore/modules/contains.js");
-
-
-
-
-
-// Take the difference between one array and a number of other arrays.
-// Only the elements present in just the first array will remain.
-/* harmony default export */ __webpack_exports__["default"] = ((0,_restArguments_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function(array, rest) {
- rest = (0,_flatten_js__WEBPACK_IMPORTED_MODULE_1__["default"])(rest, true, true);
- return (0,_filter_js__WEBPACK_IMPORTED_MODULE_2__["default"])(array, function(value){
- return !(0,_contains_js__WEBPACK_IMPORTED_MODULE_3__["default"])(rest, value);
- });
-}));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/each.js":
-/*!*************************************************!*\
- !*** ./node_modules/underscore/modules/each.js ***!
- \*************************************************/
-/***/ (function(__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": function() { return /* binding */ each; }
-/* harmony export */ });
-/* harmony import */ var _optimizeCb_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_optimizeCb.js */ "./node_modules/underscore/modules/_optimizeCb.js");
-/* harmony import */ var _isArrayLike_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./_isArrayLike.js */ "./node_modules/underscore/modules/_isArrayLike.js");
-/* harmony import */ var _keys_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./keys.js */ "./node_modules/underscore/modules/keys.js");
-
-
-
-
-// The cornerstone for collection functions, an `each`
-// implementation, aka `forEach`.
-// Handles raw objects in addition to array-likes. Treats all
-// sparse array-likes as if they were dense.
-function each(obj, iteratee, context) {
- iteratee = (0,_optimizeCb_js__WEBPACK_IMPORTED_MODULE_0__["default"])(iteratee, context);
- var i, length;
- if ((0,_isArrayLike_js__WEBPACK_IMPORTED_MODULE_1__["default"])(obj)) {
- for (i = 0, length = obj.length; i < length; i++) {
- iteratee(obj[i], i, obj);
- }
- } else {
- var _keys = (0,_keys_js__WEBPACK_IMPORTED_MODULE_2__["default"])(obj);
- for (i = 0, length = _keys.length; i < length; i++) {
- iteratee(obj[_keys[i]], _keys[i], obj);
- }
- }
- return obj;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/escape.js":
-/*!***************************************************!*\
- !*** ./node_modules/underscore/modules/escape.js ***!
- \***************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _createEscaper_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_createEscaper.js */ "./node_modules/underscore/modules/_createEscaper.js");
-/* harmony import */ var _escapeMap_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./_escapeMap.js */ "./node_modules/underscore/modules/_escapeMap.js");
-
-
-
-// Function for escaping strings to HTML interpolation.
-/* harmony default export */ __webpack_exports__["default"] = ((0,_createEscaper_js__WEBPACK_IMPORTED_MODULE_0__["default"])(_escapeMap_js__WEBPACK_IMPORTED_MODULE_1__["default"]));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/every.js":
-/*!**************************************************!*\
- !*** ./node_modules/underscore/modules/every.js ***!
- \**************************************************/
-/***/ (function(__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": function() { return /* binding */ every; }
-/* harmony export */ });
-/* harmony import */ var _cb_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_cb.js */ "./node_modules/underscore/modules/_cb.js");
-/* harmony import */ var _isArrayLike_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./_isArrayLike.js */ "./node_modules/underscore/modules/_isArrayLike.js");
-/* harmony import */ var _keys_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./keys.js */ "./node_modules/underscore/modules/keys.js");
-
-
-
-
-// Determine whether all of the elements pass a truth test.
-function every(obj, predicate, context) {
- predicate = (0,_cb_js__WEBPACK_IMPORTED_MODULE_0__["default"])(predicate, context);
- var _keys = !(0,_isArrayLike_js__WEBPACK_IMPORTED_MODULE_1__["default"])(obj) && (0,_keys_js__WEBPACK_IMPORTED_MODULE_2__["default"])(obj),
- length = (_keys || obj).length;
- for (var index = 0; index < length; index++) {
- var currentKey = _keys ? _keys[index] : index;
- if (!predicate(obj[currentKey], currentKey, obj)) return false;
- }
- return true;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/extend.js":
-/*!***************************************************!*\
- !*** ./node_modules/underscore/modules/extend.js ***!
- \***************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _createAssigner_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_createAssigner.js */ "./node_modules/underscore/modules/_createAssigner.js");
-/* harmony import */ var _allKeys_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./allKeys.js */ "./node_modules/underscore/modules/allKeys.js");
-
-
-
-// Extend a given object with all the properties in passed-in object(s).
-/* harmony default export */ __webpack_exports__["default"] = ((0,_createAssigner_js__WEBPACK_IMPORTED_MODULE_0__["default"])(_allKeys_js__WEBPACK_IMPORTED_MODULE_1__["default"]));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/extendOwn.js":
-/*!******************************************************!*\
- !*** ./node_modules/underscore/modules/extendOwn.js ***!
- \******************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _createAssigner_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_createAssigner.js */ "./node_modules/underscore/modules/_createAssigner.js");
-/* harmony import */ var _keys_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./keys.js */ "./node_modules/underscore/modules/keys.js");
-
-
-
-// Assigns a given object with all the own properties in the passed-in
-// object(s).
-// (https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object/assign)
-/* harmony default export */ __webpack_exports__["default"] = ((0,_createAssigner_js__WEBPACK_IMPORTED_MODULE_0__["default"])(_keys_js__WEBPACK_IMPORTED_MODULE_1__["default"]));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/filter.js":
-/*!***************************************************!*\
- !*** ./node_modules/underscore/modules/filter.js ***!
- \***************************************************/
-/***/ (function(__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": function() { return /* binding */ filter; }
-/* harmony export */ });
-/* harmony import */ var _cb_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_cb.js */ "./node_modules/underscore/modules/_cb.js");
-/* harmony import */ var _each_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./each.js */ "./node_modules/underscore/modules/each.js");
-
-
-
-// Return all the elements that pass a truth test.
-function filter(obj, predicate, context) {
- var results = [];
- predicate = (0,_cb_js__WEBPACK_IMPORTED_MODULE_0__["default"])(predicate, context);
- (0,_each_js__WEBPACK_IMPORTED_MODULE_1__["default"])(obj, function(value, index, list) {
- if (predicate(value, index, list)) results.push(value);
- });
- return results;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/find.js":
-/*!*************************************************!*\
- !*** ./node_modules/underscore/modules/find.js ***!
- \*************************************************/
-/***/ (function(__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": function() { return /* binding */ find; }
-/* harmony export */ });
-/* harmony import */ var _isArrayLike_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_isArrayLike.js */ "./node_modules/underscore/modules/_isArrayLike.js");
-/* harmony import */ var _findIndex_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./findIndex.js */ "./node_modules/underscore/modules/findIndex.js");
-/* harmony import */ var _findKey_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./findKey.js */ "./node_modules/underscore/modules/findKey.js");
-
-
-
-
-// Return the first value which passes a truth test.
-function find(obj, predicate, context) {
- var keyFinder = (0,_isArrayLike_js__WEBPACK_IMPORTED_MODULE_0__["default"])(obj) ? _findIndex_js__WEBPACK_IMPORTED_MODULE_1__["default"] : _findKey_js__WEBPACK_IMPORTED_MODULE_2__["default"];
- var key = keyFinder(obj, predicate, context);
- if (key !== void 0 && key !== -1) return obj[key];
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/findIndex.js":
-/*!******************************************************!*\
- !*** ./node_modules/underscore/modules/findIndex.js ***!
- \******************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _createPredicateIndexFinder_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_createPredicateIndexFinder.js */ "./node_modules/underscore/modules/_createPredicateIndexFinder.js");
-
-
-// Returns the first index on an array-like that passes a truth test.
-/* harmony default export */ __webpack_exports__["default"] = ((0,_createPredicateIndexFinder_js__WEBPACK_IMPORTED_MODULE_0__["default"])(1));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/findKey.js":
-/*!****************************************************!*\
- !*** ./node_modules/underscore/modules/findKey.js ***!
- \****************************************************/
-/***/ (function(__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": function() { return /* binding */ findKey; }
-/* harmony export */ });
-/* harmony import */ var _cb_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_cb.js */ "./node_modules/underscore/modules/_cb.js");
-/* harmony import */ var _keys_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./keys.js */ "./node_modules/underscore/modules/keys.js");
-
-
-
-// Returns the first key on an object that passes a truth test.
-function findKey(obj, predicate, context) {
- predicate = (0,_cb_js__WEBPACK_IMPORTED_MODULE_0__["default"])(predicate, context);
- var _keys = (0,_keys_js__WEBPACK_IMPORTED_MODULE_1__["default"])(obj), key;
- for (var i = 0, length = _keys.length; i < length; i++) {
- key = _keys[i];
- if (predicate(obj[key], key, obj)) return key;
- }
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/findLastIndex.js":
-/*!**********************************************************!*\
- !*** ./node_modules/underscore/modules/findLastIndex.js ***!
- \**********************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _createPredicateIndexFinder_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_createPredicateIndexFinder.js */ "./node_modules/underscore/modules/_createPredicateIndexFinder.js");
-
-
-// Returns the last index on an array-like that passes a truth test.
-/* harmony default export */ __webpack_exports__["default"] = ((0,_createPredicateIndexFinder_js__WEBPACK_IMPORTED_MODULE_0__["default"])(-1));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/findWhere.js":
-/*!******************************************************!*\
- !*** ./node_modules/underscore/modules/findWhere.js ***!
- \******************************************************/
-/***/ (function(__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": function() { return /* binding */ findWhere; }
-/* harmony export */ });
-/* harmony import */ var _find_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./find.js */ "./node_modules/underscore/modules/find.js");
-/* harmony import */ var _matcher_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./matcher.js */ "./node_modules/underscore/modules/matcher.js");
-
-
-
-// Convenience version of a common use case of `_.find`: getting the first
-// object containing specific `key:value` pairs.
-function findWhere(obj, attrs) {
- return (0,_find_js__WEBPACK_IMPORTED_MODULE_0__["default"])(obj, (0,_matcher_js__WEBPACK_IMPORTED_MODULE_1__["default"])(attrs));
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/first.js":
-/*!**************************************************!*\
- !*** ./node_modules/underscore/modules/first.js ***!
- \**************************************************/
-/***/ (function(__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": function() { return /* binding */ first; }
-/* harmony export */ });
-/* harmony import */ var _initial_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./initial.js */ "./node_modules/underscore/modules/initial.js");
-
-
-// Get the first element of an array. Passing **n** will return the first N
-// values in the array. The **guard** check allows it to work with `_.map`.
-function first(array, n, guard) {
- if (array == null || array.length < 1) return n == null || guard ? void 0 : [];
- if (n == null || guard) return array[0];
- return (0,_initial_js__WEBPACK_IMPORTED_MODULE_0__["default"])(array, array.length - n);
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/flatten.js":
-/*!****************************************************!*\
- !*** ./node_modules/underscore/modules/flatten.js ***!
- \****************************************************/
-/***/ (function(__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": function() { return /* binding */ flatten; }
-/* harmony export */ });
-/* harmony import */ var _flatten_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_flatten.js */ "./node_modules/underscore/modules/_flatten.js");
-
-
-// Flatten out an array, either recursively (by default), or up to `depth`.
-// Passing `true` or `false` as `depth` means `1` or `Infinity`, respectively.
-function flatten(array, depth) {
- return (0,_flatten_js__WEBPACK_IMPORTED_MODULE_0__["default"])(array, depth, false);
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/functions.js":
-/*!******************************************************!*\
- !*** ./node_modules/underscore/modules/functions.js ***!
- \******************************************************/
-/***/ (function(__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": function() { return /* binding */ functions; }
-/* harmony export */ });
-/* harmony import */ var _isFunction_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./isFunction.js */ "./node_modules/underscore/modules/isFunction.js");
-
-
-// Return a sorted list of the function names available on the object.
-function functions(obj) {
- var names = [];
- for (var key in obj) {
- if ((0,_isFunction_js__WEBPACK_IMPORTED_MODULE_0__["default"])(obj[key])) names.push(key);
- }
- return names.sort();
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/get.js":
-/*!************************************************!*\
- !*** ./node_modules/underscore/modules/get.js ***!
- \************************************************/
-/***/ (function(__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": function() { return /* binding */ get; }
-/* harmony export */ });
-/* harmony import */ var _toPath_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_toPath.js */ "./node_modules/underscore/modules/_toPath.js");
-/* harmony import */ var _deepGet_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./_deepGet.js */ "./node_modules/underscore/modules/_deepGet.js");
-/* harmony import */ var _isUndefined_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./isUndefined.js */ "./node_modules/underscore/modules/isUndefined.js");
-
-
-
-
-// Get the value of the (deep) property on `path` from `object`.
-// If any property in `path` does not exist or if the value is
-// `undefined`, return `defaultValue` instead.
-// The `path` is normalized through `_.toPath`.
-function get(object, path, defaultValue) {
- var value = (0,_deepGet_js__WEBPACK_IMPORTED_MODULE_1__["default"])(object, (0,_toPath_js__WEBPACK_IMPORTED_MODULE_0__["default"])(path));
- return (0,_isUndefined_js__WEBPACK_IMPORTED_MODULE_2__["default"])(value) ? defaultValue : value;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/groupBy.js":
-/*!****************************************************!*\
- !*** ./node_modules/underscore/modules/groupBy.js ***!
- \****************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _group_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_group.js */ "./node_modules/underscore/modules/_group.js");
-/* harmony import */ var _has_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./_has.js */ "./node_modules/underscore/modules/_has.js");
-
-
-
-// Groups the object's values by a criterion. Pass either a string attribute
-// to group by, or a function that returns the criterion.
-/* harmony default export */ __webpack_exports__["default"] = ((0,_group_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function(result, value, key) {
- if ((0,_has_js__WEBPACK_IMPORTED_MODULE_1__["default"])(result, key)) result[key].push(value); else result[key] = [value];
-}));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/has.js":
-/*!************************************************!*\
- !*** ./node_modules/underscore/modules/has.js ***!
- \************************************************/
-/***/ (function(__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": function() { return /* binding */ has; }
-/* harmony export */ });
-/* harmony import */ var _has_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_has.js */ "./node_modules/underscore/modules/_has.js");
-/* harmony import */ var _toPath_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./_toPath.js */ "./node_modules/underscore/modules/_toPath.js");
-
-
-
-// Shortcut function for checking if an object has a given property directly on
-// itself (in other words, not on a prototype). Unlike the internal `has`
-// function, this public version can also traverse nested properties.
-function has(obj, path) {
- path = (0,_toPath_js__WEBPACK_IMPORTED_MODULE_1__["default"])(path);
- var length = path.length;
- for (var i = 0; i < length; i++) {
- var key = path[i];
- if (!(0,_has_js__WEBPACK_IMPORTED_MODULE_0__["default"])(obj, key)) return false;
- obj = obj[key];
- }
- return !!length;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/identity.js":
-/*!*****************************************************!*\
- !*** ./node_modules/underscore/modules/identity.js ***!
- \*****************************************************/
-/***/ (function(__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": function() { return /* binding */ identity; }
-/* harmony export */ });
-// Keep the identity function around for default iteratees.
-function identity(value) {
- return value;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/index-all.js":
-/*!******************************************************!*\
- !*** ./node_modules/underscore/modules/index-all.js ***!
- \******************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ VERSION: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.VERSION; },
-/* harmony export */ after: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.after; },
-/* harmony export */ all: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.all; },
-/* harmony export */ allKeys: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.allKeys; },
-/* harmony export */ any: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.any; },
-/* harmony export */ assign: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.assign; },
-/* harmony export */ before: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.before; },
-/* harmony export */ bind: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.bind; },
-/* harmony export */ bindAll: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.bindAll; },
-/* harmony export */ chain: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.chain; },
-/* harmony export */ chunk: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.chunk; },
-/* harmony export */ clone: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.clone; },
-/* harmony export */ collect: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.collect; },
-/* harmony export */ compact: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.compact; },
-/* harmony export */ compose: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.compose; },
-/* harmony export */ constant: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.constant; },
-/* harmony export */ contains: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.contains; },
-/* harmony export */ countBy: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.countBy; },
-/* harmony export */ create: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.create; },
-/* harmony export */ debounce: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.debounce; },
-/* harmony export */ "default": function() { return /* reexport safe */ _index_default_js__WEBPACK_IMPORTED_MODULE_0__["default"]; },
-/* harmony export */ defaults: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.defaults; },
-/* harmony export */ defer: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.defer; },
-/* harmony export */ delay: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.delay; },
-/* harmony export */ detect: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.detect; },
-/* harmony export */ difference: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.difference; },
-/* harmony export */ drop: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.drop; },
-/* harmony export */ each: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.each; },
-/* harmony export */ escape: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.escape; },
-/* harmony export */ every: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.every; },
-/* harmony export */ extend: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.extend; },
-/* harmony export */ extendOwn: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.extendOwn; },
-/* harmony export */ filter: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.filter; },
-/* harmony export */ find: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.find; },
-/* harmony export */ findIndex: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.findIndex; },
-/* harmony export */ findKey: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.findKey; },
-/* harmony export */ findLastIndex: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.findLastIndex; },
-/* harmony export */ findWhere: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.findWhere; },
-/* harmony export */ first: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.first; },
-/* harmony export */ flatten: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.flatten; },
-/* harmony export */ foldl: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.foldl; },
-/* harmony export */ foldr: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.foldr; },
-/* harmony export */ forEach: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.forEach; },
-/* harmony export */ functions: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.functions; },
-/* harmony export */ get: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.get; },
-/* harmony export */ groupBy: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.groupBy; },
-/* harmony export */ has: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.has; },
-/* harmony export */ head: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.head; },
-/* harmony export */ identity: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.identity; },
-/* harmony export */ include: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.include; },
-/* harmony export */ includes: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.includes; },
-/* harmony export */ indexBy: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.indexBy; },
-/* harmony export */ indexOf: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.indexOf; },
-/* harmony export */ initial: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.initial; },
-/* harmony export */ inject: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.inject; },
-/* harmony export */ intersection: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.intersection; },
-/* harmony export */ invert: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.invert; },
-/* harmony export */ invoke: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.invoke; },
-/* harmony export */ isArguments: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.isArguments; },
-/* harmony export */ isArray: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.isArray; },
-/* harmony export */ isArrayBuffer: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.isArrayBuffer; },
-/* harmony export */ isBoolean: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.isBoolean; },
-/* harmony export */ isDataView: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.isDataView; },
-/* harmony export */ isDate: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.isDate; },
-/* harmony export */ isElement: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.isElement; },
-/* harmony export */ isEmpty: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.isEmpty; },
-/* harmony export */ isEqual: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.isEqual; },
-/* harmony export */ isError: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.isError; },
-/* harmony export */ isFinite: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.isFinite; },
-/* harmony export */ isFunction: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.isFunction; },
-/* harmony export */ isMap: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.isMap; },
-/* harmony export */ isMatch: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.isMatch; },
-/* harmony export */ isNaN: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.isNaN; },
-/* harmony export */ isNull: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.isNull; },
-/* harmony export */ isNumber: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.isNumber; },
-/* harmony export */ isObject: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.isObject; },
-/* harmony export */ isRegExp: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.isRegExp; },
-/* harmony export */ isSet: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.isSet; },
-/* harmony export */ isString: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.isString; },
-/* harmony export */ isSymbol: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.isSymbol; },
-/* harmony export */ isTypedArray: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.isTypedArray; },
-/* harmony export */ isUndefined: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.isUndefined; },
-/* harmony export */ isWeakMap: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.isWeakMap; },
-/* harmony export */ isWeakSet: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.isWeakSet; },
-/* harmony export */ iteratee: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.iteratee; },
-/* harmony export */ keys: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.keys; },
-/* harmony export */ last: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.last; },
-/* harmony export */ lastIndexOf: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.lastIndexOf; },
-/* harmony export */ map: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.map; },
-/* harmony export */ mapObject: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.mapObject; },
-/* harmony export */ matcher: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.matcher; },
-/* harmony export */ matches: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.matches; },
-/* harmony export */ max: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.max; },
-/* harmony export */ memoize: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.memoize; },
-/* harmony export */ methods: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.methods; },
-/* harmony export */ min: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.min; },
-/* harmony export */ mixin: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.mixin; },
-/* harmony export */ negate: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.negate; },
-/* harmony export */ noop: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.noop; },
-/* harmony export */ now: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.now; },
-/* harmony export */ object: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.object; },
-/* harmony export */ omit: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.omit; },
-/* harmony export */ once: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.once; },
-/* harmony export */ pairs: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.pairs; },
-/* harmony export */ partial: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.partial; },
-/* harmony export */ partition: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.partition; },
-/* harmony export */ pick: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.pick; },
-/* harmony export */ pluck: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.pluck; },
-/* harmony export */ property: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.property; },
-/* harmony export */ propertyOf: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.propertyOf; },
-/* harmony export */ random: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.random; },
-/* harmony export */ range: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.range; },
-/* harmony export */ reduce: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.reduce; },
-/* harmony export */ reduceRight: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.reduceRight; },
-/* harmony export */ reject: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.reject; },
-/* harmony export */ rest: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.rest; },
-/* harmony export */ restArguments: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.restArguments; },
-/* harmony export */ result: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.result; },
-/* harmony export */ sample: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.sample; },
-/* harmony export */ select: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.select; },
-/* harmony export */ shuffle: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.shuffle; },
-/* harmony export */ size: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.size; },
-/* harmony export */ some: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.some; },
-/* harmony export */ sortBy: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.sortBy; },
-/* harmony export */ sortedIndex: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.sortedIndex; },
-/* harmony export */ tail: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.tail; },
-/* harmony export */ take: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.take; },
-/* harmony export */ tap: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.tap; },
-/* harmony export */ template: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.template; },
-/* harmony export */ templateSettings: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.templateSettings; },
-/* harmony export */ throttle: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.throttle; },
-/* harmony export */ times: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.times; },
-/* harmony export */ toArray: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.toArray; },
-/* harmony export */ toPath: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.toPath; },
-/* harmony export */ transpose: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.transpose; },
-/* harmony export */ unescape: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.unescape; },
-/* harmony export */ union: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.union; },
-/* harmony export */ uniq: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.uniq; },
-/* harmony export */ unique: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.unique; },
-/* harmony export */ uniqueId: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.uniqueId; },
-/* harmony export */ unzip: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.unzip; },
-/* harmony export */ values: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.values; },
-/* harmony export */ where: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.where; },
-/* harmony export */ without: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.without; },
-/* harmony export */ wrap: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.wrap; },
-/* harmony export */ zip: function() { return /* reexport safe */ _index_js__WEBPACK_IMPORTED_MODULE_1__.zip; }
-/* harmony export */ });
-/* harmony import */ var _index_default_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./index-default.js */ "./node_modules/underscore/modules/index-default.js");
-/* harmony import */ var _index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./index.js */ "./node_modules/underscore/modules/index.js");
-// ESM Exports
-// ===========
-// This module is the package entry point for ES module users. In other words,
-// it is the module they are interfacing with when they import from the whole
-// package instead of from a submodule, like this:
-//
-// ```js
-// import { map } from 'underscore';
-// ```
-//
-// The difference with `./index-default`, which is the package entry point for
-// CommonJS, AMD and UMD users, is purely technical. In ES modules, named and
-// default exports are considered to be siblings, so when you have a default
-// export, its properties are not automatically available as named exports. For
-// this reason, we re-export the named exports in addition to providing the same
-// default export as in `./index-default`.
-
-
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/index-default.js":
-/*!**********************************************************!*\
- !*** ./node_modules/underscore/modules/index-default.js ***!
- \**********************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./index.js */ "./node_modules/underscore/modules/index.js");
-// Default Export
-// ==============
-// In this module, we mix our bundled exports into the `_` object and export
-// the result. This is analogous to setting `module.exports = _` in CommonJS.
-// Hence, this module is also the entry point of our UMD bundle and the package
-// entry point for CommonJS and AMD users. In other words, this is (the source
-// of) the module you are interfacing with when you do any of the following:
-//
-// ```js
-// // CommonJS
-// var _ = require('underscore');
-//
-// // AMD
-// define(['underscore'], function(_) {...});
-//
-// // UMD in the browser
-// // _ is available as a global variable
-// ```
-
-
-
-// Add all of the Underscore functions to the wrapper object.
-var _ = (0,_index_js__WEBPACK_IMPORTED_MODULE_0__.mixin)(_index_js__WEBPACK_IMPORTED_MODULE_0__);
-// Legacy Node.js API.
-_._ = _;
-// Export the Underscore API.
-/* harmony default export */ __webpack_exports__["default"] = (_);
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/index.js":
-/*!**************************************************!*\
- !*** ./node_modules/underscore/modules/index.js ***!
- \**************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ VERSION: function() { return /* reexport safe */ _setup_js__WEBPACK_IMPORTED_MODULE_0__.VERSION; },
-/* harmony export */ after: function() { return /* reexport safe */ _after_js__WEBPACK_IMPORTED_MODULE_72__["default"]; },
-/* harmony export */ all: function() { return /* reexport safe */ _every_js__WEBPACK_IMPORTED_MODULE_89__["default"]; },
-/* harmony export */ allKeys: function() { return /* reexport safe */ _allKeys_js__WEBPACK_IMPORTED_MODULE_29__["default"]; },
-/* harmony export */ any: function() { return /* reexport safe */ _some_js__WEBPACK_IMPORTED_MODULE_90__["default"]; },
-/* harmony export */ assign: function() { return /* reexport safe */ _extendOwn_js__WEBPACK_IMPORTED_MODULE_35__["default"]; },
-/* harmony export */ before: function() { return /* reexport safe */ _before_js__WEBPACK_IMPORTED_MODULE_73__["default"]; },
-/* harmony export */ bind: function() { return /* reexport safe */ _bind_js__WEBPACK_IMPORTED_MODULE_62__["default"]; },
-/* harmony export */ bindAll: function() { return /* reexport safe */ _bindAll_js__WEBPACK_IMPORTED_MODULE_63__["default"]; },
-/* harmony export */ chain: function() { return /* reexport safe */ _chain_js__WEBPACK_IMPORTED_MODULE_59__["default"]; },
-/* harmony export */ chunk: function() { return /* reexport safe */ _chunk_js__WEBPACK_IMPORTED_MODULE_123__["default"]; },
-/* harmony export */ clone: function() { return /* reexport safe */ _clone_js__WEBPACK_IMPORTED_MODULE_38__["default"]; },
-/* harmony export */ collect: function() { return /* reexport safe */ _map_js__WEBPACK_IMPORTED_MODULE_84__["default"]; },
-/* harmony export */ compact: function() { return /* reexport safe */ _compact_js__WEBPACK_IMPORTED_MODULE_112__["default"]; },
-/* harmony export */ compose: function() { return /* reexport safe */ _compose_js__WEBPACK_IMPORTED_MODULE_71__["default"]; },
-/* harmony export */ constant: function() { return /* reexport safe */ _constant_js__WEBPACK_IMPORTED_MODULE_44__["default"]; },
-/* harmony export */ contains: function() { return /* reexport safe */ _contains_js__WEBPACK_IMPORTED_MODULE_91__["default"]; },
-/* harmony export */ countBy: function() { return /* reexport safe */ _countBy_js__WEBPACK_IMPORTED_MODULE_102__["default"]; },
-/* harmony export */ create: function() { return /* reexport safe */ _create_js__WEBPACK_IMPORTED_MODULE_37__["default"]; },
-/* harmony export */ debounce: function() { return /* reexport safe */ _debounce_js__WEBPACK_IMPORTED_MODULE_68__["default"]; },
-/* harmony export */ "default": function() { return /* reexport safe */ _underscore_array_methods_js__WEBPACK_IMPORTED_MODULE_125__["default"]; },
-/* harmony export */ defaults: function() { return /* reexport safe */ _defaults_js__WEBPACK_IMPORTED_MODULE_36__["default"]; },
-/* harmony export */ defer: function() { return /* reexport safe */ _defer_js__WEBPACK_IMPORTED_MODULE_66__["default"]; },
-/* harmony export */ delay: function() { return /* reexport safe */ _delay_js__WEBPACK_IMPORTED_MODULE_65__["default"]; },
-/* harmony export */ detect: function() { return /* reexport safe */ _find_js__WEBPACK_IMPORTED_MODULE_81__["default"]; },
-/* harmony export */ difference: function() { return /* reexport safe */ _difference_js__WEBPACK_IMPORTED_MODULE_118__["default"]; },
-/* harmony export */ drop: function() { return /* reexport safe */ _rest_js__WEBPACK_IMPORTED_MODULE_111__["default"]; },
-/* harmony export */ each: function() { return /* reexport safe */ _each_js__WEBPACK_IMPORTED_MODULE_83__["default"]; },
-/* harmony export */ escape: function() { return /* reexport safe */ _escape_js__WEBPACK_IMPORTED_MODULE_53__["default"]; },
-/* harmony export */ every: function() { return /* reexport safe */ _every_js__WEBPACK_IMPORTED_MODULE_89__["default"]; },
-/* harmony export */ extend: function() { return /* reexport safe */ _extend_js__WEBPACK_IMPORTED_MODULE_34__["default"]; },
-/* harmony export */ extendOwn: function() { return /* reexport safe */ _extendOwn_js__WEBPACK_IMPORTED_MODULE_35__["default"]; },
-/* harmony export */ filter: function() { return /* reexport safe */ _filter_js__WEBPACK_IMPORTED_MODULE_87__["default"]; },
-/* harmony export */ find: function() { return /* reexport safe */ _find_js__WEBPACK_IMPORTED_MODULE_81__["default"]; },
-/* harmony export */ findIndex: function() { return /* reexport safe */ _findIndex_js__WEBPACK_IMPORTED_MODULE_76__["default"]; },
-/* harmony export */ findKey: function() { return /* reexport safe */ _findKey_js__WEBPACK_IMPORTED_MODULE_75__["default"]; },
-/* harmony export */ findLastIndex: function() { return /* reexport safe */ _findLastIndex_js__WEBPACK_IMPORTED_MODULE_77__["default"]; },
-/* harmony export */ findWhere: function() { return /* reexport safe */ _findWhere_js__WEBPACK_IMPORTED_MODULE_82__["default"]; },
-/* harmony export */ first: function() { return /* reexport safe */ _first_js__WEBPACK_IMPORTED_MODULE_108__["default"]; },
-/* harmony export */ flatten: function() { return /* reexport safe */ _flatten_js__WEBPACK_IMPORTED_MODULE_113__["default"]; },
-/* harmony export */ foldl: function() { return /* reexport safe */ _reduce_js__WEBPACK_IMPORTED_MODULE_85__["default"]; },
-/* harmony export */ foldr: function() { return /* reexport safe */ _reduceRight_js__WEBPACK_IMPORTED_MODULE_86__["default"]; },
-/* harmony export */ forEach: function() { return /* reexport safe */ _each_js__WEBPACK_IMPORTED_MODULE_83__["default"]; },
-/* harmony export */ functions: function() { return /* reexport safe */ _functions_js__WEBPACK_IMPORTED_MODULE_33__["default"]; },
-/* harmony export */ get: function() { return /* reexport safe */ _get_js__WEBPACK_IMPORTED_MODULE_40__["default"]; },
-/* harmony export */ groupBy: function() { return /* reexport safe */ _groupBy_js__WEBPACK_IMPORTED_MODULE_100__["default"]; },
-/* harmony export */ has: function() { return /* reexport safe */ _has_js__WEBPACK_IMPORTED_MODULE_41__["default"]; },
-/* harmony export */ head: function() { return /* reexport safe */ _first_js__WEBPACK_IMPORTED_MODULE_108__["default"]; },
-/* harmony export */ identity: function() { return /* reexport safe */ _identity_js__WEBPACK_IMPORTED_MODULE_43__["default"]; },
-/* harmony export */ include: function() { return /* reexport safe */ _contains_js__WEBPACK_IMPORTED_MODULE_91__["default"]; },
-/* harmony export */ includes: function() { return /* reexport safe */ _contains_js__WEBPACK_IMPORTED_MODULE_91__["default"]; },
-/* harmony export */ indexBy: function() { return /* reexport safe */ _indexBy_js__WEBPACK_IMPORTED_MODULE_101__["default"]; },
-/* harmony export */ indexOf: function() { return /* reexport safe */ _indexOf_js__WEBPACK_IMPORTED_MODULE_79__["default"]; },
-/* harmony export */ initial: function() { return /* reexport safe */ _initial_js__WEBPACK_IMPORTED_MODULE_109__["default"]; },
-/* harmony export */ inject: function() { return /* reexport safe */ _reduce_js__WEBPACK_IMPORTED_MODULE_85__["default"]; },
-/* harmony export */ intersection: function() { return /* reexport safe */ _intersection_js__WEBPACK_IMPORTED_MODULE_117__["default"]; },
-/* harmony export */ invert: function() { return /* reexport safe */ _invert_js__WEBPACK_IMPORTED_MODULE_32__["default"]; },
-/* harmony export */ invoke: function() { return /* reexport safe */ _invoke_js__WEBPACK_IMPORTED_MODULE_92__["default"]; },
-/* harmony export */ isArguments: function() { return /* reexport safe */ _isArguments_js__WEBPACK_IMPORTED_MODULE_17__["default"]; },
-/* harmony export */ isArray: function() { return /* reexport safe */ _isArray_js__WEBPACK_IMPORTED_MODULE_15__["default"]; },
-/* harmony export */ isArrayBuffer: function() { return /* reexport safe */ _isArrayBuffer_js__WEBPACK_IMPORTED_MODULE_13__["default"]; },
-/* harmony export */ isBoolean: function() { return /* reexport safe */ _isBoolean_js__WEBPACK_IMPORTED_MODULE_5__["default"]; },
-/* harmony export */ isDataView: function() { return /* reexport safe */ _isDataView_js__WEBPACK_IMPORTED_MODULE_14__["default"]; },
-/* harmony export */ isDate: function() { return /* reexport safe */ _isDate_js__WEBPACK_IMPORTED_MODULE_9__["default"]; },
-/* harmony export */ isElement: function() { return /* reexport safe */ _isElement_js__WEBPACK_IMPORTED_MODULE_6__["default"]; },
-/* harmony export */ isEmpty: function() { return /* reexport safe */ _isEmpty_js__WEBPACK_IMPORTED_MODULE_21__["default"]; },
-/* harmony export */ isEqual: function() { return /* reexport safe */ _isEqual_js__WEBPACK_IMPORTED_MODULE_23__["default"]; },
-/* harmony export */ isError: function() { return /* reexport safe */ _isError_js__WEBPACK_IMPORTED_MODULE_11__["default"]; },
-/* harmony export */ isFinite: function() { return /* reexport safe */ _isFinite_js__WEBPACK_IMPORTED_MODULE_18__["default"]; },
-/* harmony export */ isFunction: function() { return /* reexport safe */ _isFunction_js__WEBPACK_IMPORTED_MODULE_16__["default"]; },
-/* harmony export */ isMap: function() { return /* reexport safe */ _isMap_js__WEBPACK_IMPORTED_MODULE_24__["default"]; },
-/* harmony export */ isMatch: function() { return /* reexport safe */ _isMatch_js__WEBPACK_IMPORTED_MODULE_22__["default"]; },
-/* harmony export */ isNaN: function() { return /* reexport safe */ _isNaN_js__WEBPACK_IMPORTED_MODULE_19__["default"]; },
-/* harmony export */ isNull: function() { return /* reexport safe */ _isNull_js__WEBPACK_IMPORTED_MODULE_3__["default"]; },
-/* harmony export */ isNumber: function() { return /* reexport safe */ _isNumber_js__WEBPACK_IMPORTED_MODULE_8__["default"]; },
-/* harmony export */ isObject: function() { return /* reexport safe */ _isObject_js__WEBPACK_IMPORTED_MODULE_2__["default"]; },
-/* harmony export */ isRegExp: function() { return /* reexport safe */ _isRegExp_js__WEBPACK_IMPORTED_MODULE_10__["default"]; },
-/* harmony export */ isSet: function() { return /* reexport safe */ _isSet_js__WEBPACK_IMPORTED_MODULE_26__["default"]; },
-/* harmony export */ isString: function() { return /* reexport safe */ _isString_js__WEBPACK_IMPORTED_MODULE_7__["default"]; },
-/* harmony export */ isSymbol: function() { return /* reexport safe */ _isSymbol_js__WEBPACK_IMPORTED_MODULE_12__["default"]; },
-/* harmony export */ isTypedArray: function() { return /* reexport safe */ _isTypedArray_js__WEBPACK_IMPORTED_MODULE_20__["default"]; },
-/* harmony export */ isUndefined: function() { return /* reexport safe */ _isUndefined_js__WEBPACK_IMPORTED_MODULE_4__["default"]; },
-/* harmony export */ isWeakMap: function() { return /* reexport safe */ _isWeakMap_js__WEBPACK_IMPORTED_MODULE_25__["default"]; },
-/* harmony export */ isWeakSet: function() { return /* reexport safe */ _isWeakSet_js__WEBPACK_IMPORTED_MODULE_27__["default"]; },
-/* harmony export */ iteratee: function() { return /* reexport safe */ _iteratee_js__WEBPACK_IMPORTED_MODULE_60__["default"]; },
-/* harmony export */ keys: function() { return /* reexport safe */ _keys_js__WEBPACK_IMPORTED_MODULE_28__["default"]; },
-/* harmony export */ last: function() { return /* reexport safe */ _last_js__WEBPACK_IMPORTED_MODULE_110__["default"]; },
-/* harmony export */ lastIndexOf: function() { return /* reexport safe */ _lastIndexOf_js__WEBPACK_IMPORTED_MODULE_80__["default"]; },
-/* harmony export */ map: function() { return /* reexport safe */ _map_js__WEBPACK_IMPORTED_MODULE_84__["default"]; },
-/* harmony export */ mapObject: function() { return /* reexport safe */ _mapObject_js__WEBPACK_IMPORTED_MODULE_42__["default"]; },
-/* harmony export */ matcher: function() { return /* reexport safe */ _matcher_js__WEBPACK_IMPORTED_MODULE_49__["default"]; },
-/* harmony export */ matches: function() { return /* reexport safe */ _matcher_js__WEBPACK_IMPORTED_MODULE_49__["default"]; },
-/* harmony export */ max: function() { return /* reexport safe */ _max_js__WEBPACK_IMPORTED_MODULE_95__["default"]; },
-/* harmony export */ memoize: function() { return /* reexport safe */ _memoize_js__WEBPACK_IMPORTED_MODULE_64__["default"]; },
-/* harmony export */ methods: function() { return /* reexport safe */ _functions_js__WEBPACK_IMPORTED_MODULE_33__["default"]; },
-/* harmony export */ min: function() { return /* reexport safe */ _min_js__WEBPACK_IMPORTED_MODULE_96__["default"]; },
-/* harmony export */ mixin: function() { return /* reexport safe */ _mixin_js__WEBPACK_IMPORTED_MODULE_124__["default"]; },
-/* harmony export */ negate: function() { return /* reexport safe */ _negate_js__WEBPACK_IMPORTED_MODULE_70__["default"]; },
-/* harmony export */ noop: function() { return /* reexport safe */ _noop_js__WEBPACK_IMPORTED_MODULE_45__["default"]; },
-/* harmony export */ now: function() { return /* reexport safe */ _now_js__WEBPACK_IMPORTED_MODULE_52__["default"]; },
-/* harmony export */ object: function() { return /* reexport safe */ _object_js__WEBPACK_IMPORTED_MODULE_121__["default"]; },
-/* harmony export */ omit: function() { return /* reexport safe */ _omit_js__WEBPACK_IMPORTED_MODULE_107__["default"]; },
-/* harmony export */ once: function() { return /* reexport safe */ _once_js__WEBPACK_IMPORTED_MODULE_74__["default"]; },
-/* harmony export */ pairs: function() { return /* reexport safe */ _pairs_js__WEBPACK_IMPORTED_MODULE_31__["default"]; },
-/* harmony export */ partial: function() { return /* reexport safe */ _partial_js__WEBPACK_IMPORTED_MODULE_61__["default"]; },
-/* harmony export */ partition: function() { return /* reexport safe */ _partition_js__WEBPACK_IMPORTED_MODULE_103__["default"]; },
-/* harmony export */ pick: function() { return /* reexport safe */ _pick_js__WEBPACK_IMPORTED_MODULE_106__["default"]; },
-/* harmony export */ pluck: function() { return /* reexport safe */ _pluck_js__WEBPACK_IMPORTED_MODULE_93__["default"]; },
-/* harmony export */ property: function() { return /* reexport safe */ _property_js__WEBPACK_IMPORTED_MODULE_47__["default"]; },
-/* harmony export */ propertyOf: function() { return /* reexport safe */ _propertyOf_js__WEBPACK_IMPORTED_MODULE_48__["default"]; },
-/* harmony export */ random: function() { return /* reexport safe */ _random_js__WEBPACK_IMPORTED_MODULE_51__["default"]; },
-/* harmony export */ range: function() { return /* reexport safe */ _range_js__WEBPACK_IMPORTED_MODULE_122__["default"]; },
-/* harmony export */ reduce: function() { return /* reexport safe */ _reduce_js__WEBPACK_IMPORTED_MODULE_85__["default"]; },
-/* harmony export */ reduceRight: function() { return /* reexport safe */ _reduceRight_js__WEBPACK_IMPORTED_MODULE_86__["default"]; },
-/* harmony export */ reject: function() { return /* reexport safe */ _reject_js__WEBPACK_IMPORTED_MODULE_88__["default"]; },
-/* harmony export */ rest: function() { return /* reexport safe */ _rest_js__WEBPACK_IMPORTED_MODULE_111__["default"]; },
-/* harmony export */ restArguments: function() { return /* reexport safe */ _restArguments_js__WEBPACK_IMPORTED_MODULE_1__["default"]; },
-/* harmony export */ result: function() { return /* reexport safe */ _result_js__WEBPACK_IMPORTED_MODULE_57__["default"]; },
-/* harmony export */ sample: function() { return /* reexport safe */ _sample_js__WEBPACK_IMPORTED_MODULE_98__["default"]; },
-/* harmony export */ select: function() { return /* reexport safe */ _filter_js__WEBPACK_IMPORTED_MODULE_87__["default"]; },
-/* harmony export */ shuffle: function() { return /* reexport safe */ _shuffle_js__WEBPACK_IMPORTED_MODULE_97__["default"]; },
-/* harmony export */ size: function() { return /* reexport safe */ _size_js__WEBPACK_IMPORTED_MODULE_105__["default"]; },
-/* harmony export */ some: function() { return /* reexport safe */ _some_js__WEBPACK_IMPORTED_MODULE_90__["default"]; },
-/* harmony export */ sortBy: function() { return /* reexport safe */ _sortBy_js__WEBPACK_IMPORTED_MODULE_99__["default"]; },
-/* harmony export */ sortedIndex: function() { return /* reexport safe */ _sortedIndex_js__WEBPACK_IMPORTED_MODULE_78__["default"]; },
-/* harmony export */ tail: function() { return /* reexport safe */ _rest_js__WEBPACK_IMPORTED_MODULE_111__["default"]; },
-/* harmony export */ take: function() { return /* reexport safe */ _first_js__WEBPACK_IMPORTED_MODULE_108__["default"]; },
-/* harmony export */ tap: function() { return /* reexport safe */ _tap_js__WEBPACK_IMPORTED_MODULE_39__["default"]; },
-/* harmony export */ template: function() { return /* reexport safe */ _template_js__WEBPACK_IMPORTED_MODULE_56__["default"]; },
-/* harmony export */ templateSettings: function() { return /* reexport safe */ _templateSettings_js__WEBPACK_IMPORTED_MODULE_55__["default"]; },
-/* harmony export */ throttle: function() { return /* reexport safe */ _throttle_js__WEBPACK_IMPORTED_MODULE_67__["default"]; },
-/* harmony export */ times: function() { return /* reexport safe */ _times_js__WEBPACK_IMPORTED_MODULE_50__["default"]; },
-/* harmony export */ toArray: function() { return /* reexport safe */ _toArray_js__WEBPACK_IMPORTED_MODULE_104__["default"]; },
-/* harmony export */ toPath: function() { return /* reexport safe */ _toPath_js__WEBPACK_IMPORTED_MODULE_46__["default"]; },
-/* harmony export */ transpose: function() { return /* reexport safe */ _unzip_js__WEBPACK_IMPORTED_MODULE_119__["default"]; },
-/* harmony export */ unescape: function() { return /* reexport safe */ _unescape_js__WEBPACK_IMPORTED_MODULE_54__["default"]; },
-/* harmony export */ union: function() { return /* reexport safe */ _union_js__WEBPACK_IMPORTED_MODULE_116__["default"]; },
-/* harmony export */ uniq: function() { return /* reexport safe */ _uniq_js__WEBPACK_IMPORTED_MODULE_115__["default"]; },
-/* harmony export */ unique: function() { return /* reexport safe */ _uniq_js__WEBPACK_IMPORTED_MODULE_115__["default"]; },
-/* harmony export */ uniqueId: function() { return /* reexport safe */ _uniqueId_js__WEBPACK_IMPORTED_MODULE_58__["default"]; },
-/* harmony export */ unzip: function() { return /* reexport safe */ _unzip_js__WEBPACK_IMPORTED_MODULE_119__["default"]; },
-/* harmony export */ values: function() { return /* reexport safe */ _values_js__WEBPACK_IMPORTED_MODULE_30__["default"]; },
-/* harmony export */ where: function() { return /* reexport safe */ _where_js__WEBPACK_IMPORTED_MODULE_94__["default"]; },
-/* harmony export */ without: function() { return /* reexport safe */ _without_js__WEBPACK_IMPORTED_MODULE_114__["default"]; },
-/* harmony export */ wrap: function() { return /* reexport safe */ _wrap_js__WEBPACK_IMPORTED_MODULE_69__["default"]; },
-/* harmony export */ zip: function() { return /* reexport safe */ _zip_js__WEBPACK_IMPORTED_MODULE_120__["default"]; }
-/* harmony export */ });
-/* harmony import */ var _setup_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_setup.js */ "./node_modules/underscore/modules/_setup.js");
-/* harmony import */ var _restArguments_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./restArguments.js */ "./node_modules/underscore/modules/restArguments.js");
-/* harmony import */ var _isObject_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./isObject.js */ "./node_modules/underscore/modules/isObject.js");
-/* harmony import */ var _isNull_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./isNull.js */ "./node_modules/underscore/modules/isNull.js");
-/* harmony import */ var _isUndefined_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./isUndefined.js */ "./node_modules/underscore/modules/isUndefined.js");
-/* harmony import */ var _isBoolean_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./isBoolean.js */ "./node_modules/underscore/modules/isBoolean.js");
-/* harmony import */ var _isElement_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./isElement.js */ "./node_modules/underscore/modules/isElement.js");
-/* harmony import */ var _isString_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./isString.js */ "./node_modules/underscore/modules/isString.js");
-/* harmony import */ var _isNumber_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./isNumber.js */ "./node_modules/underscore/modules/isNumber.js");
-/* harmony import */ var _isDate_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./isDate.js */ "./node_modules/underscore/modules/isDate.js");
-/* harmony import */ var _isRegExp_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./isRegExp.js */ "./node_modules/underscore/modules/isRegExp.js");
-/* harmony import */ var _isError_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./isError.js */ "./node_modules/underscore/modules/isError.js");
-/* harmony import */ var _isSymbol_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./isSymbol.js */ "./node_modules/underscore/modules/isSymbol.js");
-/* harmony import */ var _isArrayBuffer_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./isArrayBuffer.js */ "./node_modules/underscore/modules/isArrayBuffer.js");
-/* harmony import */ var _isDataView_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./isDataView.js */ "./node_modules/underscore/modules/isDataView.js");
-/* harmony import */ var _isArray_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./isArray.js */ "./node_modules/underscore/modules/isArray.js");
-/* harmony import */ var _isFunction_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./isFunction.js */ "./node_modules/underscore/modules/isFunction.js");
-/* harmony import */ var _isArguments_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./isArguments.js */ "./node_modules/underscore/modules/isArguments.js");
-/* harmony import */ var _isFinite_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./isFinite.js */ "./node_modules/underscore/modules/isFinite.js");
-/* harmony import */ var _isNaN_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ./isNaN.js */ "./node_modules/underscore/modules/isNaN.js");
-/* harmony import */ var _isTypedArray_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ./isTypedArray.js */ "./node_modules/underscore/modules/isTypedArray.js");
-/* harmony import */ var _isEmpty_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ./isEmpty.js */ "./node_modules/underscore/modules/isEmpty.js");
-/* harmony import */ var _isMatch_js__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ./isMatch.js */ "./node_modules/underscore/modules/isMatch.js");
-/* harmony import */ var _isEqual_js__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ./isEqual.js */ "./node_modules/underscore/modules/isEqual.js");
-/* harmony import */ var _isMap_js__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ./isMap.js */ "./node_modules/underscore/modules/isMap.js");
-/* harmony import */ var _isWeakMap_js__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! ./isWeakMap.js */ "./node_modules/underscore/modules/isWeakMap.js");
-/* harmony import */ var _isSet_js__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! ./isSet.js */ "./node_modules/underscore/modules/isSet.js");
-/* harmony import */ var _isWeakSet_js__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(/*! ./isWeakSet.js */ "./node_modules/underscore/modules/isWeakSet.js");
-/* harmony import */ var _keys_js__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(/*! ./keys.js */ "./node_modules/underscore/modules/keys.js");
-/* harmony import */ var _allKeys_js__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(/*! ./allKeys.js */ "./node_modules/underscore/modules/allKeys.js");
-/* harmony import */ var _values_js__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(/*! ./values.js */ "./node_modules/underscore/modules/values.js");
-/* harmony import */ var _pairs_js__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__(/*! ./pairs.js */ "./node_modules/underscore/modules/pairs.js");
-/* harmony import */ var _invert_js__WEBPACK_IMPORTED_MODULE_32__ = __webpack_require__(/*! ./invert.js */ "./node_modules/underscore/modules/invert.js");
-/* harmony import */ var _functions_js__WEBPACK_IMPORTED_MODULE_33__ = __webpack_require__(/*! ./functions.js */ "./node_modules/underscore/modules/functions.js");
-/* harmony import */ var _extend_js__WEBPACK_IMPORTED_MODULE_34__ = __webpack_require__(/*! ./extend.js */ "./node_modules/underscore/modules/extend.js");
-/* harmony import */ var _extendOwn_js__WEBPACK_IMPORTED_MODULE_35__ = __webpack_require__(/*! ./extendOwn.js */ "./node_modules/underscore/modules/extendOwn.js");
-/* harmony import */ var _defaults_js__WEBPACK_IMPORTED_MODULE_36__ = __webpack_require__(/*! ./defaults.js */ "./node_modules/underscore/modules/defaults.js");
-/* harmony import */ var _create_js__WEBPACK_IMPORTED_MODULE_37__ = __webpack_require__(/*! ./create.js */ "./node_modules/underscore/modules/create.js");
-/* harmony import */ var _clone_js__WEBPACK_IMPORTED_MODULE_38__ = __webpack_require__(/*! ./clone.js */ "./node_modules/underscore/modules/clone.js");
-/* harmony import */ var _tap_js__WEBPACK_IMPORTED_MODULE_39__ = __webpack_require__(/*! ./tap.js */ "./node_modules/underscore/modules/tap.js");
-/* harmony import */ var _get_js__WEBPACK_IMPORTED_MODULE_40__ = __webpack_require__(/*! ./get.js */ "./node_modules/underscore/modules/get.js");
-/* harmony import */ var _has_js__WEBPACK_IMPORTED_MODULE_41__ = __webpack_require__(/*! ./has.js */ "./node_modules/underscore/modules/has.js");
-/* harmony import */ var _mapObject_js__WEBPACK_IMPORTED_MODULE_42__ = __webpack_require__(/*! ./mapObject.js */ "./node_modules/underscore/modules/mapObject.js");
-/* harmony import */ var _identity_js__WEBPACK_IMPORTED_MODULE_43__ = __webpack_require__(/*! ./identity.js */ "./node_modules/underscore/modules/identity.js");
-/* harmony import */ var _constant_js__WEBPACK_IMPORTED_MODULE_44__ = __webpack_require__(/*! ./constant.js */ "./node_modules/underscore/modules/constant.js");
-/* harmony import */ var _noop_js__WEBPACK_IMPORTED_MODULE_45__ = __webpack_require__(/*! ./noop.js */ "./node_modules/underscore/modules/noop.js");
-/* harmony import */ var _toPath_js__WEBPACK_IMPORTED_MODULE_46__ = __webpack_require__(/*! ./toPath.js */ "./node_modules/underscore/modules/toPath.js");
-/* harmony import */ var _property_js__WEBPACK_IMPORTED_MODULE_47__ = __webpack_require__(/*! ./property.js */ "./node_modules/underscore/modules/property.js");
-/* harmony import */ var _propertyOf_js__WEBPACK_IMPORTED_MODULE_48__ = __webpack_require__(/*! ./propertyOf.js */ "./node_modules/underscore/modules/propertyOf.js");
-/* harmony import */ var _matcher_js__WEBPACK_IMPORTED_MODULE_49__ = __webpack_require__(/*! ./matcher.js */ "./node_modules/underscore/modules/matcher.js");
-/* harmony import */ var _times_js__WEBPACK_IMPORTED_MODULE_50__ = __webpack_require__(/*! ./times.js */ "./node_modules/underscore/modules/times.js");
-/* harmony import */ var _random_js__WEBPACK_IMPORTED_MODULE_51__ = __webpack_require__(/*! ./random.js */ "./node_modules/underscore/modules/random.js");
-/* harmony import */ var _now_js__WEBPACK_IMPORTED_MODULE_52__ = __webpack_require__(/*! ./now.js */ "./node_modules/underscore/modules/now.js");
-/* harmony import */ var _escape_js__WEBPACK_IMPORTED_MODULE_53__ = __webpack_require__(/*! ./escape.js */ "./node_modules/underscore/modules/escape.js");
-/* harmony import */ var _unescape_js__WEBPACK_IMPORTED_MODULE_54__ = __webpack_require__(/*! ./unescape.js */ "./node_modules/underscore/modules/unescape.js");
-/* harmony import */ var _templateSettings_js__WEBPACK_IMPORTED_MODULE_55__ = __webpack_require__(/*! ./templateSettings.js */ "./node_modules/underscore/modules/templateSettings.js");
-/* harmony import */ var _template_js__WEBPACK_IMPORTED_MODULE_56__ = __webpack_require__(/*! ./template.js */ "./node_modules/underscore/modules/template.js");
-/* harmony import */ var _result_js__WEBPACK_IMPORTED_MODULE_57__ = __webpack_require__(/*! ./result.js */ "./node_modules/underscore/modules/result.js");
-/* harmony import */ var _uniqueId_js__WEBPACK_IMPORTED_MODULE_58__ = __webpack_require__(/*! ./uniqueId.js */ "./node_modules/underscore/modules/uniqueId.js");
-/* harmony import */ var _chain_js__WEBPACK_IMPORTED_MODULE_59__ = __webpack_require__(/*! ./chain.js */ "./node_modules/underscore/modules/chain.js");
-/* harmony import */ var _iteratee_js__WEBPACK_IMPORTED_MODULE_60__ = __webpack_require__(/*! ./iteratee.js */ "./node_modules/underscore/modules/iteratee.js");
-/* harmony import */ var _partial_js__WEBPACK_IMPORTED_MODULE_61__ = __webpack_require__(/*! ./partial.js */ "./node_modules/underscore/modules/partial.js");
-/* harmony import */ var _bind_js__WEBPACK_IMPORTED_MODULE_62__ = __webpack_require__(/*! ./bind.js */ "./node_modules/underscore/modules/bind.js");
-/* harmony import */ var _bindAll_js__WEBPACK_IMPORTED_MODULE_63__ = __webpack_require__(/*! ./bindAll.js */ "./node_modules/underscore/modules/bindAll.js");
-/* harmony import */ var _memoize_js__WEBPACK_IMPORTED_MODULE_64__ = __webpack_require__(/*! ./memoize.js */ "./node_modules/underscore/modules/memoize.js");
-/* harmony import */ var _delay_js__WEBPACK_IMPORTED_MODULE_65__ = __webpack_require__(/*! ./delay.js */ "./node_modules/underscore/modules/delay.js");
-/* harmony import */ var _defer_js__WEBPACK_IMPORTED_MODULE_66__ = __webpack_require__(/*! ./defer.js */ "./node_modules/underscore/modules/defer.js");
-/* harmony import */ var _throttle_js__WEBPACK_IMPORTED_MODULE_67__ = __webpack_require__(/*! ./throttle.js */ "./node_modules/underscore/modules/throttle.js");
-/* harmony import */ var _debounce_js__WEBPACK_IMPORTED_MODULE_68__ = __webpack_require__(/*! ./debounce.js */ "./node_modules/underscore/modules/debounce.js");
-/* harmony import */ var _wrap_js__WEBPACK_IMPORTED_MODULE_69__ = __webpack_require__(/*! ./wrap.js */ "./node_modules/underscore/modules/wrap.js");
-/* harmony import */ var _negate_js__WEBPACK_IMPORTED_MODULE_70__ = __webpack_require__(/*! ./negate.js */ "./node_modules/underscore/modules/negate.js");
-/* harmony import */ var _compose_js__WEBPACK_IMPORTED_MODULE_71__ = __webpack_require__(/*! ./compose.js */ "./node_modules/underscore/modules/compose.js");
-/* harmony import */ var _after_js__WEBPACK_IMPORTED_MODULE_72__ = __webpack_require__(/*! ./after.js */ "./node_modules/underscore/modules/after.js");
-/* harmony import */ var _before_js__WEBPACK_IMPORTED_MODULE_73__ = __webpack_require__(/*! ./before.js */ "./node_modules/underscore/modules/before.js");
-/* harmony import */ var _once_js__WEBPACK_IMPORTED_MODULE_74__ = __webpack_require__(/*! ./once.js */ "./node_modules/underscore/modules/once.js");
-/* harmony import */ var _findKey_js__WEBPACK_IMPORTED_MODULE_75__ = __webpack_require__(/*! ./findKey.js */ "./node_modules/underscore/modules/findKey.js");
-/* harmony import */ var _findIndex_js__WEBPACK_IMPORTED_MODULE_76__ = __webpack_require__(/*! ./findIndex.js */ "./node_modules/underscore/modules/findIndex.js");
-/* harmony import */ var _findLastIndex_js__WEBPACK_IMPORTED_MODULE_77__ = __webpack_require__(/*! ./findLastIndex.js */ "./node_modules/underscore/modules/findLastIndex.js");
-/* harmony import */ var _sortedIndex_js__WEBPACK_IMPORTED_MODULE_78__ = __webpack_require__(/*! ./sortedIndex.js */ "./node_modules/underscore/modules/sortedIndex.js");
-/* harmony import */ var _indexOf_js__WEBPACK_IMPORTED_MODULE_79__ = __webpack_require__(/*! ./indexOf.js */ "./node_modules/underscore/modules/indexOf.js");
-/* harmony import */ var _lastIndexOf_js__WEBPACK_IMPORTED_MODULE_80__ = __webpack_require__(/*! ./lastIndexOf.js */ "./node_modules/underscore/modules/lastIndexOf.js");
-/* harmony import */ var _find_js__WEBPACK_IMPORTED_MODULE_81__ = __webpack_require__(/*! ./find.js */ "./node_modules/underscore/modules/find.js");
-/* harmony import */ var _findWhere_js__WEBPACK_IMPORTED_MODULE_82__ = __webpack_require__(/*! ./findWhere.js */ "./node_modules/underscore/modules/findWhere.js");
-/* harmony import */ var _each_js__WEBPACK_IMPORTED_MODULE_83__ = __webpack_require__(/*! ./each.js */ "./node_modules/underscore/modules/each.js");
-/* harmony import */ var _map_js__WEBPACK_IMPORTED_MODULE_84__ = __webpack_require__(/*! ./map.js */ "./node_modules/underscore/modules/map.js");
-/* harmony import */ var _reduce_js__WEBPACK_IMPORTED_MODULE_85__ = __webpack_require__(/*! ./reduce.js */ "./node_modules/underscore/modules/reduce.js");
-/* harmony import */ var _reduceRight_js__WEBPACK_IMPORTED_MODULE_86__ = __webpack_require__(/*! ./reduceRight.js */ "./node_modules/underscore/modules/reduceRight.js");
-/* harmony import */ var _filter_js__WEBPACK_IMPORTED_MODULE_87__ = __webpack_require__(/*! ./filter.js */ "./node_modules/underscore/modules/filter.js");
-/* harmony import */ var _reject_js__WEBPACK_IMPORTED_MODULE_88__ = __webpack_require__(/*! ./reject.js */ "./node_modules/underscore/modules/reject.js");
-/* harmony import */ var _every_js__WEBPACK_IMPORTED_MODULE_89__ = __webpack_require__(/*! ./every.js */ "./node_modules/underscore/modules/every.js");
-/* harmony import */ var _some_js__WEBPACK_IMPORTED_MODULE_90__ = __webpack_require__(/*! ./some.js */ "./node_modules/underscore/modules/some.js");
-/* harmony import */ var _contains_js__WEBPACK_IMPORTED_MODULE_91__ = __webpack_require__(/*! ./contains.js */ "./node_modules/underscore/modules/contains.js");
-/* harmony import */ var _invoke_js__WEBPACK_IMPORTED_MODULE_92__ = __webpack_require__(/*! ./invoke.js */ "./node_modules/underscore/modules/invoke.js");
-/* harmony import */ var _pluck_js__WEBPACK_IMPORTED_MODULE_93__ = __webpack_require__(/*! ./pluck.js */ "./node_modules/underscore/modules/pluck.js");
-/* harmony import */ var _where_js__WEBPACK_IMPORTED_MODULE_94__ = __webpack_require__(/*! ./where.js */ "./node_modules/underscore/modules/where.js");
-/* harmony import */ var _max_js__WEBPACK_IMPORTED_MODULE_95__ = __webpack_require__(/*! ./max.js */ "./node_modules/underscore/modules/max.js");
-/* harmony import */ var _min_js__WEBPACK_IMPORTED_MODULE_96__ = __webpack_require__(/*! ./min.js */ "./node_modules/underscore/modules/min.js");
-/* harmony import */ var _shuffle_js__WEBPACK_IMPORTED_MODULE_97__ = __webpack_require__(/*! ./shuffle.js */ "./node_modules/underscore/modules/shuffle.js");
-/* harmony import */ var _sample_js__WEBPACK_IMPORTED_MODULE_98__ = __webpack_require__(/*! ./sample.js */ "./node_modules/underscore/modules/sample.js");
-/* harmony import */ var _sortBy_js__WEBPACK_IMPORTED_MODULE_99__ = __webpack_require__(/*! ./sortBy.js */ "./node_modules/underscore/modules/sortBy.js");
-/* harmony import */ var _groupBy_js__WEBPACK_IMPORTED_MODULE_100__ = __webpack_require__(/*! ./groupBy.js */ "./node_modules/underscore/modules/groupBy.js");
-/* harmony import */ var _indexBy_js__WEBPACK_IMPORTED_MODULE_101__ = __webpack_require__(/*! ./indexBy.js */ "./node_modules/underscore/modules/indexBy.js");
-/* harmony import */ var _countBy_js__WEBPACK_IMPORTED_MODULE_102__ = __webpack_require__(/*! ./countBy.js */ "./node_modules/underscore/modules/countBy.js");
-/* harmony import */ var _partition_js__WEBPACK_IMPORTED_MODULE_103__ = __webpack_require__(/*! ./partition.js */ "./node_modules/underscore/modules/partition.js");
-/* harmony import */ var _toArray_js__WEBPACK_IMPORTED_MODULE_104__ = __webpack_require__(/*! ./toArray.js */ "./node_modules/underscore/modules/toArray.js");
-/* harmony import */ var _size_js__WEBPACK_IMPORTED_MODULE_105__ = __webpack_require__(/*! ./size.js */ "./node_modules/underscore/modules/size.js");
-/* harmony import */ var _pick_js__WEBPACK_IMPORTED_MODULE_106__ = __webpack_require__(/*! ./pick.js */ "./node_modules/underscore/modules/pick.js");
-/* harmony import */ var _omit_js__WEBPACK_IMPORTED_MODULE_107__ = __webpack_require__(/*! ./omit.js */ "./node_modules/underscore/modules/omit.js");
-/* harmony import */ var _first_js__WEBPACK_IMPORTED_MODULE_108__ = __webpack_require__(/*! ./first.js */ "./node_modules/underscore/modules/first.js");
-/* harmony import */ var _initial_js__WEBPACK_IMPORTED_MODULE_109__ = __webpack_require__(/*! ./initial.js */ "./node_modules/underscore/modules/initial.js");
-/* harmony import */ var _last_js__WEBPACK_IMPORTED_MODULE_110__ = __webpack_require__(/*! ./last.js */ "./node_modules/underscore/modules/last.js");
-/* harmony import */ var _rest_js__WEBPACK_IMPORTED_MODULE_111__ = __webpack_require__(/*! ./rest.js */ "./node_modules/underscore/modules/rest.js");
-/* harmony import */ var _compact_js__WEBPACK_IMPORTED_MODULE_112__ = __webpack_require__(/*! ./compact.js */ "./node_modules/underscore/modules/compact.js");
-/* harmony import */ var _flatten_js__WEBPACK_IMPORTED_MODULE_113__ = __webpack_require__(/*! ./flatten.js */ "./node_modules/underscore/modules/flatten.js");
-/* harmony import */ var _without_js__WEBPACK_IMPORTED_MODULE_114__ = __webpack_require__(/*! ./without.js */ "./node_modules/underscore/modules/without.js");
-/* harmony import */ var _uniq_js__WEBPACK_IMPORTED_MODULE_115__ = __webpack_require__(/*! ./uniq.js */ "./node_modules/underscore/modules/uniq.js");
-/* harmony import */ var _union_js__WEBPACK_IMPORTED_MODULE_116__ = __webpack_require__(/*! ./union.js */ "./node_modules/underscore/modules/union.js");
-/* harmony import */ var _intersection_js__WEBPACK_IMPORTED_MODULE_117__ = __webpack_require__(/*! ./intersection.js */ "./node_modules/underscore/modules/intersection.js");
-/* harmony import */ var _difference_js__WEBPACK_IMPORTED_MODULE_118__ = __webpack_require__(/*! ./difference.js */ "./node_modules/underscore/modules/difference.js");
-/* harmony import */ var _unzip_js__WEBPACK_IMPORTED_MODULE_119__ = __webpack_require__(/*! ./unzip.js */ "./node_modules/underscore/modules/unzip.js");
-/* harmony import */ var _zip_js__WEBPACK_IMPORTED_MODULE_120__ = __webpack_require__(/*! ./zip.js */ "./node_modules/underscore/modules/zip.js");
-/* harmony import */ var _object_js__WEBPACK_IMPORTED_MODULE_121__ = __webpack_require__(/*! ./object.js */ "./node_modules/underscore/modules/object.js");
-/* harmony import */ var _range_js__WEBPACK_IMPORTED_MODULE_122__ = __webpack_require__(/*! ./range.js */ "./node_modules/underscore/modules/range.js");
-/* harmony import */ var _chunk_js__WEBPACK_IMPORTED_MODULE_123__ = __webpack_require__(/*! ./chunk.js */ "./node_modules/underscore/modules/chunk.js");
-/* harmony import */ var _mixin_js__WEBPACK_IMPORTED_MODULE_124__ = __webpack_require__(/*! ./mixin.js */ "./node_modules/underscore/modules/mixin.js");
-/* harmony import */ var _underscore_array_methods_js__WEBPACK_IMPORTED_MODULE_125__ = __webpack_require__(/*! ./underscore-array-methods.js */ "./node_modules/underscore/modules/underscore-array-methods.js");
-// Named Exports
-// =============
-
-// Underscore.js 1.13.6
-// https://underscorejs.org
-// (c) 2009-2022 Jeremy Ashkenas, Julian Gonggrijp, and DocumentCloud and Investigative Reporters & Editors
-// Underscore may be freely distributed under the MIT license.
-
-// Baseline setup.
-
-
-
-// Object Functions
-// ----------------
-// Our most fundamental functions operate on any JavaScript object.
-// Most functions in Underscore depend on at least one function in this section.
-
-// A group of functions that check the types of core JavaScript values.
-// These are often informally referred to as the "isType" functions.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-// Functions that treat an object as a dictionary of key-value pairs.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-// Utility Functions
-// -----------------
-// A bit of a grab bag: Predicate-generating functions for use with filters and
-// loops, string escaping and templating, create random numbers and unique ids,
-// and functions that facilitate Underscore's chaining and iteration conventions.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-// Function (ahem) Functions
-// -------------------------
-// These functions take a function as an argument and return a new function
-// as the result. Also known as higher-order functions.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-// Finders
-// -------
-// Functions that extract (the position of) a single element from an object
-// or array based on some criterion.
-
-
-
-
-
-
-
-
-
-// Collection Functions
-// --------------------
-// Functions that work on any collection of elements: either an array, or
-// an object of key-value pairs.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-// `_.pick` and `_.omit` are actually object functions, but we put
-// them here in order to create a more natural reading order in the
-// monolithic build as they depend on `_.contains`.
-
-
-
-// Array Functions
-// ---------------
-// Functions that operate on arrays (and array-likes) only, because they’re
-// expressed in terms of operations on an ordered list of values.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-// OOP
-// ---
-// These modules support the "object-oriented" calling style. See also
-// `underscore.js` and `index-default.js`.
-
-
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/indexBy.js":
-/*!****************************************************!*\
- !*** ./node_modules/underscore/modules/indexBy.js ***!
- \****************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _group_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_group.js */ "./node_modules/underscore/modules/_group.js");
-
-
-// Indexes the object's values by a criterion, similar to `_.groupBy`, but for
-// when you know that your index values will be unique.
-/* harmony default export */ __webpack_exports__["default"] = ((0,_group_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function(result, value, key) {
- result[key] = value;
-}));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/indexOf.js":
-/*!****************************************************!*\
- !*** ./node_modules/underscore/modules/indexOf.js ***!
- \****************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _sortedIndex_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./sortedIndex.js */ "./node_modules/underscore/modules/sortedIndex.js");
-/* harmony import */ var _findIndex_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./findIndex.js */ "./node_modules/underscore/modules/findIndex.js");
-/* harmony import */ var _createIndexFinder_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./_createIndexFinder.js */ "./node_modules/underscore/modules/_createIndexFinder.js");
-
-
-
-
-// Return the position of the first occurrence of an item in an array,
-// or -1 if the item is not included in the array.
-// If the array is large and already in sort order, pass `true`
-// for **isSorted** to use binary search.
-/* harmony default export */ __webpack_exports__["default"] = ((0,_createIndexFinder_js__WEBPACK_IMPORTED_MODULE_2__["default"])(1, _findIndex_js__WEBPACK_IMPORTED_MODULE_1__["default"], _sortedIndex_js__WEBPACK_IMPORTED_MODULE_0__["default"]));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/initial.js":
-/*!****************************************************!*\
- !*** ./node_modules/underscore/modules/initial.js ***!
- \****************************************************/
-/***/ (function(__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": function() { return /* binding */ initial; }
-/* harmony export */ });
-/* harmony import */ var _setup_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_setup.js */ "./node_modules/underscore/modules/_setup.js");
-
-
-// Returns everything but the last entry of the array. Especially useful on
-// the arguments object. Passing **n** will return all the values in
-// the array, excluding the last N.
-function initial(array, n, guard) {
- return _setup_js__WEBPACK_IMPORTED_MODULE_0__.slice.call(array, 0, Math.max(0, array.length - (n == null || guard ? 1 : n)));
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/intersection.js":
-/*!*********************************************************!*\
- !*** ./node_modules/underscore/modules/intersection.js ***!
- \*********************************************************/
-/***/ (function(__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": function() { return /* binding */ intersection; }
-/* harmony export */ });
-/* harmony import */ var _getLength_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_getLength.js */ "./node_modules/underscore/modules/_getLength.js");
-/* harmony import */ var _contains_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./contains.js */ "./node_modules/underscore/modules/contains.js");
-
-
-
-// Produce an array that contains every item shared between all the
-// passed-in arrays.
-function intersection(array) {
- var result = [];
- var argsLength = arguments.length;
- for (var i = 0, length = (0,_getLength_js__WEBPACK_IMPORTED_MODULE_0__["default"])(array); i < length; i++) {
- var item = array[i];
- if ((0,_contains_js__WEBPACK_IMPORTED_MODULE_1__["default"])(result, item)) continue;
- var j;
- for (j = 1; j < argsLength; j++) {
- if (!(0,_contains_js__WEBPACK_IMPORTED_MODULE_1__["default"])(arguments[j], item)) break;
- }
- if (j === argsLength) result.push(item);
- }
- return result;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/invert.js":
-/*!***************************************************!*\
- !*** ./node_modules/underscore/modules/invert.js ***!
- \***************************************************/
-/***/ (function(__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": function() { return /* binding */ invert; }
-/* harmony export */ });
-/* harmony import */ var _keys_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./keys.js */ "./node_modules/underscore/modules/keys.js");
-
-
-// Invert the keys and values of an object. The values must be serializable.
-function invert(obj) {
- var result = {};
- var _keys = (0,_keys_js__WEBPACK_IMPORTED_MODULE_0__["default"])(obj);
- for (var i = 0, length = _keys.length; i < length; i++) {
- result[obj[_keys[i]]] = _keys[i];
- }
- return result;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/invoke.js":
-/*!***************************************************!*\
- !*** ./node_modules/underscore/modules/invoke.js ***!
- \***************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _restArguments_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./restArguments.js */ "./node_modules/underscore/modules/restArguments.js");
-/* harmony import */ var _isFunction_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./isFunction.js */ "./node_modules/underscore/modules/isFunction.js");
-/* harmony import */ var _map_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./map.js */ "./node_modules/underscore/modules/map.js");
-/* harmony import */ var _deepGet_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./_deepGet.js */ "./node_modules/underscore/modules/_deepGet.js");
-/* harmony import */ var _toPath_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./_toPath.js */ "./node_modules/underscore/modules/_toPath.js");
-
-
-
-
-
-
-// Invoke a method (with arguments) on every item in a collection.
-/* harmony default export */ __webpack_exports__["default"] = ((0,_restArguments_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function(obj, path, args) {
- var contextPath, func;
- if ((0,_isFunction_js__WEBPACK_IMPORTED_MODULE_1__["default"])(path)) {
- func = path;
- } else {
- path = (0,_toPath_js__WEBPACK_IMPORTED_MODULE_4__["default"])(path);
- contextPath = path.slice(0, -1);
- path = path[path.length - 1];
- }
- return (0,_map_js__WEBPACK_IMPORTED_MODULE_2__["default"])(obj, function(context) {
- var method = func;
- if (!method) {
- if (contextPath && contextPath.length) {
- context = (0,_deepGet_js__WEBPACK_IMPORTED_MODULE_3__["default"])(context, contextPath);
- }
- if (context == null) return void 0;
- method = context[path];
- }
- return method == null ? method : method.apply(context, args);
- });
-}));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/isArguments.js":
-/*!********************************************************!*\
- !*** ./node_modules/underscore/modules/isArguments.js ***!
- \********************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _tagTester_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_tagTester.js */ "./node_modules/underscore/modules/_tagTester.js");
-/* harmony import */ var _has_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./_has.js */ "./node_modules/underscore/modules/_has.js");
-
-
-
-var isArguments = (0,_tagTester_js__WEBPACK_IMPORTED_MODULE_0__["default"])('Arguments');
-
-// Define a fallback version of the method in browsers (ahem, IE < 9), where
-// there isn't any inspectable "Arguments" type.
-(function() {
- if (!isArguments(arguments)) {
- isArguments = function(obj) {
- return (0,_has_js__WEBPACK_IMPORTED_MODULE_1__["default"])(obj, 'callee');
- };
- }
-}());
-
-/* harmony default export */ __webpack_exports__["default"] = (isArguments);
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/isArray.js":
-/*!****************************************************!*\
- !*** ./node_modules/underscore/modules/isArray.js ***!
- \****************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _setup_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_setup.js */ "./node_modules/underscore/modules/_setup.js");
-/* harmony import */ var _tagTester_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./_tagTester.js */ "./node_modules/underscore/modules/_tagTester.js");
-
-
-
-// Is a given value an array?
-// Delegates to ECMA5's native `Array.isArray`.
-/* harmony default export */ __webpack_exports__["default"] = (_setup_js__WEBPACK_IMPORTED_MODULE_0__.nativeIsArray || (0,_tagTester_js__WEBPACK_IMPORTED_MODULE_1__["default"])('Array'));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/isArrayBuffer.js":
-/*!**********************************************************!*\
- !*** ./node_modules/underscore/modules/isArrayBuffer.js ***!
- \**********************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _tagTester_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_tagTester.js */ "./node_modules/underscore/modules/_tagTester.js");
-
-
-/* harmony default export */ __webpack_exports__["default"] = ((0,_tagTester_js__WEBPACK_IMPORTED_MODULE_0__["default"])('ArrayBuffer'));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/isBoolean.js":
-/*!******************************************************!*\
- !*** ./node_modules/underscore/modules/isBoolean.js ***!
- \******************************************************/
-/***/ (function(__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": function() { return /* binding */ isBoolean; }
-/* harmony export */ });
-/* harmony import */ var _setup_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_setup.js */ "./node_modules/underscore/modules/_setup.js");
-
-
-// Is a given value a boolean?
-function isBoolean(obj) {
- return obj === true || obj === false || _setup_js__WEBPACK_IMPORTED_MODULE_0__.toString.call(obj) === '[object Boolean]';
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/isDataView.js":
-/*!*******************************************************!*\
- !*** ./node_modules/underscore/modules/isDataView.js ***!
- \*******************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _tagTester_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_tagTester.js */ "./node_modules/underscore/modules/_tagTester.js");
-/* harmony import */ var _isFunction_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./isFunction.js */ "./node_modules/underscore/modules/isFunction.js");
-/* harmony import */ var _isArrayBuffer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./isArrayBuffer.js */ "./node_modules/underscore/modules/isArrayBuffer.js");
-/* harmony import */ var _stringTagBug_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./_stringTagBug.js */ "./node_modules/underscore/modules/_stringTagBug.js");
-
-
-
-
-
-var isDataView = (0,_tagTester_js__WEBPACK_IMPORTED_MODULE_0__["default"])('DataView');
-
-// In IE 10 - Edge 13, we need a different heuristic
-// to determine whether an object is a `DataView`.
-function ie10IsDataView(obj) {
- return obj != null && (0,_isFunction_js__WEBPACK_IMPORTED_MODULE_1__["default"])(obj.getInt8) && (0,_isArrayBuffer_js__WEBPACK_IMPORTED_MODULE_2__["default"])(obj.buffer);
-}
-
-/* harmony default export */ __webpack_exports__["default"] = (_stringTagBug_js__WEBPACK_IMPORTED_MODULE_3__.hasStringTagBug ? ie10IsDataView : isDataView);
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/isDate.js":
-/*!***************************************************!*\
- !*** ./node_modules/underscore/modules/isDate.js ***!
- \***************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _tagTester_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_tagTester.js */ "./node_modules/underscore/modules/_tagTester.js");
-
-
-/* harmony default export */ __webpack_exports__["default"] = ((0,_tagTester_js__WEBPACK_IMPORTED_MODULE_0__["default"])('Date'));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/isElement.js":
-/*!******************************************************!*\
- !*** ./node_modules/underscore/modules/isElement.js ***!
- \******************************************************/
-/***/ (function(__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": function() { return /* binding */ isElement; }
-/* harmony export */ });
-// Is a given value a DOM element?
-function isElement(obj) {
- return !!(obj && obj.nodeType === 1);
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/isEmpty.js":
-/*!****************************************************!*\
- !*** ./node_modules/underscore/modules/isEmpty.js ***!
- \****************************************************/
-/***/ (function(__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": function() { return /* binding */ isEmpty; }
-/* harmony export */ });
-/* harmony import */ var _getLength_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_getLength.js */ "./node_modules/underscore/modules/_getLength.js");
-/* harmony import */ var _isArray_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./isArray.js */ "./node_modules/underscore/modules/isArray.js");
-/* harmony import */ var _isString_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./isString.js */ "./node_modules/underscore/modules/isString.js");
-/* harmony import */ var _isArguments_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./isArguments.js */ "./node_modules/underscore/modules/isArguments.js");
-/* harmony import */ var _keys_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./keys.js */ "./node_modules/underscore/modules/keys.js");
-
-
-
-
-
-
-// Is a given array, string, or object empty?
-// An "empty" object has no enumerable own-properties.
-function isEmpty(obj) {
- if (obj == null) return true;
- // Skip the more expensive `toString`-based type checks if `obj` has no
- // `.length`.
- var length = (0,_getLength_js__WEBPACK_IMPORTED_MODULE_0__["default"])(obj);
- if (typeof length == 'number' && (
- (0,_isArray_js__WEBPACK_IMPORTED_MODULE_1__["default"])(obj) || (0,_isString_js__WEBPACK_IMPORTED_MODULE_2__["default"])(obj) || (0,_isArguments_js__WEBPACK_IMPORTED_MODULE_3__["default"])(obj)
- )) return length === 0;
- return (0,_getLength_js__WEBPACK_IMPORTED_MODULE_0__["default"])((0,_keys_js__WEBPACK_IMPORTED_MODULE_4__["default"])(obj)) === 0;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/isEqual.js":
-/*!****************************************************!*\
- !*** ./node_modules/underscore/modules/isEqual.js ***!
- \****************************************************/
-/***/ (function(__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": function() { return /* binding */ isEqual; }
-/* harmony export */ });
-/* harmony import */ var _underscore_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./underscore.js */ "./node_modules/underscore/modules/underscore.js");
-/* harmony import */ var _setup_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./_setup.js */ "./node_modules/underscore/modules/_setup.js");
-/* harmony import */ var _getByteLength_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./_getByteLength.js */ "./node_modules/underscore/modules/_getByteLength.js");
-/* harmony import */ var _isTypedArray_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./isTypedArray.js */ "./node_modules/underscore/modules/isTypedArray.js");
-/* harmony import */ var _isFunction_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./isFunction.js */ "./node_modules/underscore/modules/isFunction.js");
-/* harmony import */ var _stringTagBug_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./_stringTagBug.js */ "./node_modules/underscore/modules/_stringTagBug.js");
-/* harmony import */ var _isDataView_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./isDataView.js */ "./node_modules/underscore/modules/isDataView.js");
-/* harmony import */ var _keys_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./keys.js */ "./node_modules/underscore/modules/keys.js");
-/* harmony import */ var _has_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./_has.js */ "./node_modules/underscore/modules/_has.js");
-/* harmony import */ var _toBufferView_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./_toBufferView.js */ "./node_modules/underscore/modules/_toBufferView.js");
-
-
-
-
-
-
-
-
-
-
-
-// We use this string twice, so give it a name for minification.
-var tagDataView = '[object DataView]';
-
-// Internal recursive comparison function for `_.isEqual`.
-function eq(a, b, aStack, bStack) {
- // Identical objects are equal. `0 === -0`, but they aren't identical.
- // See the [Harmony `egal` proposal](https://wiki.ecmascript.org/doku.php?id=harmony:egal).
- if (a === b) return a !== 0 || 1 / a === 1 / b;
- // `null` or `undefined` only equal to itself (strict comparison).
- if (a == null || b == null) return false;
- // `NaN`s are equivalent, but non-reflexive.
- if (a !== a) return b !== b;
- // Exhaust primitive checks
- var type = typeof a;
- if (type !== 'function' && type !== 'object' && typeof b != 'object') return false;
- return deepEq(a, b, aStack, bStack);
-}
-
-// Internal recursive comparison function for `_.isEqual`.
-function deepEq(a, b, aStack, bStack) {
- // Unwrap any wrapped objects.
- if (a instanceof _underscore_js__WEBPACK_IMPORTED_MODULE_0__["default"]) a = a._wrapped;
- if (b instanceof _underscore_js__WEBPACK_IMPORTED_MODULE_0__["default"]) b = b._wrapped;
- // Compare `[[Class]]` names.
- var className = _setup_js__WEBPACK_IMPORTED_MODULE_1__.toString.call(a);
- if (className !== _setup_js__WEBPACK_IMPORTED_MODULE_1__.toString.call(b)) return false;
- // Work around a bug in IE 10 - Edge 13.
- if (_stringTagBug_js__WEBPACK_IMPORTED_MODULE_5__.hasStringTagBug && className == '[object Object]' && (0,_isDataView_js__WEBPACK_IMPORTED_MODULE_6__["default"])(a)) {
- if (!(0,_isDataView_js__WEBPACK_IMPORTED_MODULE_6__["default"])(b)) return false;
- className = tagDataView;
- }
- switch (className) {
- // These types are compared by value.
- case '[object RegExp]':
- // RegExps are coerced to strings for comparison (Note: '' + /a/i === '/a/i')
- case '[object String]':
- // Primitives and their corresponding object wrappers are equivalent; thus, `"5"` is
- // equivalent to `new String("5")`.
- return '' + a === '' + b;
- case '[object Number]':
- // `NaN`s are equivalent, but non-reflexive.
- // Object(NaN) is equivalent to NaN.
- if (+a !== +a) return +b !== +b;
- // An `egal` comparison is performed for other numeric values.
- return +a === 0 ? 1 / +a === 1 / b : +a === +b;
- case '[object Date]':
- case '[object Boolean]':
- // Coerce dates and booleans to numeric primitive values. Dates are compared by their
- // millisecond representations. Note that invalid dates with millisecond representations
- // of `NaN` are not equivalent.
- return +a === +b;
- case '[object Symbol]':
- return _setup_js__WEBPACK_IMPORTED_MODULE_1__.SymbolProto.valueOf.call(a) === _setup_js__WEBPACK_IMPORTED_MODULE_1__.SymbolProto.valueOf.call(b);
- case '[object ArrayBuffer]':
- case tagDataView:
- // Coerce to typed array so we can fall through.
- return deepEq((0,_toBufferView_js__WEBPACK_IMPORTED_MODULE_9__["default"])(a), (0,_toBufferView_js__WEBPACK_IMPORTED_MODULE_9__["default"])(b), aStack, bStack);
- }
-
- var areArrays = className === '[object Array]';
- if (!areArrays && (0,_isTypedArray_js__WEBPACK_IMPORTED_MODULE_3__["default"])(a)) {
- var byteLength = (0,_getByteLength_js__WEBPACK_IMPORTED_MODULE_2__["default"])(a);
- if (byteLength !== (0,_getByteLength_js__WEBPACK_IMPORTED_MODULE_2__["default"])(b)) return false;
- if (a.buffer === b.buffer && a.byteOffset === b.byteOffset) return true;
- areArrays = true;
- }
- if (!areArrays) {
- if (typeof a != 'object' || typeof b != 'object') return false;
-
- // Objects with different constructors are not equivalent, but `Object`s or `Array`s
- // from different frames are.
- var aCtor = a.constructor, bCtor = b.constructor;
- if (aCtor !== bCtor && !((0,_isFunction_js__WEBPACK_IMPORTED_MODULE_4__["default"])(aCtor) && aCtor instanceof aCtor &&
- (0,_isFunction_js__WEBPACK_IMPORTED_MODULE_4__["default"])(bCtor) && bCtor instanceof bCtor)
- && ('constructor' in a && 'constructor' in b)) {
- return false;
- }
- }
- // Assume equality for cyclic structures. The algorithm for detecting cyclic
- // structures is adapted from ES 5.1 section 15.12.3, abstract operation `JO`.
-
- // Initializing stack of traversed objects.
- // It's done here since we only need them for objects and arrays comparison.
- aStack = aStack || [];
- bStack = bStack || [];
- var length = aStack.length;
- while (length--) {
- // Linear search. Performance is inversely proportional to the number of
- // unique nested structures.
- if (aStack[length] === a) return bStack[length] === b;
- }
-
- // Add the first object to the stack of traversed objects.
- aStack.push(a);
- bStack.push(b);
-
- // Recursively compare objects and arrays.
- if (areArrays) {
- // Compare array lengths to determine if a deep comparison is necessary.
- length = a.length;
- if (length !== b.length) return false;
- // Deep compare the contents, ignoring non-numeric properties.
- while (length--) {
- if (!eq(a[length], b[length], aStack, bStack)) return false;
- }
- } else {
- // Deep compare objects.
- var _keys = (0,_keys_js__WEBPACK_IMPORTED_MODULE_7__["default"])(a), key;
- length = _keys.length;
- // Ensure that both objects contain the same number of properties before comparing deep equality.
- if ((0,_keys_js__WEBPACK_IMPORTED_MODULE_7__["default"])(b).length !== length) return false;
- while (length--) {
- // Deep compare each member
- key = _keys[length];
- if (!((0,_has_js__WEBPACK_IMPORTED_MODULE_8__["default"])(b, key) && eq(a[key], b[key], aStack, bStack))) return false;
- }
- }
- // Remove the first object from the stack of traversed objects.
- aStack.pop();
- bStack.pop();
- return true;
-}
-
-// Perform a deep comparison to check if two objects are equal.
-function isEqual(a, b) {
- return eq(a, b);
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/isError.js":
-/*!****************************************************!*\
- !*** ./node_modules/underscore/modules/isError.js ***!
- \****************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _tagTester_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_tagTester.js */ "./node_modules/underscore/modules/_tagTester.js");
-
-
-/* harmony default export */ __webpack_exports__["default"] = ((0,_tagTester_js__WEBPACK_IMPORTED_MODULE_0__["default"])('Error'));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/isFinite.js":
-/*!*****************************************************!*\
- !*** ./node_modules/underscore/modules/isFinite.js ***!
- \*****************************************************/
-/***/ (function(__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": function() { return /* binding */ isFinite; }
-/* harmony export */ });
-/* harmony import */ var _setup_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_setup.js */ "./node_modules/underscore/modules/_setup.js");
-/* harmony import */ var _isSymbol_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./isSymbol.js */ "./node_modules/underscore/modules/isSymbol.js");
-
-
-
-// Is a given object a finite number?
-function isFinite(obj) {
- return !(0,_isSymbol_js__WEBPACK_IMPORTED_MODULE_1__["default"])(obj) && (0,_setup_js__WEBPACK_IMPORTED_MODULE_0__._isFinite)(obj) && !isNaN(parseFloat(obj));
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/isFunction.js":
-/*!*******************************************************!*\
- !*** ./node_modules/underscore/modules/isFunction.js ***!
- \*******************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _tagTester_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_tagTester.js */ "./node_modules/underscore/modules/_tagTester.js");
-/* harmony import */ var _setup_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./_setup.js */ "./node_modules/underscore/modules/_setup.js");
-
-
-
-var isFunction = (0,_tagTester_js__WEBPACK_IMPORTED_MODULE_0__["default"])('Function');
-
-// Optimize `isFunction` if appropriate. Work around some `typeof` bugs in old
-// v8, IE 11 (#1621), Safari 8 (#1929), and PhantomJS (#2236).
-var nodelist = _setup_js__WEBPACK_IMPORTED_MODULE_1__.root.document && _setup_js__WEBPACK_IMPORTED_MODULE_1__.root.document.childNodes;
-if ( true && typeof Int8Array != 'object' && typeof nodelist != 'function') {
- isFunction = function(obj) {
- return typeof obj == 'function' || false;
- };
-}
-
-/* harmony default export */ __webpack_exports__["default"] = (isFunction);
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/isMap.js":
-/*!**************************************************!*\
- !*** ./node_modules/underscore/modules/isMap.js ***!
- \**************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _tagTester_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_tagTester.js */ "./node_modules/underscore/modules/_tagTester.js");
-/* harmony import */ var _stringTagBug_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./_stringTagBug.js */ "./node_modules/underscore/modules/_stringTagBug.js");
-/* harmony import */ var _methodFingerprint_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./_methodFingerprint.js */ "./node_modules/underscore/modules/_methodFingerprint.js");
-
-
-
-
-/* harmony default export */ __webpack_exports__["default"] = (_stringTagBug_js__WEBPACK_IMPORTED_MODULE_1__.isIE11 ? (0,_methodFingerprint_js__WEBPACK_IMPORTED_MODULE_2__.ie11fingerprint)(_methodFingerprint_js__WEBPACK_IMPORTED_MODULE_2__.mapMethods) : (0,_tagTester_js__WEBPACK_IMPORTED_MODULE_0__["default"])('Map'));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/isMatch.js":
-/*!****************************************************!*\
- !*** ./node_modules/underscore/modules/isMatch.js ***!
- \****************************************************/
-/***/ (function(__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": function() { return /* binding */ isMatch; }
-/* harmony export */ });
-/* harmony import */ var _keys_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./keys.js */ "./node_modules/underscore/modules/keys.js");
-
-
-// Returns whether an object has a given set of `key:value` pairs.
-function isMatch(object, attrs) {
- var _keys = (0,_keys_js__WEBPACK_IMPORTED_MODULE_0__["default"])(attrs), length = _keys.length;
- if (object == null) return !length;
- var obj = Object(object);
- for (var i = 0; i < length; i++) {
- var key = _keys[i];
- if (attrs[key] !== obj[key] || !(key in obj)) return false;
- }
- return true;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/isNaN.js":
-/*!**************************************************!*\
- !*** ./node_modules/underscore/modules/isNaN.js ***!
- \**************************************************/
-/***/ (function(__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": function() { return /* binding */ isNaN; }
-/* harmony export */ });
-/* harmony import */ var _setup_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_setup.js */ "./node_modules/underscore/modules/_setup.js");
-/* harmony import */ var _isNumber_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./isNumber.js */ "./node_modules/underscore/modules/isNumber.js");
-
-
-
-// Is the given value `NaN`?
-function isNaN(obj) {
- return (0,_isNumber_js__WEBPACK_IMPORTED_MODULE_1__["default"])(obj) && (0,_setup_js__WEBPACK_IMPORTED_MODULE_0__._isNaN)(obj);
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/isNull.js":
-/*!***************************************************!*\
- !*** ./node_modules/underscore/modules/isNull.js ***!
- \***************************************************/
-/***/ (function(__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": function() { return /* binding */ isNull; }
-/* harmony export */ });
-// Is a given value equal to null?
-function isNull(obj) {
- return obj === null;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/isNumber.js":
-/*!*****************************************************!*\
- !*** ./node_modules/underscore/modules/isNumber.js ***!
- \*****************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _tagTester_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_tagTester.js */ "./node_modules/underscore/modules/_tagTester.js");
-
-
-/* harmony default export */ __webpack_exports__["default"] = ((0,_tagTester_js__WEBPACK_IMPORTED_MODULE_0__["default"])('Number'));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/isObject.js":
-/*!*****************************************************!*\
- !*** ./node_modules/underscore/modules/isObject.js ***!
- \*****************************************************/
-/***/ (function(__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": function() { return /* binding */ isObject; }
-/* harmony export */ });
-// Is a given variable an object?
-function isObject(obj) {
- var type = typeof obj;
- return type === 'function' || (type === 'object' && !!obj);
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/isRegExp.js":
-/*!*****************************************************!*\
- !*** ./node_modules/underscore/modules/isRegExp.js ***!
- \*****************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _tagTester_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_tagTester.js */ "./node_modules/underscore/modules/_tagTester.js");
-
-
-/* harmony default export */ __webpack_exports__["default"] = ((0,_tagTester_js__WEBPACK_IMPORTED_MODULE_0__["default"])('RegExp'));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/isSet.js":
-/*!**************************************************!*\
- !*** ./node_modules/underscore/modules/isSet.js ***!
- \**************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _tagTester_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_tagTester.js */ "./node_modules/underscore/modules/_tagTester.js");
-/* harmony import */ var _stringTagBug_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./_stringTagBug.js */ "./node_modules/underscore/modules/_stringTagBug.js");
-/* harmony import */ var _methodFingerprint_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./_methodFingerprint.js */ "./node_modules/underscore/modules/_methodFingerprint.js");
-
-
-
-
-/* harmony default export */ __webpack_exports__["default"] = (_stringTagBug_js__WEBPACK_IMPORTED_MODULE_1__.isIE11 ? (0,_methodFingerprint_js__WEBPACK_IMPORTED_MODULE_2__.ie11fingerprint)(_methodFingerprint_js__WEBPACK_IMPORTED_MODULE_2__.setMethods) : (0,_tagTester_js__WEBPACK_IMPORTED_MODULE_0__["default"])('Set'));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/isString.js":
-/*!*****************************************************!*\
- !*** ./node_modules/underscore/modules/isString.js ***!
- \*****************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _tagTester_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_tagTester.js */ "./node_modules/underscore/modules/_tagTester.js");
-
-
-/* harmony default export */ __webpack_exports__["default"] = ((0,_tagTester_js__WEBPACK_IMPORTED_MODULE_0__["default"])('String'));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/isSymbol.js":
-/*!*****************************************************!*\
- !*** ./node_modules/underscore/modules/isSymbol.js ***!
- \*****************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _tagTester_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_tagTester.js */ "./node_modules/underscore/modules/_tagTester.js");
-
-
-/* harmony default export */ __webpack_exports__["default"] = ((0,_tagTester_js__WEBPACK_IMPORTED_MODULE_0__["default"])('Symbol'));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/isTypedArray.js":
-/*!*********************************************************!*\
- !*** ./node_modules/underscore/modules/isTypedArray.js ***!
- \*********************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _setup_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_setup.js */ "./node_modules/underscore/modules/_setup.js");
-/* harmony import */ var _isDataView_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./isDataView.js */ "./node_modules/underscore/modules/isDataView.js");
-/* harmony import */ var _constant_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./constant.js */ "./node_modules/underscore/modules/constant.js");
-/* harmony import */ var _isBufferLike_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./_isBufferLike.js */ "./node_modules/underscore/modules/_isBufferLike.js");
-
-
-
-
-
-// Is a given value a typed array?
-var typedArrayPattern = /\[object ((I|Ui)nt(8|16|32)|Float(32|64)|Uint8Clamped|Big(I|Ui)nt64)Array\]/;
-function isTypedArray(obj) {
- // `ArrayBuffer.isView` is the most future-proof, so use it when available.
- // Otherwise, fall back on the above regular expression.
- return _setup_js__WEBPACK_IMPORTED_MODULE_0__.nativeIsView ? ((0,_setup_js__WEBPACK_IMPORTED_MODULE_0__.nativeIsView)(obj) && !(0,_isDataView_js__WEBPACK_IMPORTED_MODULE_1__["default"])(obj)) :
- (0,_isBufferLike_js__WEBPACK_IMPORTED_MODULE_3__["default"])(obj) && typedArrayPattern.test(_setup_js__WEBPACK_IMPORTED_MODULE_0__.toString.call(obj));
-}
-
-/* harmony default export */ __webpack_exports__["default"] = (_setup_js__WEBPACK_IMPORTED_MODULE_0__.supportsArrayBuffer ? isTypedArray : (0,_constant_js__WEBPACK_IMPORTED_MODULE_2__["default"])(false));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/isUndefined.js":
-/*!********************************************************!*\
- !*** ./node_modules/underscore/modules/isUndefined.js ***!
- \********************************************************/
-/***/ (function(__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": function() { return /* binding */ isUndefined; }
-/* harmony export */ });
-// Is a given variable undefined?
-function isUndefined(obj) {
- return obj === void 0;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/isWeakMap.js":
-/*!******************************************************!*\
- !*** ./node_modules/underscore/modules/isWeakMap.js ***!
- \******************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _tagTester_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_tagTester.js */ "./node_modules/underscore/modules/_tagTester.js");
-/* harmony import */ var _stringTagBug_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./_stringTagBug.js */ "./node_modules/underscore/modules/_stringTagBug.js");
-/* harmony import */ var _methodFingerprint_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./_methodFingerprint.js */ "./node_modules/underscore/modules/_methodFingerprint.js");
-
-
-
-
-/* harmony default export */ __webpack_exports__["default"] = (_stringTagBug_js__WEBPACK_IMPORTED_MODULE_1__.isIE11 ? (0,_methodFingerprint_js__WEBPACK_IMPORTED_MODULE_2__.ie11fingerprint)(_methodFingerprint_js__WEBPACK_IMPORTED_MODULE_2__.weakMapMethods) : (0,_tagTester_js__WEBPACK_IMPORTED_MODULE_0__["default"])('WeakMap'));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/isWeakSet.js":
-/*!******************************************************!*\
- !*** ./node_modules/underscore/modules/isWeakSet.js ***!
- \******************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _tagTester_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_tagTester.js */ "./node_modules/underscore/modules/_tagTester.js");
-
-
-/* harmony default export */ __webpack_exports__["default"] = ((0,_tagTester_js__WEBPACK_IMPORTED_MODULE_0__["default"])('WeakSet'));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/iteratee.js":
-/*!*****************************************************!*\
- !*** ./node_modules/underscore/modules/iteratee.js ***!
- \*****************************************************/
-/***/ (function(__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": function() { return /* binding */ iteratee; }
-/* harmony export */ });
-/* harmony import */ var _underscore_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./underscore.js */ "./node_modules/underscore/modules/underscore.js");
-/* harmony import */ var _baseIteratee_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./_baseIteratee.js */ "./node_modules/underscore/modules/_baseIteratee.js");
-
-
-
-// External wrapper for our callback generator. Users may customize
-// `_.iteratee` if they want additional predicate/iteratee shorthand styles.
-// This abstraction hides the internal-only `argCount` argument.
-function iteratee(value, context) {
- return (0,_baseIteratee_js__WEBPACK_IMPORTED_MODULE_1__["default"])(value, context, Infinity);
-}
-_underscore_js__WEBPACK_IMPORTED_MODULE_0__["default"].iteratee = iteratee;
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/keys.js":
-/*!*************************************************!*\
- !*** ./node_modules/underscore/modules/keys.js ***!
- \*************************************************/
-/***/ (function(__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": function() { return /* binding */ keys; }
-/* harmony export */ });
-/* harmony import */ var _isObject_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./isObject.js */ "./node_modules/underscore/modules/isObject.js");
-/* harmony import */ var _setup_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./_setup.js */ "./node_modules/underscore/modules/_setup.js");
-/* harmony import */ var _has_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./_has.js */ "./node_modules/underscore/modules/_has.js");
-/* harmony import */ var _collectNonEnumProps_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./_collectNonEnumProps.js */ "./node_modules/underscore/modules/_collectNonEnumProps.js");
-
-
-
-
-
-// Retrieve the names of an object's own properties.
-// Delegates to **ECMAScript 5**'s native `Object.keys`.
-function keys(obj) {
- if (!(0,_isObject_js__WEBPACK_IMPORTED_MODULE_0__["default"])(obj)) return [];
- if (_setup_js__WEBPACK_IMPORTED_MODULE_1__.nativeKeys) return (0,_setup_js__WEBPACK_IMPORTED_MODULE_1__.nativeKeys)(obj);
- var keys = [];
- for (var key in obj) if ((0,_has_js__WEBPACK_IMPORTED_MODULE_2__["default"])(obj, key)) keys.push(key);
- // Ahem, IE < 9.
- if (_setup_js__WEBPACK_IMPORTED_MODULE_1__.hasEnumBug) (0,_collectNonEnumProps_js__WEBPACK_IMPORTED_MODULE_3__["default"])(obj, keys);
- return keys;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/last.js":
-/*!*************************************************!*\
- !*** ./node_modules/underscore/modules/last.js ***!
- \*************************************************/
-/***/ (function(__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": function() { return /* binding */ last; }
-/* harmony export */ });
-/* harmony import */ var _rest_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./rest.js */ "./node_modules/underscore/modules/rest.js");
-
-
-// Get the last element of an array. Passing **n** will return the last N
-// values in the array.
-function last(array, n, guard) {
- if (array == null || array.length < 1) return n == null || guard ? void 0 : [];
- if (n == null || guard) return array[array.length - 1];
- return (0,_rest_js__WEBPACK_IMPORTED_MODULE_0__["default"])(array, Math.max(0, array.length - n));
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/lastIndexOf.js":
-/*!********************************************************!*\
- !*** ./node_modules/underscore/modules/lastIndexOf.js ***!
- \********************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _findLastIndex_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./findLastIndex.js */ "./node_modules/underscore/modules/findLastIndex.js");
-/* harmony import */ var _createIndexFinder_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./_createIndexFinder.js */ "./node_modules/underscore/modules/_createIndexFinder.js");
-
-
-
-// Return the position of the last occurrence of an item in an array,
-// or -1 if the item is not included in the array.
-/* harmony default export */ __webpack_exports__["default"] = ((0,_createIndexFinder_js__WEBPACK_IMPORTED_MODULE_1__["default"])(-1, _findLastIndex_js__WEBPACK_IMPORTED_MODULE_0__["default"]));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/map.js":
-/*!************************************************!*\
- !*** ./node_modules/underscore/modules/map.js ***!
- \************************************************/
-/***/ (function(__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": function() { return /* binding */ map; }
-/* harmony export */ });
-/* harmony import */ var _cb_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_cb.js */ "./node_modules/underscore/modules/_cb.js");
-/* harmony import */ var _isArrayLike_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./_isArrayLike.js */ "./node_modules/underscore/modules/_isArrayLike.js");
-/* harmony import */ var _keys_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./keys.js */ "./node_modules/underscore/modules/keys.js");
-
-
-
-
-// Return the results of applying the iteratee to each element.
-function map(obj, iteratee, context) {
- iteratee = (0,_cb_js__WEBPACK_IMPORTED_MODULE_0__["default"])(iteratee, context);
- var _keys = !(0,_isArrayLike_js__WEBPACK_IMPORTED_MODULE_1__["default"])(obj) && (0,_keys_js__WEBPACK_IMPORTED_MODULE_2__["default"])(obj),
- length = (_keys || obj).length,
- results = Array(length);
- for (var index = 0; index < length; index++) {
- var currentKey = _keys ? _keys[index] : index;
- results[index] = iteratee(obj[currentKey], currentKey, obj);
- }
- return results;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/mapObject.js":
-/*!******************************************************!*\
- !*** ./node_modules/underscore/modules/mapObject.js ***!
- \******************************************************/
-/***/ (function(__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": function() { return /* binding */ mapObject; }
-/* harmony export */ });
-/* harmony import */ var _cb_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_cb.js */ "./node_modules/underscore/modules/_cb.js");
-/* harmony import */ var _keys_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./keys.js */ "./node_modules/underscore/modules/keys.js");
-
-
-
-// Returns the results of applying the `iteratee` to each element of `obj`.
-// In contrast to `_.map` it returns an object.
-function mapObject(obj, iteratee, context) {
- iteratee = (0,_cb_js__WEBPACK_IMPORTED_MODULE_0__["default"])(iteratee, context);
- var _keys = (0,_keys_js__WEBPACK_IMPORTED_MODULE_1__["default"])(obj),
- length = _keys.length,
- results = {};
- for (var index = 0; index < length; index++) {
- var currentKey = _keys[index];
- results[currentKey] = iteratee(obj[currentKey], currentKey, obj);
- }
- return results;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/matcher.js":
-/*!****************************************************!*\
- !*** ./node_modules/underscore/modules/matcher.js ***!
- \****************************************************/
-/***/ (function(__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": function() { return /* binding */ matcher; }
-/* harmony export */ });
-/* harmony import */ var _extendOwn_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./extendOwn.js */ "./node_modules/underscore/modules/extendOwn.js");
-/* harmony import */ var _isMatch_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./isMatch.js */ "./node_modules/underscore/modules/isMatch.js");
-
-
-
-// Returns a predicate for checking whether an object has a given set of
-// `key:value` pairs.
-function matcher(attrs) {
- attrs = (0,_extendOwn_js__WEBPACK_IMPORTED_MODULE_0__["default"])({}, attrs);
- return function(obj) {
- return (0,_isMatch_js__WEBPACK_IMPORTED_MODULE_1__["default"])(obj, attrs);
- };
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/max.js":
-/*!************************************************!*\
- !*** ./node_modules/underscore/modules/max.js ***!
- \************************************************/
-/***/ (function(__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": function() { return /* binding */ max; }
-/* harmony export */ });
-/* harmony import */ var _isArrayLike_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_isArrayLike.js */ "./node_modules/underscore/modules/_isArrayLike.js");
-/* harmony import */ var _values_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./values.js */ "./node_modules/underscore/modules/values.js");
-/* harmony import */ var _cb_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./_cb.js */ "./node_modules/underscore/modules/_cb.js");
-/* harmony import */ var _each_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./each.js */ "./node_modules/underscore/modules/each.js");
-
-
-
-
-
-// Return the maximum element (or element-based computation).
-function max(obj, iteratee, context) {
- var result = -Infinity, lastComputed = -Infinity,
- value, computed;
- if (iteratee == null || (typeof iteratee == 'number' && typeof obj[0] != 'object' && obj != null)) {
- obj = (0,_isArrayLike_js__WEBPACK_IMPORTED_MODULE_0__["default"])(obj) ? obj : (0,_values_js__WEBPACK_IMPORTED_MODULE_1__["default"])(obj);
- for (var i = 0, length = obj.length; i < length; i++) {
- value = obj[i];
- if (value != null && value > result) {
- result = value;
- }
- }
- } else {
- iteratee = (0,_cb_js__WEBPACK_IMPORTED_MODULE_2__["default"])(iteratee, context);
- (0,_each_js__WEBPACK_IMPORTED_MODULE_3__["default"])(obj, function(v, index, list) {
- computed = iteratee(v, index, list);
- if (computed > lastComputed || (computed === -Infinity && result === -Infinity)) {
- result = v;
- lastComputed = computed;
- }
- });
- }
- return result;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/memoize.js":
-/*!****************************************************!*\
- !*** ./node_modules/underscore/modules/memoize.js ***!
- \****************************************************/
-/***/ (function(__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": function() { return /* binding */ memoize; }
-/* harmony export */ });
-/* harmony import */ var _has_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_has.js */ "./node_modules/underscore/modules/_has.js");
-
-
-// Memoize an expensive function by storing its results.
-function memoize(func, hasher) {
- var memoize = function(key) {
- var cache = memoize.cache;
- var address = '' + (hasher ? hasher.apply(this, arguments) : key);
- if (!(0,_has_js__WEBPACK_IMPORTED_MODULE_0__["default"])(cache, address)) cache[address] = func.apply(this, arguments);
- return cache[address];
- };
- memoize.cache = {};
- return memoize;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/min.js":
-/*!************************************************!*\
- !*** ./node_modules/underscore/modules/min.js ***!
- \************************************************/
-/***/ (function(__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": function() { return /* binding */ min; }
-/* harmony export */ });
-/* harmony import */ var _isArrayLike_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_isArrayLike.js */ "./node_modules/underscore/modules/_isArrayLike.js");
-/* harmony import */ var _values_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./values.js */ "./node_modules/underscore/modules/values.js");
-/* harmony import */ var _cb_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./_cb.js */ "./node_modules/underscore/modules/_cb.js");
-/* harmony import */ var _each_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./each.js */ "./node_modules/underscore/modules/each.js");
-
-
-
-
-
-// Return the minimum element (or element-based computation).
-function min(obj, iteratee, context) {
- var result = Infinity, lastComputed = Infinity,
- value, computed;
- if (iteratee == null || (typeof iteratee == 'number' && typeof obj[0] != 'object' && obj != null)) {
- obj = (0,_isArrayLike_js__WEBPACK_IMPORTED_MODULE_0__["default"])(obj) ? obj : (0,_values_js__WEBPACK_IMPORTED_MODULE_1__["default"])(obj);
- for (var i = 0, length = obj.length; i < length; i++) {
- value = obj[i];
- if (value != null && value < result) {
- result = value;
- }
- }
- } else {
- iteratee = (0,_cb_js__WEBPACK_IMPORTED_MODULE_2__["default"])(iteratee, context);
- (0,_each_js__WEBPACK_IMPORTED_MODULE_3__["default"])(obj, function(v, index, list) {
- computed = iteratee(v, index, list);
- if (computed < lastComputed || (computed === Infinity && result === Infinity)) {
- result = v;
- lastComputed = computed;
- }
- });
- }
- return result;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/mixin.js":
-/*!**************************************************!*\
- !*** ./node_modules/underscore/modules/mixin.js ***!
- \**************************************************/
-/***/ (function(__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": function() { return /* binding */ mixin; }
-/* harmony export */ });
-/* harmony import */ var _underscore_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./underscore.js */ "./node_modules/underscore/modules/underscore.js");
-/* harmony import */ var _each_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./each.js */ "./node_modules/underscore/modules/each.js");
-/* harmony import */ var _functions_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./functions.js */ "./node_modules/underscore/modules/functions.js");
-/* harmony import */ var _setup_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./_setup.js */ "./node_modules/underscore/modules/_setup.js");
-/* harmony import */ var _chainResult_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./_chainResult.js */ "./node_modules/underscore/modules/_chainResult.js");
-
-
-
-
-
-
-// Add your own custom functions to the Underscore object.
-function mixin(obj) {
- (0,_each_js__WEBPACK_IMPORTED_MODULE_1__["default"])((0,_functions_js__WEBPACK_IMPORTED_MODULE_2__["default"])(obj), function(name) {
- var func = _underscore_js__WEBPACK_IMPORTED_MODULE_0__["default"][name] = obj[name];
- _underscore_js__WEBPACK_IMPORTED_MODULE_0__["default"].prototype[name] = function() {
- var args = [this._wrapped];
- _setup_js__WEBPACK_IMPORTED_MODULE_3__.push.apply(args, arguments);
- return (0,_chainResult_js__WEBPACK_IMPORTED_MODULE_4__["default"])(this, func.apply(_underscore_js__WEBPACK_IMPORTED_MODULE_0__["default"], args));
- };
- });
- return _underscore_js__WEBPACK_IMPORTED_MODULE_0__["default"];
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/negate.js":
-/*!***************************************************!*\
- !*** ./node_modules/underscore/modules/negate.js ***!
- \***************************************************/
-/***/ (function(__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": function() { return /* binding */ negate; }
-/* harmony export */ });
-// Returns a negated version of the passed-in predicate.
-function negate(predicate) {
- return function() {
- return !predicate.apply(this, arguments);
- };
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/noop.js":
-/*!*************************************************!*\
- !*** ./node_modules/underscore/modules/noop.js ***!
- \*************************************************/
-/***/ (function(__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": function() { return /* binding */ noop; }
-/* harmony export */ });
-// Predicate-generating function. Often useful outside of Underscore.
-function noop(){}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/now.js":
-/*!************************************************!*\
- !*** ./node_modules/underscore/modules/now.js ***!
- \************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-// A (possibly faster) way to get the current timestamp as an integer.
-/* harmony default export */ __webpack_exports__["default"] = (Date.now || function() {
- return new Date().getTime();
-});
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/object.js":
-/*!***************************************************!*\
- !*** ./node_modules/underscore/modules/object.js ***!
- \***************************************************/
-/***/ (function(__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": function() { return /* binding */ object; }
-/* harmony export */ });
-/* harmony import */ var _getLength_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_getLength.js */ "./node_modules/underscore/modules/_getLength.js");
-
-
-// Converts lists into objects. Pass either a single array of `[key, value]`
-// pairs, or two parallel arrays of the same length -- one of keys, and one of
-// the corresponding values. Passing by pairs is the reverse of `_.pairs`.
-function object(list, values) {
- var result = {};
- for (var i = 0, length = (0,_getLength_js__WEBPACK_IMPORTED_MODULE_0__["default"])(list); i < length; i++) {
- if (values) {
- result[list[i]] = values[i];
- } else {
- result[list[i][0]] = list[i][1];
- }
- }
- return result;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/omit.js":
-/*!*************************************************!*\
- !*** ./node_modules/underscore/modules/omit.js ***!
- \*************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _restArguments_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./restArguments.js */ "./node_modules/underscore/modules/restArguments.js");
-/* harmony import */ var _isFunction_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./isFunction.js */ "./node_modules/underscore/modules/isFunction.js");
-/* harmony import */ var _negate_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./negate.js */ "./node_modules/underscore/modules/negate.js");
-/* harmony import */ var _map_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./map.js */ "./node_modules/underscore/modules/map.js");
-/* harmony import */ var _flatten_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./_flatten.js */ "./node_modules/underscore/modules/_flatten.js");
-/* harmony import */ var _contains_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./contains.js */ "./node_modules/underscore/modules/contains.js");
-/* harmony import */ var _pick_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./pick.js */ "./node_modules/underscore/modules/pick.js");
-
-
-
-
-
-
-
-
-// Return a copy of the object without the disallowed properties.
-/* harmony default export */ __webpack_exports__["default"] = ((0,_restArguments_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function(obj, keys) {
- var iteratee = keys[0], context;
- if ((0,_isFunction_js__WEBPACK_IMPORTED_MODULE_1__["default"])(iteratee)) {
- iteratee = (0,_negate_js__WEBPACK_IMPORTED_MODULE_2__["default"])(iteratee);
- if (keys.length > 1) context = keys[1];
- } else {
- keys = (0,_map_js__WEBPACK_IMPORTED_MODULE_3__["default"])((0,_flatten_js__WEBPACK_IMPORTED_MODULE_4__["default"])(keys, false, false), String);
- iteratee = function(value, key) {
- return !(0,_contains_js__WEBPACK_IMPORTED_MODULE_5__["default"])(keys, key);
- };
- }
- return (0,_pick_js__WEBPACK_IMPORTED_MODULE_6__["default"])(obj, iteratee, context);
-}));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/once.js":
-/*!*************************************************!*\
- !*** ./node_modules/underscore/modules/once.js ***!
- \*************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _partial_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./partial.js */ "./node_modules/underscore/modules/partial.js");
-/* harmony import */ var _before_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./before.js */ "./node_modules/underscore/modules/before.js");
-
-
-
-// Returns a function that will be executed at most one time, no matter how
-// often you call it. Useful for lazy initialization.
-/* harmony default export */ __webpack_exports__["default"] = ((0,_partial_js__WEBPACK_IMPORTED_MODULE_0__["default"])(_before_js__WEBPACK_IMPORTED_MODULE_1__["default"], 2));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/pairs.js":
-/*!**************************************************!*\
- !*** ./node_modules/underscore/modules/pairs.js ***!
- \**************************************************/
-/***/ (function(__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": function() { return /* binding */ pairs; }
-/* harmony export */ });
-/* harmony import */ var _keys_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./keys.js */ "./node_modules/underscore/modules/keys.js");
-
-
-// Convert an object into a list of `[key, value]` pairs.
-// The opposite of `_.object` with one argument.
-function pairs(obj) {
- var _keys = (0,_keys_js__WEBPACK_IMPORTED_MODULE_0__["default"])(obj);
- var length = _keys.length;
- var pairs = Array(length);
- for (var i = 0; i < length; i++) {
- pairs[i] = [_keys[i], obj[_keys[i]]];
- }
- return pairs;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/partial.js":
-/*!****************************************************!*\
- !*** ./node_modules/underscore/modules/partial.js ***!
- \****************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _restArguments_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./restArguments.js */ "./node_modules/underscore/modules/restArguments.js");
-/* harmony import */ var _executeBound_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./_executeBound.js */ "./node_modules/underscore/modules/_executeBound.js");
-/* harmony import */ var _underscore_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./underscore.js */ "./node_modules/underscore/modules/underscore.js");
-
-
-
-
-// Partially apply a function by creating a version that has had some of its
-// arguments pre-filled, without changing its dynamic `this` context. `_` acts
-// as a placeholder by default, allowing any combination of arguments to be
-// pre-filled. Set `_.partial.placeholder` for a custom placeholder argument.
-var partial = (0,_restArguments_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function(func, boundArgs) {
- var placeholder = partial.placeholder;
- var bound = function() {
- var position = 0, length = boundArgs.length;
- var args = Array(length);
- for (var i = 0; i < length; i++) {
- args[i] = boundArgs[i] === placeholder ? arguments[position++] : boundArgs[i];
- }
- while (position < arguments.length) args.push(arguments[position++]);
- return (0,_executeBound_js__WEBPACK_IMPORTED_MODULE_1__["default"])(func, bound, this, this, args);
- };
- return bound;
-});
-
-partial.placeholder = _underscore_js__WEBPACK_IMPORTED_MODULE_2__["default"];
-/* harmony default export */ __webpack_exports__["default"] = (partial);
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/partition.js":
-/*!******************************************************!*\
- !*** ./node_modules/underscore/modules/partition.js ***!
- \******************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _group_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_group.js */ "./node_modules/underscore/modules/_group.js");
-
-
-// Split a collection into two arrays: one whose elements all pass the given
-// truth test, and one whose elements all do not pass the truth test.
-/* harmony default export */ __webpack_exports__["default"] = ((0,_group_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function(result, value, pass) {
- result[pass ? 0 : 1].push(value);
-}, true));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/pick.js":
-/*!*************************************************!*\
- !*** ./node_modules/underscore/modules/pick.js ***!
- \*************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _restArguments_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./restArguments.js */ "./node_modules/underscore/modules/restArguments.js");
-/* harmony import */ var _isFunction_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./isFunction.js */ "./node_modules/underscore/modules/isFunction.js");
-/* harmony import */ var _optimizeCb_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./_optimizeCb.js */ "./node_modules/underscore/modules/_optimizeCb.js");
-/* harmony import */ var _allKeys_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./allKeys.js */ "./node_modules/underscore/modules/allKeys.js");
-/* harmony import */ var _keyInObj_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./_keyInObj.js */ "./node_modules/underscore/modules/_keyInObj.js");
-/* harmony import */ var _flatten_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./_flatten.js */ "./node_modules/underscore/modules/_flatten.js");
-
-
-
-
-
-
-
-// Return a copy of the object only containing the allowed properties.
-/* harmony default export */ __webpack_exports__["default"] = ((0,_restArguments_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function(obj, keys) {
- var result = {}, iteratee = keys[0];
- if (obj == null) return result;
- if ((0,_isFunction_js__WEBPACK_IMPORTED_MODULE_1__["default"])(iteratee)) {
- if (keys.length > 1) iteratee = (0,_optimizeCb_js__WEBPACK_IMPORTED_MODULE_2__["default"])(iteratee, keys[1]);
- keys = (0,_allKeys_js__WEBPACK_IMPORTED_MODULE_3__["default"])(obj);
- } else {
- iteratee = _keyInObj_js__WEBPACK_IMPORTED_MODULE_4__["default"];
- keys = (0,_flatten_js__WEBPACK_IMPORTED_MODULE_5__["default"])(keys, false, false);
- obj = Object(obj);
- }
- for (var i = 0, length = keys.length; i < length; i++) {
- var key = keys[i];
- var value = obj[key];
- if (iteratee(value, key, obj)) result[key] = value;
- }
- return result;
-}));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/pluck.js":
-/*!**************************************************!*\
- !*** ./node_modules/underscore/modules/pluck.js ***!
- \**************************************************/
-/***/ (function(__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": function() { return /* binding */ pluck; }
-/* harmony export */ });
-/* harmony import */ var _map_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./map.js */ "./node_modules/underscore/modules/map.js");
-/* harmony import */ var _property_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./property.js */ "./node_modules/underscore/modules/property.js");
-
-
-
-// Convenience version of a common use case of `_.map`: fetching a property.
-function pluck(obj, key) {
- return (0,_map_js__WEBPACK_IMPORTED_MODULE_0__["default"])(obj, (0,_property_js__WEBPACK_IMPORTED_MODULE_1__["default"])(key));
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/property.js":
-/*!*****************************************************!*\
- !*** ./node_modules/underscore/modules/property.js ***!
- \*****************************************************/
-/***/ (function(__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": function() { return /* binding */ property; }
-/* harmony export */ });
-/* harmony import */ var _deepGet_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_deepGet.js */ "./node_modules/underscore/modules/_deepGet.js");
-/* harmony import */ var _toPath_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./_toPath.js */ "./node_modules/underscore/modules/_toPath.js");
-
-
-
-// Creates a function that, when passed an object, will traverse that object’s
-// properties down the given `path`, specified as an array of keys or indices.
-function property(path) {
- path = (0,_toPath_js__WEBPACK_IMPORTED_MODULE_1__["default"])(path);
- return function(obj) {
- return (0,_deepGet_js__WEBPACK_IMPORTED_MODULE_0__["default"])(obj, path);
- };
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/propertyOf.js":
-/*!*******************************************************!*\
- !*** ./node_modules/underscore/modules/propertyOf.js ***!
- \*******************************************************/
-/***/ (function(__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": function() { return /* binding */ propertyOf; }
-/* harmony export */ });
-/* harmony import */ var _noop_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./noop.js */ "./node_modules/underscore/modules/noop.js");
-/* harmony import */ var _get_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./get.js */ "./node_modules/underscore/modules/get.js");
-
-
-
-// Generates a function for a given object that returns a given property.
-function propertyOf(obj) {
- if (obj == null) return _noop_js__WEBPACK_IMPORTED_MODULE_0__["default"];
- return function(path) {
- return (0,_get_js__WEBPACK_IMPORTED_MODULE_1__["default"])(obj, path);
- };
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/random.js":
-/*!***************************************************!*\
- !*** ./node_modules/underscore/modules/random.js ***!
- \***************************************************/
-/***/ (function(__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": function() { return /* binding */ random; }
-/* harmony export */ });
-// Return a random integer between `min` and `max` (inclusive).
-function random(min, max) {
- if (max == null) {
- max = min;
- min = 0;
- }
- return min + Math.floor(Math.random() * (max - min + 1));
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/range.js":
-/*!**************************************************!*\
- !*** ./node_modules/underscore/modules/range.js ***!
- \**************************************************/
-/***/ (function(__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": function() { return /* binding */ range; }
-/* harmony export */ });
-// Generate an integer Array containing an arithmetic progression. A port of
-// the native Python `range()` function. See
-// [the Python documentation](https://docs.python.org/library/functions.html#range).
-function range(start, stop, step) {
- if (stop == null) {
- stop = start || 0;
- start = 0;
- }
- if (!step) {
- step = stop < start ? -1 : 1;
- }
-
- var length = Math.max(Math.ceil((stop - start) / step), 0);
- var range = Array(length);
-
- for (var idx = 0; idx < length; idx++, start += step) {
- range[idx] = start;
- }
-
- return range;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/reduce.js":
-/*!***************************************************!*\
- !*** ./node_modules/underscore/modules/reduce.js ***!
- \***************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _createReduce_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_createReduce.js */ "./node_modules/underscore/modules/_createReduce.js");
-
-
-// **Reduce** builds up a single result from a list of values, aka `inject`,
-// or `foldl`.
-/* harmony default export */ __webpack_exports__["default"] = ((0,_createReduce_js__WEBPACK_IMPORTED_MODULE_0__["default"])(1));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/reduceRight.js":
-/*!********************************************************!*\
- !*** ./node_modules/underscore/modules/reduceRight.js ***!
- \********************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _createReduce_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_createReduce.js */ "./node_modules/underscore/modules/_createReduce.js");
-
-
-// The right-associative version of reduce, also known as `foldr`.
-/* harmony default export */ __webpack_exports__["default"] = ((0,_createReduce_js__WEBPACK_IMPORTED_MODULE_0__["default"])(-1));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/reject.js":
-/*!***************************************************!*\
- !*** ./node_modules/underscore/modules/reject.js ***!
- \***************************************************/
-/***/ (function(__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": function() { return /* binding */ reject; }
-/* harmony export */ });
-/* harmony import */ var _filter_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./filter.js */ "./node_modules/underscore/modules/filter.js");
-/* harmony import */ var _negate_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./negate.js */ "./node_modules/underscore/modules/negate.js");
-/* harmony import */ var _cb_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./_cb.js */ "./node_modules/underscore/modules/_cb.js");
-
-
-
-
-// Return all the elements for which a truth test fails.
-function reject(obj, predicate, context) {
- return (0,_filter_js__WEBPACK_IMPORTED_MODULE_0__["default"])(obj, (0,_negate_js__WEBPACK_IMPORTED_MODULE_1__["default"])((0,_cb_js__WEBPACK_IMPORTED_MODULE_2__["default"])(predicate)), context);
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/rest.js":
-/*!*************************************************!*\
- !*** ./node_modules/underscore/modules/rest.js ***!
- \*************************************************/
-/***/ (function(__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": function() { return /* binding */ rest; }
-/* harmony export */ });
-/* harmony import */ var _setup_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_setup.js */ "./node_modules/underscore/modules/_setup.js");
-
-
-// Returns everything but the first entry of the `array`. Especially useful on
-// the `arguments` object. Passing an **n** will return the rest N values in the
-// `array`.
-function rest(array, n, guard) {
- return _setup_js__WEBPACK_IMPORTED_MODULE_0__.slice.call(array, n == null || guard ? 1 : n);
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/restArguments.js":
-/*!**********************************************************!*\
- !*** ./node_modules/underscore/modules/restArguments.js ***!
- \**********************************************************/
-/***/ (function(__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": function() { return /* binding */ restArguments; }
-/* harmony export */ });
-// Some functions take a variable number of arguments, or a few expected
-// arguments at the beginning and then a variable number of values to operate
-// on. This helper accumulates all remaining arguments past the function’s
-// argument length (or an explicit `startIndex`), into an array that becomes
-// the last argument. Similar to ES6’s "rest parameter".
-function restArguments(func, startIndex) {
- startIndex = startIndex == null ? func.length - 1 : +startIndex;
- return function() {
- var length = Math.max(arguments.length - startIndex, 0),
- rest = Array(length),
- index = 0;
- for (; index < length; index++) {
- rest[index] = arguments[index + startIndex];
- }
- switch (startIndex) {
- case 0: return func.call(this, rest);
- case 1: return func.call(this, arguments[0], rest);
- case 2: return func.call(this, arguments[0], arguments[1], rest);
- }
- var args = Array(startIndex + 1);
- for (index = 0; index < startIndex; index++) {
- args[index] = arguments[index];
- }
- args[startIndex] = rest;
- return func.apply(this, args);
- };
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/result.js":
-/*!***************************************************!*\
- !*** ./node_modules/underscore/modules/result.js ***!
- \***************************************************/
-/***/ (function(__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": function() { return /* binding */ result; }
-/* harmony export */ });
-/* harmony import */ var _isFunction_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./isFunction.js */ "./node_modules/underscore/modules/isFunction.js");
-/* harmony import */ var _toPath_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./_toPath.js */ "./node_modules/underscore/modules/_toPath.js");
-
-
-
-// Traverses the children of `obj` along `path`. If a child is a function, it
-// is invoked with its parent as context. Returns the value of the final
-// child, or `fallback` if any child is undefined.
-function result(obj, path, fallback) {
- path = (0,_toPath_js__WEBPACK_IMPORTED_MODULE_1__["default"])(path);
- var length = path.length;
- if (!length) {
- return (0,_isFunction_js__WEBPACK_IMPORTED_MODULE_0__["default"])(fallback) ? fallback.call(obj) : fallback;
- }
- for (var i = 0; i < length; i++) {
- var prop = obj == null ? void 0 : obj[path[i]];
- if (prop === void 0) {
- prop = fallback;
- i = length; // Ensure we don't continue iterating.
- }
- obj = (0,_isFunction_js__WEBPACK_IMPORTED_MODULE_0__["default"])(prop) ? prop.call(obj) : prop;
- }
- return obj;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/sample.js":
-/*!***************************************************!*\
- !*** ./node_modules/underscore/modules/sample.js ***!
- \***************************************************/
-/***/ (function(__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": function() { return /* binding */ sample; }
-/* harmony export */ });
-/* harmony import */ var _isArrayLike_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_isArrayLike.js */ "./node_modules/underscore/modules/_isArrayLike.js");
-/* harmony import */ var _values_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./values.js */ "./node_modules/underscore/modules/values.js");
-/* harmony import */ var _getLength_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./_getLength.js */ "./node_modules/underscore/modules/_getLength.js");
-/* harmony import */ var _random_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./random.js */ "./node_modules/underscore/modules/random.js");
-/* harmony import */ var _toArray_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./toArray.js */ "./node_modules/underscore/modules/toArray.js");
-
-
-
-
-
-
-// Sample **n** random values from a collection using the modern version of the
-// [Fisher-Yates shuffle](https://en.wikipedia.org/wiki/Fisher–Yates_shuffle).
-// If **n** is not specified, returns a single random element.
-// The internal `guard` argument allows it to work with `_.map`.
-function sample(obj, n, guard) {
- if (n == null || guard) {
- if (!(0,_isArrayLike_js__WEBPACK_IMPORTED_MODULE_0__["default"])(obj)) obj = (0,_values_js__WEBPACK_IMPORTED_MODULE_1__["default"])(obj);
- return obj[(0,_random_js__WEBPACK_IMPORTED_MODULE_3__["default"])(obj.length - 1)];
- }
- var sample = (0,_toArray_js__WEBPACK_IMPORTED_MODULE_4__["default"])(obj);
- var length = (0,_getLength_js__WEBPACK_IMPORTED_MODULE_2__["default"])(sample);
- n = Math.max(Math.min(n, length), 0);
- var last = length - 1;
- for (var index = 0; index < n; index++) {
- var rand = (0,_random_js__WEBPACK_IMPORTED_MODULE_3__["default"])(index, last);
- var temp = sample[index];
- sample[index] = sample[rand];
- sample[rand] = temp;
- }
- return sample.slice(0, n);
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/shuffle.js":
-/*!****************************************************!*\
- !*** ./node_modules/underscore/modules/shuffle.js ***!
- \****************************************************/
-/***/ (function(__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": function() { return /* binding */ shuffle; }
-/* harmony export */ });
-/* harmony import */ var _sample_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./sample.js */ "./node_modules/underscore/modules/sample.js");
-
-
-// Shuffle a collection.
-function shuffle(obj) {
- return (0,_sample_js__WEBPACK_IMPORTED_MODULE_0__["default"])(obj, Infinity);
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/size.js":
-/*!*************************************************!*\
- !*** ./node_modules/underscore/modules/size.js ***!
- \*************************************************/
-/***/ (function(__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": function() { return /* binding */ size; }
-/* harmony export */ });
-/* harmony import */ var _isArrayLike_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_isArrayLike.js */ "./node_modules/underscore/modules/_isArrayLike.js");
-/* harmony import */ var _keys_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./keys.js */ "./node_modules/underscore/modules/keys.js");
-
-
-
-// Return the number of elements in a collection.
-function size(obj) {
- if (obj == null) return 0;
- return (0,_isArrayLike_js__WEBPACK_IMPORTED_MODULE_0__["default"])(obj) ? obj.length : (0,_keys_js__WEBPACK_IMPORTED_MODULE_1__["default"])(obj).length;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/some.js":
-/*!*************************************************!*\
- !*** ./node_modules/underscore/modules/some.js ***!
- \*************************************************/
-/***/ (function(__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": function() { return /* binding */ some; }
-/* harmony export */ });
-/* harmony import */ var _cb_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_cb.js */ "./node_modules/underscore/modules/_cb.js");
-/* harmony import */ var _isArrayLike_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./_isArrayLike.js */ "./node_modules/underscore/modules/_isArrayLike.js");
-/* harmony import */ var _keys_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./keys.js */ "./node_modules/underscore/modules/keys.js");
-
-
-
-
-// Determine if at least one element in the object passes a truth test.
-function some(obj, predicate, context) {
- predicate = (0,_cb_js__WEBPACK_IMPORTED_MODULE_0__["default"])(predicate, context);
- var _keys = !(0,_isArrayLike_js__WEBPACK_IMPORTED_MODULE_1__["default"])(obj) && (0,_keys_js__WEBPACK_IMPORTED_MODULE_2__["default"])(obj),
- length = (_keys || obj).length;
- for (var index = 0; index < length; index++) {
- var currentKey = _keys ? _keys[index] : index;
- if (predicate(obj[currentKey], currentKey, obj)) return true;
- }
- return false;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/sortBy.js":
-/*!***************************************************!*\
- !*** ./node_modules/underscore/modules/sortBy.js ***!
- \***************************************************/
-/***/ (function(__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": function() { return /* binding */ sortBy; }
-/* harmony export */ });
-/* harmony import */ var _cb_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_cb.js */ "./node_modules/underscore/modules/_cb.js");
-/* harmony import */ var _pluck_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./pluck.js */ "./node_modules/underscore/modules/pluck.js");
-/* harmony import */ var _map_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./map.js */ "./node_modules/underscore/modules/map.js");
-
-
-
-
-// Sort the object's values by a criterion produced by an iteratee.
-function sortBy(obj, iteratee, context) {
- var index = 0;
- iteratee = (0,_cb_js__WEBPACK_IMPORTED_MODULE_0__["default"])(iteratee, context);
- return (0,_pluck_js__WEBPACK_IMPORTED_MODULE_1__["default"])((0,_map_js__WEBPACK_IMPORTED_MODULE_2__["default"])(obj, function(value, key, list) {
- return {
- value: value,
- index: index++,
- criteria: iteratee(value, key, list)
- };
- }).sort(function(left, right) {
- var a = left.criteria;
- var b = right.criteria;
- if (a !== b) {
- if (a > b || a === void 0) return 1;
- if (a < b || b === void 0) return -1;
- }
- return left.index - right.index;
- }), 'value');
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/sortedIndex.js":
-/*!********************************************************!*\
- !*** ./node_modules/underscore/modules/sortedIndex.js ***!
- \********************************************************/
-/***/ (function(__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": function() { return /* binding */ sortedIndex; }
-/* harmony export */ });
-/* harmony import */ var _cb_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_cb.js */ "./node_modules/underscore/modules/_cb.js");
-/* harmony import */ var _getLength_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./_getLength.js */ "./node_modules/underscore/modules/_getLength.js");
-
-
-
-// Use a comparator function to figure out the smallest index at which
-// an object should be inserted so as to maintain order. Uses binary search.
-function sortedIndex(array, obj, iteratee, context) {
- iteratee = (0,_cb_js__WEBPACK_IMPORTED_MODULE_0__["default"])(iteratee, context, 1);
- var value = iteratee(obj);
- var low = 0, high = (0,_getLength_js__WEBPACK_IMPORTED_MODULE_1__["default"])(array);
- while (low < high) {
- var mid = Math.floor((low + high) / 2);
- if (iteratee(array[mid]) < value) low = mid + 1; else high = mid;
- }
- return low;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/tap.js":
-/*!************************************************!*\
- !*** ./node_modules/underscore/modules/tap.js ***!
- \************************************************/
-/***/ (function(__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": function() { return /* binding */ tap; }
-/* harmony export */ });
-// Invokes `interceptor` with the `obj` and then returns `obj`.
-// The primary purpose of this method is to "tap into" a method chain, in
-// order to perform operations on intermediate results within the chain.
-function tap(obj, interceptor) {
- interceptor(obj);
- return obj;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/template.js":
-/*!*****************************************************!*\
- !*** ./node_modules/underscore/modules/template.js ***!
- \*****************************************************/
-/***/ (function(__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": function() { return /* binding */ template; }
-/* harmony export */ });
-/* harmony import */ var _defaults_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./defaults.js */ "./node_modules/underscore/modules/defaults.js");
-/* harmony import */ var _underscore_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./underscore.js */ "./node_modules/underscore/modules/underscore.js");
-/* harmony import */ var _templateSettings_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./templateSettings.js */ "./node_modules/underscore/modules/templateSettings.js");
-
-
-
-
-// When customizing `_.templateSettings`, if you don't want to define an
-// interpolation, evaluation or escaping regex, we need one that is
-// guaranteed not to match.
-var noMatch = /(.)^/;
-
-// Certain characters need to be escaped so that they can be put into a
-// string literal.
-var escapes = {
- "'": "'",
- '\\': '\\',
- '\r': 'r',
- '\n': 'n',
- '\u2028': 'u2028',
- '\u2029': 'u2029'
-};
-
-var escapeRegExp = /\\|'|\r|\n|\u2028|\u2029/g;
-
-function escapeChar(match) {
- return '\\' + escapes[match];
-}
-
-// In order to prevent third-party code injection through
-// `_.templateSettings.variable`, we test it against the following regular
-// expression. It is intentionally a bit more liberal than just matching valid
-// identifiers, but still prevents possible loopholes through defaults or
-// destructuring assignment.
-var bareIdentifier = /^\s*(\w|\$)+\s*$/;
-
-// JavaScript micro-templating, similar to John Resig's implementation.
-// Underscore templating handles arbitrary delimiters, preserves whitespace,
-// and correctly escapes quotes within interpolated code.
-// NB: `oldSettings` only exists for backwards compatibility.
-function template(text, settings, oldSettings) {
- if (!settings && oldSettings) settings = oldSettings;
- settings = (0,_defaults_js__WEBPACK_IMPORTED_MODULE_0__["default"])({}, settings, _underscore_js__WEBPACK_IMPORTED_MODULE_1__["default"].templateSettings);
-
- // Combine delimiters into one regular expression via alternation.
- var matcher = RegExp([
- (settings.escape || noMatch).source,
- (settings.interpolate || noMatch).source,
- (settings.evaluate || noMatch).source
- ].join('|') + '|$', 'g');
-
- // Compile the template source, escaping string literals appropriately.
- var index = 0;
- var source = "__p+='";
- text.replace(matcher, function(match, escape, interpolate, evaluate, offset) {
- source += text.slice(index, offset).replace(escapeRegExp, escapeChar);
- index = offset + match.length;
-
- if (escape) {
- source += "'+\n((__t=(" + escape + "))==null?'':_.escape(__t))+\n'";
- } else if (interpolate) {
- source += "'+\n((__t=(" + interpolate + "))==null?'':__t)+\n'";
- } else if (evaluate) {
- source += "';\n" + evaluate + "\n__p+='";
- }
-
- // Adobe VMs need the match returned to produce the correct offset.
- return match;
- });
- source += "';\n";
-
- var argument = settings.variable;
- if (argument) {
- // Insure against third-party code injection. (CVE-2021-23358)
- if (!bareIdentifier.test(argument)) throw new Error(
- 'variable is not a bare identifier: ' + argument
- );
- } else {
- // If a variable is not specified, place data values in local scope.
- source = 'with(obj||{}){\n' + source + '}\n';
- argument = 'obj';
- }
-
- source = "var __t,__p='',__j=Array.prototype.join," +
- "print=function(){__p+=__j.call(arguments,'');};\n" +
- source + 'return __p;\n';
-
- var render;
- try {
- render = new Function(argument, '_', source);
- } catch (e) {
- e.source = source;
- throw e;
- }
-
- var template = function(data) {
- return render.call(this, data, _underscore_js__WEBPACK_IMPORTED_MODULE_1__["default"]);
- };
-
- // Provide the compiled source as a convenience for precompilation.
- template.source = 'function(' + argument + '){\n' + source + '}';
-
- return template;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/templateSettings.js":
-/*!*************************************************************!*\
- !*** ./node_modules/underscore/modules/templateSettings.js ***!
- \*************************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _underscore_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./underscore.js */ "./node_modules/underscore/modules/underscore.js");
-
-
-// By default, Underscore uses ERB-style template delimiters. Change the
-// following template settings to use alternative delimiters.
-/* harmony default export */ __webpack_exports__["default"] = (_underscore_js__WEBPACK_IMPORTED_MODULE_0__["default"].templateSettings = {
- evaluate: /<%([\s\S]+?)%>/g,
- interpolate: /<%=([\s\S]+?)%>/g,
- escape: /<%-([\s\S]+?)%>/g
-});
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/throttle.js":
-/*!*****************************************************!*\
- !*** ./node_modules/underscore/modules/throttle.js ***!
- \*****************************************************/
-/***/ (function(__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": function() { return /* binding */ throttle; }
-/* harmony export */ });
-/* harmony import */ var _now_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./now.js */ "./node_modules/underscore/modules/now.js");
-
-
-// Returns a function, that, when invoked, will only be triggered at most once
-// during a given window of time. Normally, the throttled function will run
-// as much as it can, without ever going more than once per `wait` duration;
-// but if you'd like to disable the execution on the leading edge, pass
-// `{leading: false}`. To disable execution on the trailing edge, ditto.
-function throttle(func, wait, options) {
- var timeout, context, args, result;
- var previous = 0;
- if (!options) options = {};
-
- var later = function() {
- previous = options.leading === false ? 0 : (0,_now_js__WEBPACK_IMPORTED_MODULE_0__["default"])();
- timeout = null;
- result = func.apply(context, args);
- if (!timeout) context = args = null;
- };
-
- var throttled = function() {
- var _now = (0,_now_js__WEBPACK_IMPORTED_MODULE_0__["default"])();
- if (!previous && options.leading === false) previous = _now;
- var remaining = wait - (_now - previous);
- context = this;
- args = arguments;
- if (remaining <= 0 || remaining > wait) {
- if (timeout) {
- clearTimeout(timeout);
- timeout = null;
- }
- previous = _now;
- result = func.apply(context, args);
- if (!timeout) context = args = null;
- } else if (!timeout && options.trailing !== false) {
- timeout = setTimeout(later, remaining);
- }
- return result;
- };
-
- throttled.cancel = function() {
- clearTimeout(timeout);
- previous = 0;
- timeout = context = args = null;
- };
-
- return throttled;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/times.js":
-/*!**************************************************!*\
- !*** ./node_modules/underscore/modules/times.js ***!
- \**************************************************/
-/***/ (function(__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": function() { return /* binding */ times; }
-/* harmony export */ });
-/* harmony import */ var _optimizeCb_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_optimizeCb.js */ "./node_modules/underscore/modules/_optimizeCb.js");
-
-
-// Run a function **n** times.
-function times(n, iteratee, context) {
- var accum = Array(Math.max(0, n));
- iteratee = (0,_optimizeCb_js__WEBPACK_IMPORTED_MODULE_0__["default"])(iteratee, context, 1);
- for (var i = 0; i < n; i++) accum[i] = iteratee(i);
- return accum;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/toArray.js":
-/*!****************************************************!*\
- !*** ./node_modules/underscore/modules/toArray.js ***!
- \****************************************************/
-/***/ (function(__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": function() { return /* binding */ toArray; }
-/* harmony export */ });
-/* harmony import */ var _isArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./isArray.js */ "./node_modules/underscore/modules/isArray.js");
-/* harmony import */ var _setup_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./_setup.js */ "./node_modules/underscore/modules/_setup.js");
-/* harmony import */ var _isString_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./isString.js */ "./node_modules/underscore/modules/isString.js");
-/* harmony import */ var _isArrayLike_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./_isArrayLike.js */ "./node_modules/underscore/modules/_isArrayLike.js");
-/* harmony import */ var _map_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./map.js */ "./node_modules/underscore/modules/map.js");
-/* harmony import */ var _identity_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./identity.js */ "./node_modules/underscore/modules/identity.js");
-/* harmony import */ var _values_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./values.js */ "./node_modules/underscore/modules/values.js");
-
-
-
-
-
-
-
-
-// Safely create a real, live array from anything iterable.
-var reStrSymbol = /[^\ud800-\udfff]|[\ud800-\udbff][\udc00-\udfff]|[\ud800-\udfff]/g;
-function toArray(obj) {
- if (!obj) return [];
- if ((0,_isArray_js__WEBPACK_IMPORTED_MODULE_0__["default"])(obj)) return _setup_js__WEBPACK_IMPORTED_MODULE_1__.slice.call(obj);
- if ((0,_isString_js__WEBPACK_IMPORTED_MODULE_2__["default"])(obj)) {
- // Keep surrogate pair characters together.
- return obj.match(reStrSymbol);
- }
- if ((0,_isArrayLike_js__WEBPACK_IMPORTED_MODULE_3__["default"])(obj)) return (0,_map_js__WEBPACK_IMPORTED_MODULE_4__["default"])(obj, _identity_js__WEBPACK_IMPORTED_MODULE_5__["default"]);
- return (0,_values_js__WEBPACK_IMPORTED_MODULE_6__["default"])(obj);
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/toPath.js":
-/*!***************************************************!*\
- !*** ./node_modules/underscore/modules/toPath.js ***!
- \***************************************************/
-/***/ (function(__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": function() { return /* binding */ toPath; }
-/* harmony export */ });
-/* harmony import */ var _underscore_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./underscore.js */ "./node_modules/underscore/modules/underscore.js");
-/* harmony import */ var _isArray_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./isArray.js */ "./node_modules/underscore/modules/isArray.js");
-
-
-
-// Normalize a (deep) property `path` to array.
-// Like `_.iteratee`, this function can be customized.
-function toPath(path) {
- return (0,_isArray_js__WEBPACK_IMPORTED_MODULE_1__["default"])(path) ? path : [path];
-}
-_underscore_js__WEBPACK_IMPORTED_MODULE_0__["default"].toPath = toPath;
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/underscore-array-methods.js":
-/*!*********************************************************************!*\
- !*** ./node_modules/underscore/modules/underscore-array-methods.js ***!
- \*********************************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _underscore_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./underscore.js */ "./node_modules/underscore/modules/underscore.js");
-/* harmony import */ var _each_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./each.js */ "./node_modules/underscore/modules/each.js");
-/* harmony import */ var _setup_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./_setup.js */ "./node_modules/underscore/modules/_setup.js");
-/* harmony import */ var _chainResult_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./_chainResult.js */ "./node_modules/underscore/modules/_chainResult.js");
-
-
-
-
-
-// Add all mutator `Array` functions to the wrapper.
-(0,_each_js__WEBPACK_IMPORTED_MODULE_1__["default"])(['pop', 'push', 'reverse', 'shift', 'sort', 'splice', 'unshift'], function(name) {
- var method = _setup_js__WEBPACK_IMPORTED_MODULE_2__.ArrayProto[name];
- _underscore_js__WEBPACK_IMPORTED_MODULE_0__["default"].prototype[name] = function() {
- var obj = this._wrapped;
- if (obj != null) {
- method.apply(obj, arguments);
- if ((name === 'shift' || name === 'splice') && obj.length === 0) {
- delete obj[0];
- }
- }
- return (0,_chainResult_js__WEBPACK_IMPORTED_MODULE_3__["default"])(this, obj);
- };
-});
-
-// Add all accessor `Array` functions to the wrapper.
-(0,_each_js__WEBPACK_IMPORTED_MODULE_1__["default"])(['concat', 'join', 'slice'], function(name) {
- var method = _setup_js__WEBPACK_IMPORTED_MODULE_2__.ArrayProto[name];
- _underscore_js__WEBPACK_IMPORTED_MODULE_0__["default"].prototype[name] = function() {
- var obj = this._wrapped;
- if (obj != null) obj = method.apply(obj, arguments);
- return (0,_chainResult_js__WEBPACK_IMPORTED_MODULE_3__["default"])(this, obj);
- };
-});
-
-/* harmony default export */ __webpack_exports__["default"] = (_underscore_js__WEBPACK_IMPORTED_MODULE_0__["default"]);
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/underscore.js":
-/*!*******************************************************!*\
- !*** ./node_modules/underscore/modules/underscore.js ***!
- \*******************************************************/
-/***/ (function(__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": function() { return /* binding */ _; }
-/* harmony export */ });
-/* harmony import */ var _setup_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_setup.js */ "./node_modules/underscore/modules/_setup.js");
-
-
-// If Underscore is called as a function, it returns a wrapped object that can
-// be used OO-style. This wrapper holds altered versions of all functions added
-// through `_.mixin`. Wrapped objects may be chained.
-function _(obj) {
- if (obj instanceof _) return obj;
- if (!(this instanceof _)) return new _(obj);
- this._wrapped = obj;
-}
-
-_.VERSION = _setup_js__WEBPACK_IMPORTED_MODULE_0__.VERSION;
-
-// Extracts the result from a wrapped and chained object.
-_.prototype.value = function() {
- return this._wrapped;
-};
-
-// Provide unwrapping proxies for some methods used in engine operations
-// such as arithmetic and JSON stringification.
-_.prototype.valueOf = _.prototype.toJSON = _.prototype.value;
-
-_.prototype.toString = function() {
- return String(this._wrapped);
-};
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/unescape.js":
-/*!*****************************************************!*\
- !*** ./node_modules/underscore/modules/unescape.js ***!
- \*****************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _createEscaper_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_createEscaper.js */ "./node_modules/underscore/modules/_createEscaper.js");
-/* harmony import */ var _unescapeMap_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./_unescapeMap.js */ "./node_modules/underscore/modules/_unescapeMap.js");
-
-
-
-// Function for unescaping strings from HTML interpolation.
-/* harmony default export */ __webpack_exports__["default"] = ((0,_createEscaper_js__WEBPACK_IMPORTED_MODULE_0__["default"])(_unescapeMap_js__WEBPACK_IMPORTED_MODULE_1__["default"]));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/union.js":
-/*!**************************************************!*\
- !*** ./node_modules/underscore/modules/union.js ***!
- \**************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _restArguments_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./restArguments.js */ "./node_modules/underscore/modules/restArguments.js");
-/* harmony import */ var _uniq_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./uniq.js */ "./node_modules/underscore/modules/uniq.js");
-/* harmony import */ var _flatten_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./_flatten.js */ "./node_modules/underscore/modules/_flatten.js");
-
-
-
-
-// Produce an array that contains the union: each distinct element from all of
-// the passed-in arrays.
-/* harmony default export */ __webpack_exports__["default"] = ((0,_restArguments_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function(arrays) {
- return (0,_uniq_js__WEBPACK_IMPORTED_MODULE_1__["default"])((0,_flatten_js__WEBPACK_IMPORTED_MODULE_2__["default"])(arrays, true, true));
-}));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/uniq.js":
-/*!*************************************************!*\
- !*** ./node_modules/underscore/modules/uniq.js ***!
- \*************************************************/
-/***/ (function(__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": function() { return /* binding */ uniq; }
-/* harmony export */ });
-/* harmony import */ var _isBoolean_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./isBoolean.js */ "./node_modules/underscore/modules/isBoolean.js");
-/* harmony import */ var _cb_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./_cb.js */ "./node_modules/underscore/modules/_cb.js");
-/* harmony import */ var _getLength_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./_getLength.js */ "./node_modules/underscore/modules/_getLength.js");
-/* harmony import */ var _contains_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./contains.js */ "./node_modules/underscore/modules/contains.js");
-
-
-
-
-
-// Produce a duplicate-free version of the array. If the array has already
-// been sorted, you have the option of using a faster algorithm.
-// The faster algorithm will not work with an iteratee if the iteratee
-// is not a one-to-one function, so providing an iteratee will disable
-// the faster algorithm.
-function uniq(array, isSorted, iteratee, context) {
- if (!(0,_isBoolean_js__WEBPACK_IMPORTED_MODULE_0__["default"])(isSorted)) {
- context = iteratee;
- iteratee = isSorted;
- isSorted = false;
- }
- if (iteratee != null) iteratee = (0,_cb_js__WEBPACK_IMPORTED_MODULE_1__["default"])(iteratee, context);
- var result = [];
- var seen = [];
- for (var i = 0, length = (0,_getLength_js__WEBPACK_IMPORTED_MODULE_2__["default"])(array); i < length; i++) {
- var value = array[i],
- computed = iteratee ? iteratee(value, i, array) : value;
- if (isSorted && !iteratee) {
- if (!i || seen !== computed) result.push(value);
- seen = computed;
- } else if (iteratee) {
- if (!(0,_contains_js__WEBPACK_IMPORTED_MODULE_3__["default"])(seen, computed)) {
- seen.push(computed);
- result.push(value);
- }
- } else if (!(0,_contains_js__WEBPACK_IMPORTED_MODULE_3__["default"])(result, value)) {
- result.push(value);
- }
- }
- return result;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/uniqueId.js":
-/*!*****************************************************!*\
- !*** ./node_modules/underscore/modules/uniqueId.js ***!
- \*****************************************************/
-/***/ (function(__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": function() { return /* binding */ uniqueId; }
-/* harmony export */ });
-// Generate a unique integer id (unique within the entire client session).
-// Useful for temporary DOM ids.
-var idCounter = 0;
-function uniqueId(prefix) {
- var id = ++idCounter + '';
- return prefix ? prefix + id : id;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/unzip.js":
-/*!**************************************************!*\
- !*** ./node_modules/underscore/modules/unzip.js ***!
- \**************************************************/
-/***/ (function(__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": function() { return /* binding */ unzip; }
-/* harmony export */ });
-/* harmony import */ var _max_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./max.js */ "./node_modules/underscore/modules/max.js");
-/* harmony import */ var _getLength_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./_getLength.js */ "./node_modules/underscore/modules/_getLength.js");
-/* harmony import */ var _pluck_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./pluck.js */ "./node_modules/underscore/modules/pluck.js");
-
-
-
-
-// Complement of zip. Unzip accepts an array of arrays and groups
-// each array's elements on shared indices.
-function unzip(array) {
- var length = (array && (0,_max_js__WEBPACK_IMPORTED_MODULE_0__["default"])(array, _getLength_js__WEBPACK_IMPORTED_MODULE_1__["default"]).length) || 0;
- var result = Array(length);
-
- for (var index = 0; index < length; index++) {
- result[index] = (0,_pluck_js__WEBPACK_IMPORTED_MODULE_2__["default"])(array, index);
- }
- return result;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/values.js":
-/*!***************************************************!*\
- !*** ./node_modules/underscore/modules/values.js ***!
- \***************************************************/
-/***/ (function(__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": function() { return /* binding */ values; }
-/* harmony export */ });
-/* harmony import */ var _keys_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./keys.js */ "./node_modules/underscore/modules/keys.js");
-
-
-// Retrieve the values of an object's properties.
-function values(obj) {
- var _keys = (0,_keys_js__WEBPACK_IMPORTED_MODULE_0__["default"])(obj);
- var length = _keys.length;
- var values = Array(length);
- for (var i = 0; i < length; i++) {
- values[i] = obj[_keys[i]];
- }
- return values;
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/where.js":
-/*!**************************************************!*\
- !*** ./node_modules/underscore/modules/where.js ***!
- \**************************************************/
-/***/ (function(__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": function() { return /* binding */ where; }
-/* harmony export */ });
-/* harmony import */ var _filter_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./filter.js */ "./node_modules/underscore/modules/filter.js");
-/* harmony import */ var _matcher_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./matcher.js */ "./node_modules/underscore/modules/matcher.js");
-
-
-
-// Convenience version of a common use case of `_.filter`: selecting only
-// objects containing specific `key:value` pairs.
-function where(obj, attrs) {
- return (0,_filter_js__WEBPACK_IMPORTED_MODULE_0__["default"])(obj, (0,_matcher_js__WEBPACK_IMPORTED_MODULE_1__["default"])(attrs));
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/without.js":
-/*!****************************************************!*\
- !*** ./node_modules/underscore/modules/without.js ***!
- \****************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _restArguments_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./restArguments.js */ "./node_modules/underscore/modules/restArguments.js");
-/* harmony import */ var _difference_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./difference.js */ "./node_modules/underscore/modules/difference.js");
-
-
-
-// Return a version of the array that does not contain the specified value(s).
-/* harmony default export */ __webpack_exports__["default"] = ((0,_restArguments_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function(array, otherArrays) {
- return (0,_difference_js__WEBPACK_IMPORTED_MODULE_1__["default"])(array, otherArrays);
-}));
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/wrap.js":
-/*!*************************************************!*\
- !*** ./node_modules/underscore/modules/wrap.js ***!
- \*************************************************/
-/***/ (function(__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": function() { return /* binding */ wrap; }
-/* harmony export */ });
-/* harmony import */ var _partial_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./partial.js */ "./node_modules/underscore/modules/partial.js");
-
-
-// Returns the first function passed as an argument to the second,
-// allowing you to adjust arguments, run code before and after, and
-// conditionally execute the original function.
-function wrap(func, wrapper) {
- return (0,_partial_js__WEBPACK_IMPORTED_MODULE_0__["default"])(wrapper, func);
-}
-
-
-/***/ }),
-
-/***/ "./node_modules/underscore/modules/zip.js":
-/*!************************************************!*\
- !*** ./node_modules/underscore/modules/zip.js ***!
- \************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _restArguments_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./restArguments.js */ "./node_modules/underscore/modules/restArguments.js");
-/* harmony import */ var _unzip_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./unzip.js */ "./node_modules/underscore/modules/unzip.js");
-
-
-
-// Zip together multiple lists into a single array -- elements that share
-// an index go together.
-/* harmony default export */ __webpack_exports__["default"] = ((0,_restArguments_js__WEBPACK_IMPORTED_MODULE_0__["default"])(_unzip_js__WEBPACK_IMPORTED_MODULE_1__["default"]));
-
-
-/***/ })
-
-/******/ });
-/************************************************************************/
-/******/ // The module cache
-/******/ var __webpack_module_cache__ = {};
-/******/
-/******/ // The require function
-/******/ function __webpack_require__(moduleId) {
-/******/ // Check if module is in cache
-/******/ var cachedModule = __webpack_module_cache__[moduleId];
-/******/ if (cachedModule !== undefined) {
-/******/ return cachedModule.exports;
-/******/ }
-/******/ // Create a new module (and put it into the cache)
-/******/ var module = __webpack_module_cache__[moduleId] = {
-/******/ id: moduleId,
-/******/ loaded: false,
-/******/ exports: {}
-/******/ };
-/******/
-/******/ // Execute the module function
-/******/ __webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);
-/******/
-/******/ // Flag the module as loaded
-/******/ module.loaded = true;
-/******/
-/******/ // Return the exports of the module
-/******/ return module.exports;
-/******/ }
-/******/
-/******/ // expose the modules object (__webpack_modules__)
-/******/ __webpack_require__.m = __webpack_modules__;
-/******/
-/************************************************************************/
-/******/ /* webpack/runtime/chunk loaded */
-/******/ !function() {
-/******/ var deferred = [];
-/******/ __webpack_require__.O = function(result, chunkIds, fn, priority) {
-/******/ if(chunkIds) {
-/******/ priority = priority || 0;
-/******/ for(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];
-/******/ deferred[i] = [chunkIds, fn, priority];
-/******/ return;
-/******/ }
-/******/ var notFulfilled = Infinity;
-/******/ for (var i = 0; i < deferred.length; i++) {
-/******/ var chunkIds = deferred[i][0];
-/******/ var fn = deferred[i][1];
-/******/ var priority = deferred[i][2];
-/******/ var fulfilled = true;
-/******/ for (var j = 0; j < chunkIds.length; j++) {
-/******/ if ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {
-/******/ chunkIds.splice(j--, 1);
-/******/ } else {
-/******/ fulfilled = false;
-/******/ if(priority < notFulfilled) notFulfilled = priority;
-/******/ }
-/******/ }
-/******/ if(fulfilled) {
-/******/ deferred.splice(i--, 1)
-/******/ var r = fn();
-/******/ if (r !== undefined) result = r;
-/******/ }
-/******/ }
-/******/ return result;
-/******/ };
-/******/ }();
-/******/
-/******/ /* webpack/runtime/compat get default export */
-/******/ !function() {
-/******/ // getDefaultExport function for compatibility with non-harmony modules
-/******/ __webpack_require__.n = function(module) {
-/******/ var getter = module && module.__esModule ?
-/******/ function() { return module['default']; } :
-/******/ function() { return module; };
-/******/ __webpack_require__.d(getter, { a: getter });
-/******/ return getter;
-/******/ };
-/******/ }();
-/******/
-/******/ /* webpack/runtime/define property getters */
-/******/ !function() {
-/******/ // define getter functions for harmony exports
-/******/ __webpack_require__.d = function(exports, definition) {
-/******/ for(var key in definition) {
-/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
-/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
-/******/ }
-/******/ }
-/******/ };
-/******/ }();
-/******/
-/******/ /* webpack/runtime/global */
-/******/ !function() {
-/******/ __webpack_require__.g = (function() {
-/******/ if (typeof globalThis === 'object') return globalThis;
-/******/ try {
-/******/ return this || new Function('return this')();
-/******/ } catch (e) {
-/******/ if (typeof window === 'object') return window;
-/******/ }
-/******/ })();
-/******/ }();
-/******/
-/******/ /* webpack/runtime/hasOwnProperty shorthand */
-/******/ !function() {
-/******/ __webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }
-/******/ }();
-/******/
-/******/ /* webpack/runtime/make namespace object */
-/******/ !function() {
-/******/ // define __esModule on exports
-/******/ __webpack_require__.r = function(exports) {
-/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
-/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
-/******/ }
-/******/ Object.defineProperty(exports, '__esModule', { value: true });
-/******/ };
-/******/ }();
-/******/
-/******/ /* webpack/runtime/node module decorator */
-/******/ !function() {
-/******/ __webpack_require__.nmd = function(module) {
-/******/ module.paths = [];
-/******/ if (!module.children) module.children = [];
-/******/ return module;
-/******/ };
-/******/ }();
-/******/
-/******/ /* webpack/runtime/jsonp chunk loading */
-/******/ !function() {
-/******/ __webpack_require__.b = document.baseURI || self.location.href;
-/******/
-/******/ // object to store loaded and loading chunks
-/******/ // undefined = chunk not loaded, null = chunk preloaded/prefetched
-/******/ // [resolve, reject, Promise] = chunk loading, 0 = chunk loaded
-/******/ var installedChunks = {
-/******/ "core-login": 0
-/******/ };
-/******/
-/******/ // no chunk on demand loading
-/******/
-/******/ // no prefetching
-/******/
-/******/ // no preloaded
-/******/
-/******/ // no HMR
-/******/
-/******/ // no HMR manifest
-/******/
-/******/ __webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };
-/******/
-/******/ // install a JSONP callback for chunk loading
-/******/ var webpackJsonpCallback = function(parentChunkLoadingFunction, data) {
-/******/ var chunkIds = data[0];
-/******/ var moreModules = data[1];
-/******/ var runtime = data[2];
-/******/ // add "moreModules" to the modules object,
-/******/ // then flag all "chunkIds" as loaded and fire callback
-/******/ var moduleId, chunkId, i = 0;
-/******/ if(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {
-/******/ for(moduleId in moreModules) {
-/******/ if(__webpack_require__.o(moreModules, moduleId)) {
-/******/ __webpack_require__.m[moduleId] = moreModules[moduleId];
-/******/ }
-/******/ }
-/******/ if(runtime) var result = runtime(__webpack_require__);
-/******/ }
-/******/ if(parentChunkLoadingFunction) parentChunkLoadingFunction(data);
-/******/ for(;i < chunkIds.length; i++) {
-/******/ chunkId = chunkIds[i];
-/******/ if(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {
-/******/ installedChunks[chunkId][0]();
-/******/ }
-/******/ installedChunks[chunkId] = 0;
-/******/ }
-/******/ return __webpack_require__.O(result);
-/******/ }
-/******/
-/******/ var chunkLoadingGlobal = self["webpackChunknextcloud"] = self["webpackChunknextcloud"] || [];
-/******/ chunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));
-/******/ chunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));
-/******/ }();
-/******/
-/******/ /* webpack/runtime/nonce */
-/******/ !function() {
-/******/ __webpack_require__.nc = undefined;
-/******/ }();
-/******/
-/************************************************************************/
-/******/
-/******/ // startup
-/******/ // Load entry module and return exports
-/******/ // This entry module depends on other loaded chunks and execution need to be delayed
-/******/ var __webpack_exports__ = __webpack_require__.O(undefined, ["core-common"], function() { return __webpack_require__("./core/src/login.js"); })
-/******/ __webpack_exports__ = __webpack_require__.O(__webpack_exports__);
-/******/
-/******/ })()
-;
-//# sourceMappingURL=core-login.js.map?v=22d54cab16d12df9cee1 \ No newline at end of file
+/*! For license information please see core-login.js.LICENSE.txt */
+!function(){var e,r={65358:function(t,e,n){"use strict";function r(){for(var t=arguments.length,e=new Array(t),n=0;n<t;n++)e[n]=arguments[n];if(arguments.length<1)return"";var r=e.filter((function(t){return t.length>0}));if(r.length<1)return"";var i=r[r.length-1],o="/"===r[0].charAt(0),a="/"===i.charAt(i.length-1),s=r.reduce((function(t,e){return t.concat(e.split("/"))}),[]),l=!o,u=s.reduce((function(t,e){return""===e?t:l?(l=!1,t+e):t+"/"+e}),"");return a?u+"/":u}e.Ec=function(t){return t?t.split("/").map(encodeURIComponent).join("/"):t},e.EZ=function(t){return t.replace(/\\/g,"/").replace(/.*\//,"")},e.XX=function(t){return t.replace(/\\/g,"/").replace(/\/[^\/]*$/,"")},e.RQ=r,e.Mg=function(t,e){var n=(t||"").split("/").filter((function(t){return"."!==t})),i=(e||"").split("/").filter((function(t){return"."!==t}));return(t=r.apply(void 0,n))===(e=r.apply(void 0,i))},n(21249),n(74916),n(23123),n(15306),n(57327),n(85827),n(92222)},55654:function(e,r,i){"use strict";var o={};i.r(o),i.d(o,{exclude:function(){return je},extract:function(){return _e},parse:function(){return Ce},parseUrl:function(){return Pe},pick:function(){return Oe},stringify:function(){return ke},stringifyUrl:function(){return Ee}});var a=i(20144),s=i(69183),l=i(59050),u=i(19755),c=i.n(u),f=i(3255),d=i(25108),h={updatableNotification:null,getDefaultNotificationFunction:null,setDefault:function(t){this.getDefaultNotificationFunction=t},hide:function(t,e){l.default.isFunction(t)&&(e=t,t=void 0),t?(t.each((function(){c()(this)[0].toastify?c()(this)[0].toastify.hideToast():d.error("cannot hide toast because object is not set"),this===this.updatableNotification&&(this.updatableNotification=null)})),e&&e.call(),this.getDefaultNotificationFunction&&this.getDefaultNotificationFunction()):d.error("Missing argument $row in OC.Notification.hide() call, caller needs to be adjusted to only dismiss its own notification")},showHtml:function(t,e){(e=e||{}).isHTML=!0,e.timeout=e.timeout?e.timeout:f.Rl;var n=(0,f.PV)(t,e);return n.toastElement.toastify=n,c()(n.toastElement)},show:function(t,e){(e=e||{}).timeout=e.timeout?e.timeout:f.Rl;var n=(0,f.PV)(function(t){return t.toString().split("&").join("&amp;").split("<").join("&lt;").split(">").join("&gt;").split('"').join("&quot;").split("'").join("&#039;")}(t),e);return n.toastElement.toastify=n,c()(n.toastElement)},showUpdate:function(t){return this.updatableNotification&&this.updatableNotification.hideToast(),this.updatableNotification=(0,f.PV)(t,{timeout:f.Rl}),this.updatableNotification.toastElement.toastify=this.updatableNotification,c()(this.updatableNotification.toastElement)},showTemporary:function(t,e){(e=e||{}).timeout=e.timeout||f.TN;var n=(0,f.PV)(t,e);return n.toastElement.toastify=n,c()(n.toastElement)},isHidden:function(){return!c()("#content").find(".toastify").length}},p=l.default.throttle((function(){h.showTemporary(t("core","Connection to server lost"))}),7e3,{trailing:!1}),m={enableDynamicSlideToggle:function(){},showAppSidebar:function(t){(t||c()("#app-sidebar")).removeClass("disappear").show(),c()("#app-content").trigger(new(c().Event)("appresized"))},hideAppSidebar:function(t){(t||c()("#app-sidebar")).hide().addClass("disappear"),c()("#app-content").trigger(new(c().Event)("appresized"))}},g=i(79753);function v(t,e,n){"post"!==t&&"delete"!==t||!oe.PasswordConfirmation.requiresPasswordConfirmation()?(n=n||{},c().ajax({type:t.toUpperCase(),url:(0,g.generateOcsUrl)("apps/provisioning_api/api/v1/config/apps")+e,data:n.data||{},success:n.success,error:n.error})):oe.PasswordConfirmation.requirePasswordConfirmation(_.bind(v,this,t,e,n))}var y=window.oc_appconfig||{},b={getValue:function(t,e,n,r){!function(t,e,n,r){(r=r||{}).data={defaultValue:n},v("get","/"+t+"/"+e,r)}(t,e,n,{success:r})},setValue:function(t,e,n){!function(t,e,n,r){(r=r||{}).data={value:n},v("post","/"+t+"/"+e,r)}(t,e,n)},getApps:function(t){!function(t){v("get","",t)}({success:t})},getKeys:function(t,e){!function(t,e){v("get","/"+t,e)}(t,{success:e})},deleteKey:function(t,e){!function(t,e,n){v("delete","/"+t+"/"+e,void 0)}(t,e)}},w=void 0!==window._oc_appswebroots&&window._oc_appswebroots,x=i(72316),A=i.n(x),C=i(76591),k=i(25108),P={create:"POST",update:"PROPPATCH",patch:"PROPPATCH",delete:"DELETE",read:"PROPFIND"};function E(t,e){if(l.default.isArray(t))return l.default.map(t,(function(t){return E(t,e)}));var n={href:t.href};return l.default.each(t.propStat,(function(t){if("HTTP/1.1 200 OK"===t.status)for(var r in t.properties){var i=r;r in e&&(i=e[r]),n[i]=t.properties[r]}})),n.id||(n.id=O(n.href)),n}function O(t){var e=t.indexOf("?");e>0&&(t=t.substr(0,e));var n,r=t.split("/");do{n=r[r.length-1],r.pop()}while(!n&&r.length>0);return n}function j(t){return t>=200&&t<=299}function T(t,e,n,r){return t.propPatch(e.url,function(t,e){var n,r={};for(n in t){var i=e[n],o=t[n];i||(k.warn('No matching DAV property for property "'+n),i=n),(l.default.isBoolean(o)||l.default.isNumber(o))&&(o=""+o),r[i]=o}return r}(n.changed,e.davProperties),r).then((function(t){j(t.status)?l.default.isFunction(e.success)&&e.success(n.toJSON()):l.default.isFunction(e.error)&&e.error(t)}))}var N=A().noConflict();Object.assign(N,{davCall:function(t,e){var n=new C.dav.Client({baseUrl:t.url,xmlNamespaces:l.default.extend({"DAV:":"d","http://owncloud.org/ns":"oc"},t.xmlNamespaces||{})});n.resolveUrl=function(){return t.url};var r=l.default.extend({"X-Requested-With":"XMLHttpRequest",requesttoken:OC.requestToken},t.headers);return"PROPFIND"===t.type?function(t,e,n,r){return t.propFind(e.url,l.default.values(e.davProperties)||[],e.depth,r).then((function(t){if(j(t.status)){if(l.default.isFunction(e.success)){var n=l.default.invert(e.davProperties),r=E(t.body,n);e.depth>0&&r.shift(),e.success(r)}}else l.default.isFunction(e.error)&&e.error(t)}))}(n,t,0,r):"PROPPATCH"===t.type?T(n,t,e,r):"MKCOL"===t.type?function(t,e,n,r){return t.request(e.type,e.url,r,null).then((function(i){j(i.status)?T(t,e,n,r):l.default.isFunction(e.error)&&e.error(i)}))}(n,t,e,r):function(t,e,n,r){return r["Content-Type"]="application/json",t.request(e.type,e.url,r,e.data).then((function(t){if(j(t.status)){if(l.default.isFunction(e.success)){if("PUT"===e.type||"POST"===e.type||"MKCOL"===e.type){var r=t.body||n.toJSON(),i=t.xhr.getResponseHeader("Content-Location");return"POST"===e.type&&i&&(r.id=O(i)),void e.success(r)}if(207===t.status){var o=l.default.invert(e.davProperties);e.success(E(t.body,o))}else e.success(t.body)}}else l.default.isFunction(e.error)&&e.error(t)}))}(n,t,e,r)},davSync:function(t){return function(e,n,r){var i={type:P[e]||e},o=n instanceof t.Collection;if("update"===e&&(n.hasInnerCollection?i.type="MKCOL":(n.usePUT||n.collection&&n.collection.usePUT)&&(i.type="PUT")),r.url||(i.url=l.default.result(n,"url")||function(){throw new Error('A "url" property or function must be specified')}()),null!=r.data||!n||"create"!==e&&"update"!==e&&"patch"!==e||(i.data=JSON.stringify(r.attrs||n.toJSON(r))),"PROPFIND"!==i.type&&(i.processData=!1),"PROPFIND"===i.type||"PROPPATCH"===i.type){var a=n.davProperties;!a&&n.model&&(a=n.model.prototype.davProperties),a&&(l.default.isFunction(a)?i.davProperties=a.call(n):i.davProperties=a),i.davProperties=l.default.extend(i.davProperties||{},r.davProperties),l.default.isUndefined(r.depth)&&(r.depth=o?1:0)}var s=r.error;r.error=function(t,e,n){r.textStatus=e,r.errorThrown=n,s&&s.call(r.context,t,e,n)};var u=r.xhr=t.davCall(l.default.extend(i,r),n);return n.trigger("request",n,u,r),u}}(N)});var S=N,L=i(65358),I=window._oc_config||{},F=i(25108),$=x.Model.extend({defaults:{fullName:"",lastMessage:"",actions:[],hasOneAction:!1,hasTwoActions:!1,hasManyActions:!1},initialize:function(){0===this.get("actions").length?this.set("hasOneAction",!0):1===this.get("actions").length?(this.set("hasTwoActions",!0),this.set("secondAction",this.get("actions")[0])):this.set("hasManyActions",!0);var e=this.get("fullName");this.get("avatar")&&e&&this.set("avatarLabel",t("core","Avatar of {fullName}",{fullName:e}))}}),R=x.Collection.extend({model:$}),U=x.View.extend({_collection:void 0,_subViews:[],tagName:"ul",initialize:function(t){this._collection=t.collection},render:function(){var t=this;return t.$el.html(""),t._subViews=[],t._collection.forEach((function(e){var n=new M({model:e});n.render(),t.$el.append(n.$el),n.on("toggle:actionmenu",t._onChildActionMenuToggle,t),t._subViews.push(n)})),t},_onChildActionMenuToggle:function(t){this._subViews.forEach((function(e){e.trigger("parent:toggle:actionmenu",t)}))}}),M=x.View.extend({className:"contact",tagName:"li",_template:void 0,_model:void 0,_actionMenuShown:!1,events:{"click .icon-more":"_onToggleActionsMenu"},contactTemplate:i(10944),template:function(t){return this.contactTemplate(t)},initialize:function(t){this._model=t.model,this.on("parent:toggle:actionmenu",this._onOtherActionMenuOpened,this)},render:function(){return this.$el.html(this.template({contact:this._model.toJSON()})),this.delegateEvents(),this.$("div.avatar").imageplaceholder(this._model.get("fullName")),this},_onToggleActionsMenu:function(){this._actionMenuShown=!this._actionMenuShown,this._actionMenuShown?this.$(".menu").show():this.$(".menu").hide(),this.trigger("toggle:actionmenu",this.$el)},_onOtherActionMenuOpened:function(t){this.$el.is(t)||(this._actionMenuShown=!1,this.$(".menu").hide())}}),B=x.View.extend({_loadingTemplate:void 0,_errorTemplate:void 0,_contentTemplate:void 0,_contactsTemplate:void 0,_contacts:void 0,_searchTerm:"",events:{"input #contactsmenu-search":"_onSearch"},templates:{loading:i(95386),error:i(20421),menu:i(66115),list:i(34083)},_onSearch:l.default.debounce((function(t){var e=this.$("#contactsmenu-search").val();e!==this._searchTerm&&(this.trigger("search",this.$("#contactsmenu-search").val()),this._searchTerm=e)}),700),loadingTemplate:function(t){return this.templates.loading(t)},errorTemplate:function(e){return this.templates.error(l.default.extend({couldNotLoadText:t("core","Could not load your contacts")},e))},contentTemplate:function(e){return this.templates.menu(l.default.extend({searchContactsText:t("core","Search contacts …")},e))},contactsTemplate:function(e){return this.templates.list(l.default.extend({noContactsFoundText:t("core","No contacts found"),showAllContactsText:t("core","Show all contacts …"),contactsAppMgmtText:t("core","Install the Contacts app")},e))},initialize:function(t){this.options=t},showLoading:function(t){this.render(),this._contacts=void 0,this.$(".content").html(this.loadingTemplate({loadingText:t}))},showError:function(){this.render(),this._contacts=void 0,this.$(".content").html(this.errorTemplate())},showContacts:function(t,e){this._contacts=t.contacts,this.render({contacts:t.contacts});var n=new U({collection:t.contacts});n.render(),this.$(".content").html(this.contactsTemplate({contacts:t.contacts,searchTerm:e,contactsAppEnabled:t.contactsAppEnabled,contactsAppURL:oe.generateUrl("/apps/contacts"),canInstallApp:oe.isUserAdmin(),contactsAppMgmtURL:oe.generateUrl("/settings/apps/social/contacts")})),this.$("#contactsmenu-contacts").html(n.$el)},render:function(t){var e=this.$("#contactsmenu-search").val();return this.$el.html(this.contentTemplate(t)),this.$("#contactsmenu-search").val(e),this.$("#contactsmenu-search").focus(),this}}),z=function(t){this.initialize(t)};z.prototype={$el:void 0,_view:void 0,_contactsPromise:void 0,initialize:function(t){this.$el=c()(t.el),this._view=new B({el:this.$el}),this._view.on("search",(function(t){this.loadContacts(t)}),this)},_getContacts:function(t){var e=oe.generateUrl("/contactsmenu/contacts");return Promise.resolve(c().ajax(e,{method:"POST",data:{filter:t}}))},loadContacts:function(e){var n=this;return n._contactsPromise||(n._contactsPromise=n._getContacts(e)),l.default.isUndefined(e)||""===e?n._view.showLoading(t("core","Loading your contacts …")):n._view.showLoading(t("core","Looking for {term} …",{term:e})),n._contactsPromise.then((function(t){t.contacts=new R(t.contacts),n._view.showContacts(t,e)}),(function(t){n._view.showError(),F.error("There was an error loading your contacts",t)})).then((function(){delete n._contactsPromise})).catch(F.error.bind(this))}};var D=z,H=document.getElementsByTagName("head")[0].getAttribute("data-user"),q=document.getElementsByTagName("head")[0].getAttribute("data-user-displayname"),V=void 0!==H&&H,Y={},G=function(t){return"click"===t.type||"keydown"===t.type&&"Enter"===t.key},K=i(25108);function Z(){Z=function(){return t};var t={},e=Object.prototype,n=e.hasOwnProperty,r=Object.defineProperty||function(t,e,n){t[e]=n.value},i="function"==typeof Symbol?Symbol:{},o=i.iterator||"@@iterator",a=i.asyncIterator||"@@asyncIterator",s=i.toStringTag||"@@toStringTag";function l(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{l({},"")}catch(t){l=function(t,e,n){return t[e]=n}}function u(t,e,n,i){var o=e&&e.prototype instanceof d?e:d,a=Object.create(o.prototype),s=new k(i||[]);return r(a,"_invoke",{value:x(t,n,s)}),a}function c(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}t.wrap=u;var f={};function d(){}function h(){}function p(){}var m={};l(m,o,(function(){return this}));var g=Object.getPrototypeOf,v=g&&g(g(P([])));v&&v!==e&&n.call(v,o)&&(m=v);var y=p.prototype=d.prototype=Object.create(m);function b(t){["next","throw","return"].forEach((function(e){l(t,e,(function(t){return this._invoke(e,t)}))}))}function w(t,e){function i(r,o,a,s){var l=c(t[r],t,o);if("throw"!==l.type){var u=l.arg,f=u.value;return f&&"object"==X(f)&&n.call(f,"__await")?e.resolve(f.__await).then((function(t){i("next",t,a,s)}),(function(t){i("throw",t,a,s)})):e.resolve(f).then((function(t){u.value=t,a(u)}),(function(t){return i("throw",t,a,s)}))}s(l.arg)}var o;r(this,"_invoke",{value:function(t,n){function r(){return new e((function(e,r){i(t,n,e,r)}))}return o=o?o.then(r,r):r()}})}function x(t,e,n){var r="suspendedStart";return function(i,o){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===i)throw o;return{value:void 0,done:!0}}for(n.method=i,n.arg=o;;){var a=n.delegate;if(a){var s=A(a,n);if(s){if(s===f)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var l=c(t,e,n);if("normal"===l.type){if(r=n.done?"completed":"suspendedYield",l.arg===f)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(r="completed",n.method="throw",n.arg=l.arg)}}}function A(t,e){var n=e.method,r=t.iterator[n];if(void 0===r)return e.delegate=null,"throw"===n&&t.iterator.return&&(e.method="return",e.arg=void 0,A(t,e),"throw"===e.method)||"return"!==n&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+n+"' method")),f;var i=c(r,t.iterator,e.arg);if("throw"===i.type)return e.method="throw",e.arg=i.arg,e.delegate=null,f;var o=i.arg;return o?o.done?(e[t.resultName]=o.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,f):o:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,f)}function _(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function C(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function k(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(_,this),this.reset(!0)}function P(t){if(t){var e=t[o];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var r=-1,i=function e(){for(;++r<t.length;)if(n.call(t,r))return e.value=t[r],e.done=!1,e;return e.value=void 0,e.done=!0,e};return i.next=i}}return{next:E}}function E(){return{value:void 0,done:!0}}return h.prototype=p,r(y,"constructor",{value:p,configurable:!0}),r(p,"constructor",{value:h,configurable:!0}),h.displayName=l(p,s,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===h||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,p):(t.__proto__=p,l(t,s,"GeneratorFunction")),t.prototype=Object.create(y),t},t.awrap=function(t){return{__await:t}},b(w.prototype),l(w.prototype,a,(function(){return this})),t.AsyncIterator=w,t.async=function(e,n,r,i,o){void 0===o&&(o=Promise);var a=new w(u(e,n,r,i),o);return t.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},b(y),l(y,s,"Generator"),l(y,o,(function(){return this})),l(y,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),n=[];for(var r in e)n.push(r);return n.reverse(),function t(){for(;n.length;){var r=n.pop();if(r in e)return t.value=r,t.done=!1,t}return t.done=!0,t}},t.values=P,k.prototype={constructor:k,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(C),!t)for(var e in this)"t"===e.charAt(0)&&n.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function r(n,r){return a.type="throw",a.arg=t,e.next=n,r&&(e.method="next",e.arg=void 0),!!r}for(var i=this.tryEntries.length-1;i>=0;--i){var o=this.tryEntries[i],a=o.completion;if("root"===o.tryLoc)return r("end");if(o.tryLoc<=this.prev){var s=n.call(o,"catchLoc"),l=n.call(o,"finallyLoc");if(s&&l){if(this.prev<o.catchLoc)return r(o.catchLoc,!0);if(this.prev<o.finallyLoc)return r(o.finallyLoc)}else if(s){if(this.prev<o.catchLoc)return r(o.catchLoc,!0)}else{if(!l)throw new Error("try statement without catch or finally");if(this.prev<o.finallyLoc)return r(o.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var i=this.tryEntries[r];if(i.tryLoc<=this.prev&&n.call(i,"finallyLoc")&&this.prev<i.finallyLoc){var o=i;break}}o&&("break"===t||"continue"===t)&&o.tryLoc<=e&&e<=o.finallyLoc&&(o=null);var a=o?o.completion:{};return a.type=t,a.arg=e,o?(this.method="next",this.next=o.finallyLoc,f):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),f},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),C(n),f}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var i=r.arg;C(n)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,n){return this.delegate={iterator:P(t),resultName:e,nextLoc:n},"next"===this.method&&(this.arg=void 0),f}},t}function W(t,e,n,r,i,o,a){try{var s=t[o](a),l=s.value}catch(t){return void n(t)}s.done?e(l):Promise.resolve(l).then(r,i)}function J(t){return function(){var e=this,n=arguments;return new Promise((function(r,i){var o=t.apply(e,n);function a(t){W(o,r,i,a,s,"next",t)}function s(t){W(o,r,i,a,s,"throw",t)}a(void 0)}))}}function X(t){return X="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},X(t)}var Q,tt={YES_NO_BUTTONS:70,OK_BUTTONS:71,FILEPICKER_TYPE_CHOOSE:1,FILEPICKER_TYPE_MOVE:2,FILEPICKER_TYPE_COPY:3,FILEPICKER_TYPE_COPY_MOVE:4,FILEPICKER_TYPE_CUSTOM:5,dialogsCounter:0,alert:function(t,e,n,r){this.message(t,e,"alert",tt.OK_BUTTON,n,r)},info:function(t,e,n,r){this.message(t,e,"info",tt.OK_BUTTON,n,r)},confirm:function(t,e,n,r){return this.message(t,e,"notice",tt.YES_NO_BUTTONS,n,r)},confirmDestructive:function(t,e,n,r,i){return this.message(t,e,"none",n,r,void 0===i||i)},confirmHtml:function(t,e,n,r){return this.message(t,e,"notice",tt.YES_NO_BUTTONS,n,r,!0)},prompt:function(e,n,r,i,o,a){return c().when(this._getMessageTemplate()).then((function(s){var u="oc-dialog-"+tt.dialogsCounter+"-content",f="#"+u,d=s.octemplate({dialog_name:u,title:n,message:e,type:"notice"}),h=c()("<input/>");h.attr("type",a?"password":"text").attr("id",u+"-input").attr("placeholder",o);var p=c()("<label/>").attr("for",u+"-input").text(o+": ");d.append(p),d.append(h),void 0===i&&(i=!1),c()("body").append(d),void 0!==r&&(r=l.default.once(r));var m=[{text:t("core","No"),click:function(){void 0!==r&&r(!1,h.val()),c()(f).ocdialog("close")}},{text:t("core","Yes"),click:function(){void 0!==r&&r(!0,h.val()),c()(f).ocdialog("close")},defaultButton:!0}];c()(f).ocdialog({closeOnEscape:!0,modal:i,buttons:m,close:function(){void 0!==r&&r(!1,h.val())}}),h.focus(),tt.dialogsCounter++}))},filepicker:function(e,n,r,i,o,a,s,l){var u=this;if(this.filepicker.sortField="name",this.filepicker.sortOrder="asc",!this.filepicker.loading){void 0===a&&(a=this.FILEPICKER_TYPE_CHOOSE);var f=t("core","No files in here"),d=t("files","New folder");a!==this.FILEPICKER_TYPE_COPY&&a!==this.FILEPICKER_TYPE_MOVE&&a!==this.FILEPICKER_TYPE_COPY_MOVE||(f=t("core","No more subfolders in here")),this.filepicker.loading=!0,this.filepicker.filesClient=Y.Sharing&&Y.Sharing.PublicApp&&Y.Sharing.PublicApp.fileList?Y.Sharing.PublicApp.fileList.filesClient:oe.Files.getClient(),this.filelist=null,s=s||"",l=Object.assign({allowDirectoryChooser:!1},l),c().when(this._getFilePickerTemplate()).then((function(h){var p,m;u.filepicker.loading=!1,u.$filePicker&&u.$filePicker.ocdialog("close"),null==i&&(i=[]),"string"==typeof i&&(i=[i]),u.$filePicker=h.octemplate({dialog_name:"oc-dialog-filepicker-content",title:e,emptytext:f,newtext:d,nameCol:t("core","Name"),sizeCol:t("core","Size"),modifiedCol:t("core","Modified")}).data("path",s).data("multiselect",r).data("mimetype",i).data("allowDirectoryChooser",l.allowDirectoryChooser),"function"==typeof l.filter&&u.$filePicker.data("filter",l.filter),void 0===o&&(o=!1),void 0===r&&(r=!1),c()(null!==(p=null===(m=l)||void 0===m?void 0:m.target)&&void 0!==p?p:"body").prepend(u.$filePicker),u.$showGridView=c()("button#picker-showgridview"),u.$showGridView.on("click keydown",(function(t){G(t)&&u._onGridviewChange()})),u._getGridSettings();var g=u.$filePicker.find(".actions.creatable .button-add");a!==u.FILEPICKER_TYPE_CHOOSE||l.allowDirectoryChooser||u.$filePicker.find(".actions.creatable").hide(),g.on("focus",(function(){u.$filePicker.ocdialog("setEnterCallback",(function(t){t.stopImmediatePropagation(),t.preventDefault(),g.click()}))})),g.on("blur",(function(){u.$filePicker.ocdialog("unsetEnterCallback")})),oe.registerMenu(g,u.$filePicker.find(".menu"),(function(){y.tooltip("hide"),y.focus(),u.$filePicker.ocdialog("setEnterCallback",(function(t){t.stopImmediatePropagation(),t.preventDefault(),u.$filePicker.submit()}));var t=y.val(),e=t.lastIndexOf(".");-1===e&&(e=t.length),y.selectRange(0,e)}));var v=u.$filePicker.find(".filenameform"),y=v.find("input[type='text']"),b=v.find("input[type='submit']");y.on("keydown",(function(t){G(t)&&(t.stopImmediatePropagation(),t.preventDefault(),v.submit())})),b.on("click",(function(t){t.stopImmediatePropagation(),t.preventDefault(),v.submit()}));v.on("submit",(function(e){if(e.stopPropagation(),e.preventDefault(),function(){var e=y.val();try{if(function(e){var n=e.trim();if("."===n||".."===n)throw t("files",'"{name}" is an invalid file name.',{name:e});if(0===n.length)throw t("files","File name cannot be empty.");if(-1!==n.indexOf("/"))throw t("files",'"/" is not allowed inside a file name.');if(n.match(oe.config.blacklist_files_regex))throw t("files",'"{name}" is not an allowed filetype',{name:e});return!0}(e)){if(u.filelist.find((function(t){return t.name===this}),e))throw t("files","{newName} already exists",{newName:e},void 0,{escape:!1});return!0}}catch(t){y.attr("title",t),y.tooltip({placement:"right",trigger:"manual",container:".newFolderMenu"}),y.tooltip("_fixTitle"),y.tooltip("show"),y.addClass("error")}return!1}()){var n=y.val();u.filepicker.filesClient.createDirectory(u.$filePicker.data("path")+"/"+n).always((function(t){u._fillFilePicker(u.$filePicker.data("path")+"/"+n,a)})),oe.hideMenus(),u.$filePicker.ocdialog("unsetEnterCallback"),u.$filePicker.click(),y.val(d)}})),y.on("input",(function(t){y.tooltip("hide")})),u.$filePicker.ready((function(){u.$fileListHeader=u.$filePicker.find(".filelist thead tr"),u.$filelist=u.$filePicker.find(".filelist tbody"),u.$filelistContainer=u.$filePicker.find(".filelist-container"),u.$dirTree=u.$filePicker.find(".dirtree"),u.$dirTree.on("click keydown",".crumb",u,(function(t){G(t)&&u._handleTreeListSelect(t,a)})),u.$filelist.on("click keydown","tr",(function(t){G(t)&&u._handlePickerClick(t,c()(this),a)})),u.$fileListHeader.on("click keydown","a",(function(t){if(G(t)){var e=u.$filePicker.data("path");u.filepicker.sortField=c()(t.currentTarget).data("sort"),u.filepicker.sortOrder="asc"===u.filepicker.sortOrder?"desc":"asc",u._fillFilePicker(e,a)}})),u._fillFilePicker(s,a)}));var w=function(t){if(void 0!==n){var e;if(!0===r)e=[],u.$filelist.find("tr.filepicker_element_selected").each((function(t,n){e.push(u.$filePicker.data("path")+"/"+c()(n).data("entryname"))}));else{e=u.$filePicker.data("path");var i=u.$filelist.find("tr.filepicker_element_selected").data("entryname");i&&(e+="/"+i)}n(e,t),u.$filePicker.ocdialog("close")}},x=[];a===tt.FILEPICKER_TYPE_CHOOSE?x.push({text:t("core","Choose"),click:function(){w(tt.FILEPICKER_TYPE_CHOOSE)},defaultButton:!0}):a===tt.FILEPICKER_TYPE_CUSTOM?l.buttons.forEach((function(t){x.push({text:t.text,click:function(){w(t.type)},defaultButton:t.defaultButton})})):(a!==tt.FILEPICKER_TYPE_COPY&&a!==tt.FILEPICKER_TYPE_COPY_MOVE||x.push({text:t("core","Copy"),click:function(){w(tt.FILEPICKER_TYPE_COPY)},defaultButton:!1}),a!==tt.FILEPICKER_TYPE_MOVE&&a!==tt.FILEPICKER_TYPE_COPY_MOVE||x.push({text:t("core","Move"),click:function(){w(tt.FILEPICKER_TYPE_MOVE)},defaultButton:!0})),u.$filePicker.ocdialog({closeOnEscape:!0,width:600,height:500,modal:o,buttons:x,style:{buttons:"aside"},close:function(){try{c()(this).ocdialog("destroy").remove()}catch(t){}u.$filePicker=null}});var A=u.$filePicker.closest(".oc-dialog").find(".primary");-1!==u.$filePicker.data("mimetype").indexOf("httpd/unix-directory")||u.$filePicker.data("allowDirectoryChooser")?A.prop("disabled",!1):A.prop("disabled",!0)})).fail((function(e,n){u.filepicker.loading=!1,0!==e&&alert(t("core","Error loading file picker template: {error}",{error:n}))}))}},message:function(e,n,r,i,o,a,s){return c().when(this._getMessageTemplate()).then((function(l){var u="oc-dialog-"+tt.dialogsCounter+"-content",f="#"+u,d=l.octemplate({dialog_name:u,title:n,message:e,type:r},s?{escapeFunction:""}:{});void 0===a&&(a=!1),c()("body").append(d);var h=[];switch(i){case tt.YES_NO_BUTTONS:h=[{text:t("core","No"),click:function(){void 0!==o&&o(!1),c()(f).ocdialog("close")}},{text:t("core","Yes"),click:function(){void 0!==o&&o(!0),c()(f).ocdialog("close")},defaultButton:!0}];break;case tt.OK_BUTTON:h[0]={text:t("core","OK"),click:function(){c()(f).ocdialog("close"),void 0!==o&&o()},defaultButton:!0};break;default:"object"===X(i)&&i.type===tt.YES_NO_BUTTONS&&(h=[{text:i.cancel||t("core","No"),click:function(){void 0!==o&&o(!1),c()(f).ocdialog("close")}},{text:i.confirm||t("core","Yes"),click:function(){void 0!==o&&o(!0),c()(f).ocdialog("close")},defaultButton:!0,classes:i.confirmClasses}])}c()(f).ocdialog({closeOnEscape:!0,closeCallback:function(){o&&o(!1)},modal:a,buttons:h}),tt.dialogsCounter++})).fail((function(r,i){0===r?alert(n+": "+e):alert(t("core","Error loading message template: {error}",{error:i}))}))},_fileexistsshown:!1,fileexists:function(e,r,i,o){var a=this,s=new(c().Deferred),l=function(t,e,n,r,i){r=Math.round(r),i=Math.round(i);for(var o=t.getContext("2d").getImageData(0,0,e,n),a=t.getContext("2d").getImageData(0,0,r,i),s=o.data,l=a.data,u=e/r,c=n/i,f=Math.ceil(u/2),d=Math.ceil(c/2),h=0;h<i;h++)for(var p=0;p<r;p++){for(var m=4*(p+h*r),g=0,v=0,y=0,b=0,w=0,x=0,A=0,_=(h+.5)*c,C=Math.floor(h*c);C<(h+1)*c;C++)for(var k=Math.abs(_-(C+.5))/d,P=(p+.5)*u,E=k*k,O=Math.floor(p*u);O<(p+1)*u;O++){var j=Math.abs(P-(O+.5))/f,T=Math.sqrt(E+j*j);T>=-1&&T<=1&&(g=2*T*T*T-3*T*T+1)>0&&(A+=g*s[3+(j=4*(O+C*e))],y+=g,s[j+3]<255&&(g=g*s[j+3]/250),b+=g*s[j],w+=g*s[j+1],x+=g*s[j+2],v+=g)}l[m]=b/v,l[m+1]=w/v,l[m+2]=x/v,l[m+3]=A/y}t.getContext("2d").clearRect(0,0,Math.max(e,r),Math.max(n,i)),t.width=r,t.height=i,t.getContext("2d").putImageData(a,0,0)},u=function(n,r,i){var o=n.find(".template").clone().removeClass("template").addClass("conflict"),a=o.find(".original"),s=o.find(".replacement");o.data("data",e),o.find(".filename").text(r.name),a.find(".size").text(oe.Util.humanFileSize(r.size)),a.find(".mtime").text(oe.Util.formatDate(r.mtime)),i.size&&i.lastModified&&(s.find(".size").text(oe.Util.humanFileSize(i.size)),s.find(".mtime").text(oe.Util.formatDate(i.lastModified)));var u=r.directory+"/"+r.name,f={file:u,x:96,y:96,c:r.etag,forceIcon:0},d=Files.generatePreviewUrl(f);d=d.replace(/'/g,"%27"),a.find(".icon").css({"background-image":"url('"+d+"')"}),function(t){var e=new(c().Deferred),n=t.type&&t.type.split("/").shift();if(window.FileReader&&"image"===n){var r=new FileReader;r.onload=function(t){var n=new Blob([t.target.result]);window.URL=window.URL||window.webkitURL;var r=window.URL.createObjectURL(n),i=new Image;i.src=r,i.onload=function(){var t=function(t){var e,n,r,i=document.createElement("canvas"),o=t.width,a=t.height;return o>a?(n=0,e=(o-a)/2):(n=(a-o)/2,e=0),r=Math.min(o,a),i.width=r,i.height=r,i.getContext("2d").drawImage(t,e,n,r,r,0,0,r,r),l(i,r,r,96,96),i.toDataURL("image/png",.7)}(i);e.resolve(t)}},r.readAsArrayBuffer(t)}else e.reject();return e}(i).then((function(t){s.find(".icon").css("background-image","url("+t+")")}),(function(){u=oe.MimeType.getIconUrl(i.type),s.find(".icon").css("background-image","url("+u+")")}));var h=n.find(".conflict").length;a.find("input:checkbox").attr("id","checkbox_original_"+h),s.find("input:checkbox").attr("id","checkbox_replacement_"+h),n.append(o),i.lastModified>r.mtime?s.find(".mtime").css("font-weight","bold"):i.lastModified<r.mtime&&a.find(".mtime").css("font-weight","bold"),i.size&&i.size>r.size?s.find(".size").css("font-weight","bold"):i.size&&i.size<r.size&&a.find(".size").css("font-weight","bold"),"readonly"===r.status&&(a.addClass("readonly").find('input[type="checkbox"]').prop("checked",!0).prop("disabled",!0),a.find(".message").text(t("core","read-only")))},f="oc-dialog-fileexists-content",d="#"+f;if(this._fileexistsshown){var h=c()(d+" .conflicts");u(h,r,i);var p=c()(d+" .conflict").length,m=n("core","{count} file conflict","{count} file conflicts",p,{count:p});c()(d).parent().children(".oc-dialog-title").text(m),c()(window).trigger("resize"),s.resolve()}else this._fileexistsshown=!0,c().when(this._getFileExistsTemplate()).then((function(n){var l=t("core","One file conflict"),h=n.octemplate({dialog_name:f,title:l,type:"fileexists",allnewfiles:t("core","New Files"),allexistingfiles:t("core","Already existing files"),why:t("core","Which files do you want to keep?"),what:t("core","If you select both versions, the copied file will have a number added to its name.")});if(c()("body").append(h),r&&i){var p=h.find(".conflicts");u(p,r,i)}var m=[{text:t("core","Cancel"),classes:"cancel",click:function(){void 0!==o.onCancel&&o.onCancel(e),c()(d).ocdialog("close")}},{text:t("core","Continue"),classes:"continue",click:function(){void 0!==o.onContinue&&o.onContinue(c()(d+" .conflict")),c()(d).ocdialog("close")}}];c()(d).ocdialog({width:500,closeOnEscape:!0,modal:!0,buttons:m,closeButton:null,close:function(){a._fileexistsshown=!1;try{c()(this).ocdialog("destroy").remove()}catch(t){}}}),c()(d).css("height","auto");var g=h.closest(".oc-dialog").find("button.continue");function v(){var t=h.find(".conflicts .checkbox:checked").length;g.prop("disabled",0===t)}g.prop("disabled",!0),c()(d).find(".allnewfiles").on("click",(function(){c()(d).find('.conflict .replacement input[type="checkbox"]').prop("checked",c()(this).prop("checked"))})),c()(d).find(".allexistingfiles").on("click",(function(){c()(d).find('.conflict .original:not(.readonly) input[type="checkbox"]').prop("checked",c()(this).prop("checked"))})),c()(d).find(".conflicts").on("click",".replacement,.original:not(.readonly)",(function(){var t=c()(this).find('input[type="checkbox"]');t.prop("checked",!t.prop("checked"))})),c()(d).find(".conflicts").on("click",'.replacement input[type="checkbox"],.original:not(.readonly) input[type="checkbox"]',(function(){var t=c()(this);t.prop("checked",!t.prop("checked"))})),c()(d).on("click",".replacement,.allnewfiles",(function(){var e=c()(d).find('.conflict .replacement input[type="checkbox"]:checked').length;e===c()(d+" .conflict").length?(c()(d).find(".allnewfiles").prop("checked",!0),c()(d).find(".allnewfiles + .count").text(t("core","(all selected)"))):e>0?(c()(d).find(".allnewfiles").prop("checked",!1),c()(d).find(".allnewfiles + .count").text(t("core","({count} selected)",{count:e}))):(c()(d).find(".allnewfiles").prop("checked",!1),c()(d).find(".allnewfiles + .count").text("")),v()})),c()(d).on("click",".original,.allexistingfiles",(function(){var e=c()(d).find('.conflict .original input[type="checkbox"]:checked').length;e===c()(d+" .conflict").length?(c()(d).find(".allexistingfiles").prop("checked",!0),c()(d).find(".allexistingfiles + .count").text(t("core","(all selected)"))):e>0?(c()(d).find(".allexistingfiles").prop("checked",!1),c()(d).find(".allexistingfiles + .count").text(t("core","({count} selected)",{count:e}))):(c()(d).find(".allexistingfiles").prop("checked",!1),c()(d).find(".allexistingfiles + .count").text("")),v()})),s.resolve()})).fail((function(){s.reject(),alert(t("core","Error loading file exists template"))}));return s.promise()},_getGridSettings:function(){var e=this;c().get(oe.generateUrl("/apps/files/api/v1/showgridview"),(function(n){e.$showGridView.removeClass("icon-toggle-filelist icon-toggle-pictures").addClass(n.gridview?"icon-toggle-filelist":"icon-toggle-pictures"),e.$showGridView.attr("aria-label",n.gridview?t("files","Show list view"):t("files","Show grid view")),c()(".list-container").toggleClass("view-grid",n.gridview)}))},_onGridviewChange:function(){var e=this.$showGridView.hasClass("icon-toggle-filelist");oe.currentUser&&c().post(oe.generateUrl("/apps/files/api/v1/showgridview"),{show:!e}),this.$showGridView.removeClass("icon-toggle-filelist icon-toggle-pictures").addClass(e?"icon-toggle-pictures":"icon-toggle-filelist"),this.$showGridView.attr("aria-label",e?t("files","Show grid view"):t("files","Show list view")),this.$filePicker.find(".list-container").toggleClass("view-grid",!e)},_getFilePickerTemplate:function(){var t=c().Deferred();if(this.$filePickerTemplate)t.resolve(this.$filePickerTemplate);else{var e=this;c().get(oe.filePath("core","templates","filepicker.html"),(function(n){e.$filePickerTemplate=c()(n),e.$listTmpl=e.$filePickerTemplate.find(".filelist tbody tr:first-child").detach(),t.resolve(e.$filePickerTemplate)})).fail((function(e,n,r){t.reject(e.status,r)}))}return t.promise()},_getMessageTemplate:function(){var t=c().Deferred();if(this.$messageTemplate)t.resolve(this.$messageTemplate);else{var e=this;c().get(oe.filePath("core","templates","message.html"),(function(n){e.$messageTemplate=c()(n),t.resolve(e.$messageTemplate)})).fail((function(e,n,r){t.reject(e.status,r)}))}return t.promise()},_getFileExistsTemplate:function(){var t=c().Deferred();if(this.$fileexistsTemplate)t.resolve(this.$fileexistsTemplate);else{var e=this;c().get(oe.filePath("files","templates","fileexists.html"),(function(n){e.$fileexistsTemplate=c()(n),t.resolve(e.$fileexistsTemplate)})).fail((function(){t.reject()}))}return t.promise()},_fillFilePicker:(Q=J(Z().mark((function e(n,r){var i,o,a,s,l,u,f,d;return Z().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return i=this,this.$filelist.empty(),this.$filePicker.find(".emptycontent").hide(),this.$filelistContainer.addClass("icon-loading"),this.$filePicker.data("path",n),o=this.$filePicker.data("mimetype"),a=this.$filePicker.data("filter"),"string"==typeof o&&(o=[o]),i.$fileListHeader.find(".sort-indicator").addClass("hidden").removeClass("icon-triangle-n").removeClass("icon-triangle-s"),i.$fileListHeader.find("[data-sort="+i.filepicker.sortField+"] .sort-indicator").removeClass("hidden"),"asc"===i.filepicker.sortOrder?i.$fileListHeader.find("[data-sort="+i.filepicker.sortField+"] .sort-indicator").addClass("icon-triangle-n"):i.$fileListHeader.find("[data-sort="+i.filepicker.sortField+"] .sort-indicator").addClass("icon-triangle-s"),s=function(){var t=J(Z().mark((function t(e){return Z().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",i.filepicker.filesClient.getFolderContents(e).then((function(t,e){return e})));case 1:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}(),e.prev=12,e.next=15,s(n);case 15:l=e.sent,e.next=26;break;case 18:return e.prev=18,e.t0=e.catch(12),K.error("Requested path does not exists, falling back to root"),e.next=23,s("/");case 23:l=e.sent,this.$filePicker.data("path","/"),this._changeButtonsText(r,"");case 26:i.filelist=l,o&&o.length>0&&-1===o.indexOf("*")&&(l=l.filter((function(t){return"dir"===t.type||-1!==o.indexOf(t.mimetype)}))),a&&(l=l.filter(a)),"1"!==(null==(u=document.getElementById("showHiddenFiles"))?void 0:u.value)&&(l=l.filter((function(t){return!t.name.startsWith(".")}))),d=(f={name:function(t,e){return"dir"===t.type&&"dir"!==e.type?-1:"dir"!==t.type&&"dir"===e.type?1:oe.Util.naturalSortCompare(t.name,e.name)},size:function(t,e){return t.size-e.size},mtime:function(t,e){return t.mtime-e.mtime}})[i.filepicker.sortField]||f.name,l=l.sort((function(t,e){var n=function(t){return t.tags&&t.tags.indexOf(oe.TAG_FAVORITE)>=0};return n(t)&&!n(e)?-1:!n(t)&&n(e)?1:"asc"===i.filepicker.sortOrder?d(t,e):-d(t,e)})),i._fillSlug(),0===l.length?(i.$filePicker.find(".emptycontent").show(),i.$fileListHeader.hide()):(i.$filePicker.find(".emptycontent").hide(),i.$fileListHeader.show()),i.$filelist.empty(),c().each(l,(function(e,r){var o,a;if(r.isEncrypted&&"httpd/unix-directory"===r.mimetype?r.icon=oe.MimeType.getIconUrl("dir-encrypted"):r.icon=oe.MimeType.getIconUrl(r.mimetype),void 0!==r.size&&r.size>=0?(o=oe.Util.humanFileSize(parseInt(r.size,10),!0),a=Math.round(160-Math.pow(r.size/1048576,2))):(o=t("files","Pending"),a=80),r.name.length>=10)var s=Math.min(Math.floor(r.name.length/2),10),l=r.name.substr(0,r.name.length-s),u=r.name.substr(r.name.length-s);else l=r.name,u="";var f=i.$listTmpl.octemplate({type:r.type,dir:n,filename:r.name,filename1:l,filename2:u,date:oe.Util.relativeModifiedDate(r.mtime),size:o,sizeColor:a,icon:r.icon});if("file"===r.type){var d={file:n+"/"+r.name,x:100,y:100},h=new Image,p=oe.generateUrl("/core/preview.png?")+c().param(d);h.onload=function(){h.width>5&&f.find("td.filename").attr("style","background-image:url("+p+")")},h.src=p}i.$filelist.append(f)})),i.$filelistContainer.removeClass("icon-loading");case 39:case"end":return e.stop()}}),e,this,[[12,18]])}))),function(t,e){return Q.apply(this,arguments)}),_fillSlug:function(){var e=this.$dirTree.find(".actions.creatable").detach();this.$dirTree.empty(),this.$dirTree.append("<nav></nav>"),this.$dirTree.append(e);var n=this.$filePicker.data("path"),r=c()('<li data-dir="{dir}" tabindex="0"><a class="{classList}">{name}</a></li>').addClass("crumb"),i=c()('<ul class="breadcrumb"></ul>');if(n){var o=n.split("/");c().each(o,(function(t,e){if(""===(e=o.pop()))return!1;i.prepend(r.octemplate({dir:o.join("/")+"/"+e,name:e}))}))}r.octemplate({dir:"",name:t("core","Home"),classList:"icon-home"},{escapeFunction:null}).addClass("crumb svg crumbhome").prependTo(i),this.$dirTree.find("> nav").prepend(i)},_handleTreeListSelect:function(t,e){var n=t.data,r=c()(t.target).closest(".crumb").data("dir");n._fillFilePicker(r,e);var i=t.target.closest(".oc-dialog"),o=c()(".primary",i);this._changeButtonsText(e,r.split(/[/]+/).pop()),-1!==this.$filePicker.data("mimetype").indexOf("httpd/unix-directory")||this.$filePicker.data("allowDirectoryChooser")?o.prop("disabled",!1):o.prop("disabled",!0)},_handlePickerClick:function(t,e,n){var r=this.$filePicker.closest(".oc-dialog").find(".primary");"file"===e.data("type")?(!0===this.$filePicker.data("multiselect")&&t.ctrlKey||this.$filelist.find(".filepicker_element_selected").removeClass("filepicker_element_selected"),e.toggleClass("filepicker_element_selected"),r.prop("disabled",!1)):"dir"===e.data("type")&&(this._fillFilePicker(this.$filePicker.data("path")+"/"+e.data("entryname"),n),this._changeButtonsText(n,e.data("entryname")),-1!==this.$filePicker.data("mimetype").indexOf("httpd/unix-directory")||this.$filePicker.data("allowDirectoryChooser")?r.prop("disabled",!1):r.prop("disabled",!0))},_changeButtonsText:function(e,n){var r=""===n?t("core","Copy"):t("core","Copy to {folder}",{folder:n}),i=""===n?t("core","Move"):t("core","Move to {folder}",{folder:n}),o=c()(".oc-dialog-buttonrow button");switch(e){case this.FILEPICKER_TYPE_CHOOSE:case this.FILEPICKER_TYPE_CUSTOM:break;case this.FILEPICKER_TYPE_COPY:o.text(r);break;case this.FILEPICKER_TYPE_MOVE:o.text(i);break;case this.FILEPICKER_TYPE_COPY_MOVE:o.eq(0).text(r),o.eq(1).text(i)}}},et=tt,nt=function(t,e){var n=t.getElementsByTagName("head")[0].getAttribute("data-requesttoken");return{getToken:function(){return n},setToken:function(t){e("csrf-token-update",{token:n=t})}}}(document,s.j8),rt=nt.getToken,it=(nt.setToken,function t(e,n){var r,i,o="";if(this.typelessListeners=[],this.closed=!1,this.listeners={},n)for(r in n)o+=r+"="+encodeURIComponent(n[r])+"&";if(o+="requesttoken="+encodeURIComponent(rt()),this.useFallBack||"undefined"==typeof EventSource){var a="oc_eventsource_iframe_"+t.iframeCount;t.fallBackSources[t.iframeCount]=this,this.iframe=c()("<iframe></iframe>"),this.iframe.attr("id",a),this.iframe.hide(),i="&",-1===e.indexOf("?")&&(i="?"),this.iframe.attr("src",e+i+"fallback=true&fallback_id="+t.iframeCount+"&"+o),c()("body").append(this.iframe),this.useFallBack=!0,t.iframeCount++}else i="&",-1===e.indexOf("?")&&(i="?"),this.source=new EventSource(e+i+o),this.source.onmessage=function(t){for(var e=0;e<this.typelessListeners.length;e++)this.typelessListeners[e](JSON.parse(t.data))}.bind(this);this.listen("__internal__",function(t){"close"===t&&this.close()}.bind(this))});it.fallBackSources=[],it.iframeCount=0,it.fallBackCallBack=function(t,e,n){it.fallBackSources[t].fallBackCallBack(e,n)},it.prototype={typelessListeners:[],iframe:null,listeners:{},useFallBack:!1,fallBackCallBack:function(t,e){var n;if(!this.closed)if(t){if(void 0!==this.listeners.done)for(n=0;n<this.listeners[t].length;n++)this.listeners[t][n](e)}else for(n=0;n<this.typelessListeners.length;n++)this.typelessListeners[n](e)},lastLength:0,listen:function(t,e){e&&e.call&&(t?this.useFallBack?(this.listeners[t]||(this.listeners[t]=[]),this.listeners[t].push(e)):this.source.addEventListener(t,(function(t){void 0!==t.data?e(JSON.parse(t.data)):e("")}),!1):this.typelessListeners.push(e))},close:function(){this.closed=!0,void 0!==this.source&&this.source.close()}};var ot=it,at=i(42515),st=i(25108),lt=null,ut=null,ct=function(t){if(lt){var e=lt;lt.trigger(new(c().Event)("beforeHide")),lt.slideUp(50,(function(){e.trigger(new(c().Event)("afterHide")),t&&t.apply(this,arguments)}))}c()(".menutoggle").attr("aria-expanded",!1),ut&&ut.attr("aria-expanded",!1),c()(".openedMenu").removeClass("openedMenu"),lt=null,ut=null},ft=!!window._oc_isadmin,dt=i(40202),ht=i.n(dt),pt=i(31352),mt={load:pt.XJ,register:pt.z2,_unregister:pt.ET,translate:pt.Iu,translatePlural:pt.uN};ht().registerHelper("t",(function(t,e){return(0,pt.Iu)(t,e)}));var gt={startSaving:function(e){this.startAction(e,t("core","Saving …"))},startAction:function(t,e){c()(t).text(e).removeClass("success").removeClass("error").stop(!0,!0).show()},finishedSaving:function(t,e){this.finishedAction(t,e)},finishedAction:function(t,e){"success"===e.status?this.finishedSuccess(t,e.data.message):this.finishedError(t,e.data.message)},finishedSuccess:function(t,e){c()(t).text(e).addClass("success").removeClass("error").stop(!0,!0).delay(3e3).fadeOut(900).show()},finishedError:function(t,e){c()(t).text(e).addClass("error").removeClass("success").show()}},vt=i(30381),yt=i.n(vt),bt={callback:null,pageLoadTime:null,init:function(){c()(".password-confirm-required").on("click",l.default.bind(this.requirePasswordConfirmation,this)),this.pageLoadTime=yt().now()},requiresPasswordConfirmation:function(){var t=this.pageLoadTime-1e3*window.nc_pageLoad,e=yt().now()-(t+1e3*window.nc_lastLogin);return window.backendAllowsPasswordConfirmation&&e>18e5},requirePasswordConfirmation:function(e,n,r){n=void 0!==n?n:{};var i={title:t("core","Authentication required"),text:t("core","This action requires you to confirm your password"),confirm:t("core","Confirm"),label:t("core","Password"),error:""},o=l.default.extend(i,n),a=this;this.requiresPasswordConfirmation()&&oe.dialogs.prompt(o.text,o.title,(function(t,e){t&&""!==e?a._confirmPassword(e,o):l.default.isFunction(r)&&r()}),!0,o.label,!0).then((function(){var t=c()(".oc-dialog:visible");if(t.find(".ui-icon").remove(),t.addClass("password-confirmation"),""!==o.error){var e=c()("<p></p>").addClass("msg warning").text(o.error);t.find(".oc-dialog-content").append(e)}var n=t.find(".oc-dialog-buttonrow");n.addClass("aside");var r=n.find("button");r.eq(0).hide(),r.eq(1).text(o.confirm)})),this.callback=e},_confirmPassword:function(e,n){var r=this;c().ajax({url:(0,g.generateUrl)("/login/confirm"),data:{password:e},type:"POST",success:function(t){window.nc_lastLogin=t.lastLogin,l.default.isFunction(r.callback)&&r.callback()},error:function(){n.error=t("core","Failed to authenticate, try again"),oe.PasswordConfirmation.requirePasswordConfirmation(r.callback,n)}})}},wt=window._theme||{},xt={_handlers:[],_pushState:function(t,e,n){var r;if(r="string"==typeof t?t:oe.buildQueryString(t),window.history.pushState){if(e=e||location.pathname+"?"+r,navigator.userAgent.toLowerCase().indexOf("firefox")>-1&&parseInt(navigator.userAgent.split("/").pop())<51)for(var i,o=document.querySelectorAll('[fill^="url(#"], [stroke^="url(#"], [filter^="url(#invert"]'),a=0,s=o.length;a<s;a++)(i=o[a]).style.fill=i.style.fill,i.style.stroke=i.style.stroke,i.removeAttribute("filter"),i.setAttribute("filter","url(#invert)");n?window.history.replaceState(t,"",e):window.history.pushState(t,"",e)}else window.location.hash="?"+r,this._cancelPop=!0},pushState:function(t,e){this._pushState(t,e,!1)},replaceState:function(t,e){this._pushState(t,e,!0)},addOnPopStateHandler:function(t){this._handlers.push(t)},_parseHashQuery:function(){var t=window.location.hash,e=t.indexOf("?");return e>=0?t.substr(e+1):t.length?t.substr(1):""},_decodeQuery:function(t){return t.replace(/\+/g," ")},parseUrlQuery:function(){var t,e=this._parseHashQuery();return e&&(t=oe.parseQueryString(this._decodeQuery(e))),(t=l.default.extend(t||{},oe.parseQueryString(this._decodeQuery(location.search))))||{}},_onPopState:function(t){var e;if(this._cancelPop)this._cancelPop=!1;else if(this._handlers.length){e=t&&t.state,l.default.isString(e)?e=oe.parseQueryString(e):e||(e=this.parseUrlQuery()||{});for(var n=0;n<this._handlers.length;n++)this._handlers[n](e)}}},At=i(77958),_t=i(17499);i(62520),i(14596),i(26721),(t=>{null===t?(0,_t.IY)().setApp("files").build():(0,_t.IY)().setApp("files").setUid(t.uid).build()})((0,At.ts)());const Ct=["B","KB","MB","GB","TB","PB"],kt=["B","KiB","MiB","GiB","TiB","PiB"];var Pt=(t=>(t.DEFAULT="default",t.HIDDEN="hidden",t))(Pt||{}),Et=(t=>(t[t.NONE=0]="NONE",t[t.CREATE=4]="CREATE",t[t.READ=1]="READ",t[t.UPDATE=2]="UPDATE",t[t.DELETE=8]="DELETE",t[t.SHARE=16]="SHARE",t[t.ALL=31]="ALL",t))(Et||{}),Ot=(t=>(t.Folder="folder",t.File="file",t))(Ot||{});(0,g.generateRemoteUrl)("dav");var jt={};!function(t){const e=":A-Za-z_\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD",n="["+e+"]["+e+"\\-.\\d\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*",r=new RegExp("^"+n+"$");t.isExist=function(t){return typeof t<"u"},t.isEmptyObject=function(t){return 0===Object.keys(t).length},t.merge=function(t,e,n){if(e){const r=Object.keys(e),i=r.length;for(let o=0;o<i;o++)t[r[o]]="strict"===n?[e[r[o]]]:e[r[o]]}},t.getValue=function(e){return t.isExist(e)?e:""},t.isName=function(t){const e=r.exec(t);return!(null===e||typeof e>"u")},t.getAllMatches=function(t,e){const n=[];let r=e.exec(t);for(;r;){const i=[];i.startIndex=e.lastIndex-r[0].length;const o=r.length;for(let t=0;t<o;t++)i.push(r[t]);n.push(i),r=e.exec(t)}return n},t.nameRegexp=n}(jt);new RegExp("(\\s*)([^\\s=]+)(\\s*=)?(\\s*(['\"])(([\\s\\S])*?)\\5)?","g");var Tt={};const Nt={preserveOrder:!1,attributeNamePrefix:"@_",attributesGroupName:!1,textNodeName:"#text",ignoreAttributes:!0,removeNSPrefix:!1,allowBooleanAttributes:!1,parseTagValue:!0,parseAttributeValue:!1,trimValues:!0,cdataPropName:!1,numberParseOptions:{hex:!0,leadingZeros:!0,eNotation:!0},tagValueProcessor:function(t,e){return e},attributeValueProcessor:function(t,e){return e},stopNodes:[],alwaysCreateTextNode:!1,isArray:()=>!1,commentPropName:!1,unpairedTags:[],processEntities:!0,htmlEntities:!1,ignoreDeclaration:!1,ignorePiTags:!1,transformTagName:!1,transformAttributeName:!1,updateTag:function(t,e,n){return t}};Tt.buildOptions=function(t){return Object.assign({},Nt,t)},Tt.defaultOptions=Nt,!Number.parseInt&&window.parseInt&&(Number.parseInt=window.parseInt),!Number.parseFloat&&window.parseFloat&&(Number.parseFloat=window.parseFloat);"<((!\\[CDATA\\[([\\s\\S]*?)(]]>))|((NAME:)?(NAME))([^>]*)>|((\\/)(NAME)\\s*>))([^<]*)".replace(/NAME/g,jt.nameRegexp),new RegExp("([^\\s=]+)\\s*(=\\s*(['\"])([\\s\\S]*?)\\3)?","gm");var St={};function Lt(t,e,n){let r;const i={};for(let o=0;o<t.length;o++){const a=t[o],s=It(a);let l="";if(l=void 0===n?s:n+"."+s,s===e.textNodeName)void 0===r?r=a[s]:r+=""+a[s];else{if(void 0===s)continue;if(a[s]){let t=Lt(a[s],e,l);const n=$t(t,e);a[":@"]?Ft(t,a[":@"],l,e):1!==Object.keys(t).length||void 0===t[e.textNodeName]||e.alwaysCreateTextNode?0===Object.keys(t).length&&(e.alwaysCreateTextNode?t[e.textNodeName]="":t=""):t=t[e.textNodeName],void 0!==i[s]&&i.hasOwnProperty(s)?(Array.isArray(i[s])||(i[s]=[i[s]]),i[s].push(t)):e.isArray(s,l,n)?i[s]=[t]:i[s]=t}}}return"string"==typeof r?r.length>0&&(i[e.textNodeName]=r):void 0!==r&&(i[e.textNodeName]=r),i}function It(t){const e=Object.keys(t);for(let t=0;t<e.length;t++){const n=e[t];if(":@"!==n)return n}}function Ft(t,e,n,r){if(e){const i=Object.keys(e),o=i.length;for(let a=0;a<o;a++){const o=i[a];r.isArray(o,n+"."+o,!0,!0)?t[o]=[e[o]]:t[o]=e[o]}}}function $t(t,e){const{textNodeName:n}=e,r=Object.keys(t).length;return!(0!==r&&(1!==r||!t[n]&&"boolean"!=typeof t[n]&&0!==t[n]))}St.prettify=function(t,e){return Lt(t,e)};const{buildOptions:Rt}=Tt,{prettify:Ut}=St;function Mt(t,e,n,r){let i="",o=!1;for(let a=0;a<t.length;a++){const s=t[a],l=Bt(s);let u="";if(u=0===n.length?l:`${n}.${l}`,l===e.textNodeName){let t=s[l];Dt(u,e)||(t=e.tagValueProcessor(l,t),t=Ht(t,e)),o&&(i+=r),i+=t,o=!1;continue}if(l===e.cdataPropName){o&&(i+=r),i+=`<![CDATA[${s[l][0][e.textNodeName]}]]>`,o=!1;continue}if(l===e.commentPropName){i+=r+`\x3c!--${s[l][0][e.textNodeName]}--\x3e`,o=!0;continue}if("?"===l[0]){const t=zt(s[":@"],e),n="?xml"===l?"":r;let a=s[l][0][e.textNodeName];a=0!==a.length?" "+a:"",i+=n+`<${l}${a}${t}?>`,o=!0;continue}let c=r;""!==c&&(c+=e.indentBy);const f=r+`<${l}${zt(s[":@"],e)}`,d=Mt(s[l],e,u,c);-1!==e.unpairedTags.indexOf(l)?e.suppressUnpairedNode?i+=f+">":i+=f+"/>":d&&0!==d.length||!e.suppressEmptyNode?d&&d.endsWith(">")?i+=f+`>${d}${r}</${l}>`:(i+=f+">",d&&""!==r&&(d.includes("/>")||d.includes("</"))?i+=r+e.indentBy+d+r:i+=d,i+=`</${l}>`):i+=f+"/>",o=!0}return i}function Bt(t){const e=Object.keys(t);for(let t=0;t<e.length;t++){const n=e[t];if(":@"!==n)return n}}function zt(t,e){let n="";if(t&&!e.ignoreAttributes)for(let r in t){let i=e.attributeValueProcessor(r,t[r]);i=Ht(i,e),!0===i&&e.suppressBooleanAttributes?n+=` ${r.substr(e.attributeNamePrefix.length)}`:n+=` ${r.substr(e.attributeNamePrefix.length)}="${i}"`}return n}function Dt(t,e){let n=(t=t.substr(0,t.length-e.textNodeName.length-1)).substr(t.lastIndexOf(".")+1);for(let r in e.stopNodes)if(e.stopNodes[r]===t||e.stopNodes[r]==="*."+n)return!0;return!1}function Ht(t,e){if(t&&t.length>0&&e.processEntities)for(let n=0;n<e.entities.length;n++){const r=e.entities[n];t=t.replace(r.regex,r.val)}return t}const qt=function(t,e){let n="";return e.format&&e.indentBy.length>0&&(n="\n"),Mt(t,e,"",n)},Vt={attributeNamePrefix:"@_",attributesGroupName:!1,textNodeName:"#text",ignoreAttributes:!0,cdataPropName:!1,format:!1,indentBy:" ",suppressEmptyNode:!1,suppressUnpairedNode:!0,suppressBooleanAttributes:!0,tagValueProcessor:function(t,e){return e},attributeValueProcessor:function(t,e){return e},preserveOrder:!1,commentPropName:!1,unpairedTags:[],entities:[{regex:new RegExp("&","g"),val:"&amp;"},{regex:new RegExp(">","g"),val:"&gt;"},{regex:new RegExp("<","g"),val:"&lt;"},{regex:new RegExp("'","g"),val:"&apos;"},{regex:new RegExp('"',"g"),val:"&quot;"}],processEntities:!0,stopNodes:[],oneListGroup:!1};function Yt(t){this.options=Object.assign({},Vt,t),this.options.ignoreAttributes||this.options.attributesGroupName?this.isAttribute=function(){return!1}:(this.attrPrefixLen=this.options.attributeNamePrefix.length,this.isAttribute=Zt),this.processTextOrObjNode=Gt,this.options.format?(this.indentate=Kt,this.tagEndChar=">\n",this.newLine="\n"):(this.indentate=function(){return""},this.tagEndChar=">",this.newLine="")}function Gt(t,e,n){const r=this.j2x(t,n+1);return void 0!==t[this.options.textNodeName]&&1===Object.keys(t).length?this.buildTextValNode(t[this.options.textNodeName],e,r.attrStr,n):this.buildObjectNode(r.val,e,r.attrStr,n)}function Kt(t){return this.options.indentBy.repeat(t)}function Zt(t){return!(!t.startsWith(this.options.attributeNamePrefix)||t===this.options.textNodeName)&&t.substr(this.attrPrefixLen)}Yt.prototype.build=function(t){return this.options.preserveOrder?qt(t,this.options):(Array.isArray(t)&&this.options.arrayNodeName&&this.options.arrayNodeName.length>1&&(t={[this.options.arrayNodeName]:t}),this.j2x(t,0).val)},Yt.prototype.j2x=function(t,e){let n="",r="";for(let i in t)if(typeof t[i]>"u")this.isAttribute(i)&&(r+="");else if(null===t[i])this.isAttribute(i)?r+="":"?"===i[0]?r+=this.indentate(e)+"<"+i+"?"+this.tagEndChar:r+=this.indentate(e)+"<"+i+"/"+this.tagEndChar;else if(t[i]instanceof Date)r+=this.buildTextValNode(t[i],i,"",e);else if("object"!=typeof t[i]){const o=this.isAttribute(i);if(o)n+=this.buildAttrPairStr(o,""+t[i]);else if(i===this.options.textNodeName){let e=this.options.tagValueProcessor(i,""+t[i]);r+=this.replaceEntitiesValue(e)}else r+=this.buildTextValNode(t[i],i,"",e)}else if(Array.isArray(t[i])){const n=t[i].length;let o="";for(let a=0;a<n;a++){const n=t[i][a];typeof n>"u"||(null===n?"?"===i[0]?r+=this.indentate(e)+"<"+i+"?"+this.tagEndChar:r+=this.indentate(e)+"<"+i+"/"+this.tagEndChar:"object"==typeof n?this.options.oneListGroup?o+=this.j2x(n,e+1).val:o+=this.processTextOrObjNode(n,i,e):o+=this.buildTextValNode(n,i,"",e))}this.options.oneListGroup&&(o=this.buildObjectNode(o,i,"",e)),r+=o}else if(this.options.attributesGroupName&&i===this.options.attributesGroupName){const e=Object.keys(t[i]),r=e.length;for(let o=0;o<r;o++)n+=this.buildAttrPairStr(e[o],""+t[i][e[o]])}else r+=this.processTextOrObjNode(t[i],i,e);return{attrStr:n,val:r}},Yt.prototype.buildAttrPairStr=function(t,e){return e=this.options.attributeValueProcessor(t,""+e),e=this.replaceEntitiesValue(e),this.options.suppressBooleanAttributes&&"true"===e?" "+t:" "+t+'="'+e+'"'},Yt.prototype.buildObjectNode=function(t,e,n,r){if(""===t)return"?"===e[0]?this.indentate(r)+"<"+e+n+"?"+this.tagEndChar:this.indentate(r)+"<"+e+n+this.closeTag(e)+this.tagEndChar;{let i="</"+e+this.tagEndChar,o="";return"?"===e[0]&&(o="?",i=""),!n&&""!==n||-1!==t.indexOf("<")?!1!==this.options.commentPropName&&e===this.options.commentPropName&&0===o.length?this.indentate(r)+`\x3c!--${t}--\x3e`+this.newLine:this.indentate(r)+"<"+e+n+o+this.tagEndChar+t+this.indentate(r)+i:this.indentate(r)+"<"+e+n+o+">"+t+i}},Yt.prototype.closeTag=function(t){let e="";return-1!==this.options.unpairedTags.indexOf(t)?this.options.suppressUnpairedNode||(e="/"):e=this.options.suppressEmptyNode?"/":`></${t}`,e},Yt.prototype.buildTextValNode=function(t,e,n,r){if(!1!==this.options.cdataPropName&&e===this.options.cdataPropName)return this.indentate(r)+`<![CDATA[${t}]]>`+this.newLine;if(!1!==this.options.commentPropName&&e===this.options.commentPropName)return this.indentate(r)+`\x3c!--${t}--\x3e`+this.newLine;if("?"===e[0])return this.indentate(r)+"<"+e+n+"?"+this.tagEndChar;{let i=this.options.tagValueProcessor(e,t);return i=this.replaceEntitiesValue(i),""===i?this.indentate(r)+"<"+e+n+this.closeTag(e)+this.tagEndChar:this.indentate(r)+"<"+e+n+">"+i+"</"+e+this.tagEndChar}},Yt.prototype.replaceEntitiesValue=function(t){if(t&&t.length>0&&this.options.processEntities)for(let e=0;e<this.options.entities.length;e++){const n=this.options.entities[e];t=t.replace(n.regex,n.val)}return t};var Wt=i(25108);function Jt(t){for(var e,n=[],r=0,i=-1,o=0;r<t.length;){e=t.charAt(r);var a=!o&&"."===e||e>="0"&&e<="9";a!==o&&(n[++i]="",o=a),n[i]+=e,r++}return n}var Xt={History:xt,humanFileSize:function(t,e=!1,n=!1){"string"==typeof t&&(t=Number(t));let r=t>0?Math.floor(Math.log(t)/Math.log(n?1024:1e3)):0;r=Math.min((n?kt.length:Ct.length)-1,r);const i=n?kt[r]:Ct[r];let o=(t/Math.pow(n?1024:1e3,r)).toFixed(1);return!0===e&&0===r?("0.0"!==o?"< 1 ":"0 ")+(n?kt[1]:Ct[1]):(o=r<2?parseFloat(o).toFixed(0):parseFloat(o).toLocaleString((0,pt.aj)()),o+" "+i)},computerFileSize:function(t){if("string"!=typeof t)return null;var e=t.toLowerCase().trim(),n=null,r=e.match(/^[\s+]?([0-9]*)(\.([0-9]+))?( +)?([kmgtp]?b?)$/i);return null===r?null:(n=parseFloat(e),isFinite(n)?(r[5]&&(n*={b:1,k:1024,kb:1024,mb:1048576,m:1048576,gb:1073741824,g:1073741824,tb:1099511627776,t:1099511627776,pb:0x4000000000000,p:0x4000000000000}[r[5]]),n=Math.round(n)):null)},formatDate:function(t,e){return void 0===window.TESTING&&oe.debug&&Wt.warn("OC.Util.formatDate is deprecated and will be removed in Nextcloud 21. See @nextcloud/moment"),e=e||"LLL",yt()(t).format(e)},relativeModifiedDate:function(e){void 0===window.TESTING&&oe.debug&&Wt.warn("OC.Util.relativeModifiedDate is deprecated and will be removed in Nextcloud 21. See @nextcloud/moment");var n=yt()().diff(yt()(e));return n>=0&&n<45e3?t("core","seconds ago"):yt()(e).fromNow()},getScrollBarWidth:function(){if(this._scrollBarWidth)return this._scrollBarWidth;var t=document.createElement("p");t.style.width="100%",t.style.height="200px";var e=document.createElement("div");e.style.position="absolute",e.style.top="0px",e.style.left="0px",e.style.visibility="hidden",e.style.width="200px",e.style.height="150px",e.style.overflow="hidden",e.appendChild(t),document.body.appendChild(e);var n=t.offsetWidth;e.style.overflow="scroll";var r=t.offsetWidth;return n===r&&(r=e.clientWidth),document.body.removeChild(e),this._scrollBarWidth=n-r,this._scrollBarWidth},stripTime:function(t){return new Date(t.getFullYear(),t.getMonth(),t.getDate())},naturalSortCompare:function(t,e){var n,r=Jt(t),i=Jt(e);for(n=0;r[n]&&i[n];n++)if(r[n]!==i[n]){var o=Number(r[n]),a=Number(i[n]);return o==r[n]&&a==i[n]?o-a:r[n].localeCompare(i[n],oe.getLanguage())}return r.length-i.length},waitFor:function(t,e){!function n(){!0!==t()&&setTimeout(n,e)}()},isCookieSetToValue:function(t,e){for(var n=document.cookie.split(";"),r=0;r<n.length;r++){var i=n[r].split("=");if(i[0].trim()===t&&i[1].trim()===e)return!0}return!1}},Qt=window._oc_debug,te=window._oc_webroot;if(void 0===te){var ee=(te=location.pathname).indexOf("/index.php/");te=-1!==ee?te.substr(0,ee):te.substr(0,te.lastIndexOf("/"))}var ne,re=te,ie=i(25108),oe={coreApps:["","admin","log","core/search","core","3rdparty"],menuSpeed:50,PERMISSION_ALL:31,PERMISSION_CREATE:4,PERMISSION_DELETE:8,PERMISSION_NONE:0,PERMISSION_READ:1,PERMISSION_SHARE:16,PERMISSION_UPDATE:2,TAG_FAVORITE:"_$!<Favorite>!$_",fileIsBlacklisted:function(t){return!!t.match(I.blacklist_files_regex)},Apps:m,AppConfig:b,appConfig:y,appswebroots:w,Backbone:S,ContactsMenu:D,config:I,currentUser:V,dialogs:et,EventSource:ot,getCurrentUser:function(){return{uid:V,displayName:q}},isUserAdmin:function(){return ft},L10N:mt,_ajaxConnectionLostHandler:p,_processAjaxError:function(t){(0!==t.status||"abort"!==t.statusText&&"timeout"!==t.statusText&&!oe._reloadCalled)&&(l.default.contains([302,303,307,401],t.status)&&oe.currentUser?setTimeout((function(){if(!oe._userIsNavigatingAway&&!oe._reloadCalled){var t=0,e=setInterval((function(){h.showUpdate(n("core","Problem loading page, reloading in %n second","Problem loading page, reloading in %n seconds",5-t)),t>=5&&(clearInterval(e),oe.reload()),t++}),1e3);oe._reloadCalled=!0}}),100):0===t.status&&setTimeout((function(){oe._userIsNavigatingAway||oe._reloadCalled||oe._ajaxConnectionLostHandler()}),100))},registerXHRForErrorProcessing:function(t){t.addEventListener&&(t.addEventListener("load",(function(){4===t.readyState&&(t.status>=200&&t.status<300||304===t.status||c()(document).trigger(new(c().Event)("ajaxError"),t))})),t.addEventListener("error",(function(){c()(document).trigger(new(c().Event)("ajaxError"),t)})))},getCapabilities:function(){return OC.debug&&st.warn("OC.getCapabilities is deprecated and will be removed in Nextcloud 21. See @nextcloud/capabilities"),(0,at.getCapabilities)()},hideMenus:ct,registerMenu:function(t,e,n,r){e.addClass("menu");var i="A"===t.prop("tagName")||"BUTTON"===t.prop("tagName");t.on(i?"click.menu":"click.menu keyup.menu",(function(i){i.preventDefault(),i.key&&"Enter"!==i.key||(e.is(lt)?ct():(lt&&ct(),!0===r&&e.parent().addClass("openedMenu"),t.attr("aria-expanded",!0),e.slideToggle(50,n),lt=e,ut=t))}))},showMenu:function(t,e,n){e.is(lt)||(ct(),lt=e,ut=t,e.trigger(new(c().Event)("beforeShow")),e.show(),e.trigger(new(c().Event)("afterShow")),l.default.isFunction(n)&&n())},unregisterMenu:function(t,e){e.is(lt)&&ct(),t.off("click.menu").removeClass("menutoggle"),e.removeClass("menu")},basename:L.EZ,encodePath:L.Ec,dirname:L.XX,isSamePath:L.Mg,joinPaths:L.RQ,getHost:function(){return window.location.host},getHostName:function(){return window.location.hostname},getPort:function(){return window.location.port},getProtocol:function(){return window.location.protocol.split(":")[0]},getCanonicalLocale:pt.aj,getLocale:pt.Kd,getLanguage:pt.G3,buildQueryString:function(t){return t?c().map(t,(function(t,e){var n=encodeURIComponent(e);return null!=t&&(n+="="+encodeURIComponent(t)),n})).join("&"):""},parseQueryString:function(t){var e,n,r,i={};if(!t)return null;(e=t.indexOf("?"))>=0&&(t=t.substr(e+1));for(var o=t.replace(/\+/g,"%20").split("&"),a=0;a<o.length;a++){var s=o[a];(n=(e=s.indexOf("="))>=0?[s.substr(0,e),s.substr(e+1)]:[s]).length&&(r=decodeURIComponent(n[0]))&&(i[r]=n.length>1?decodeURIComponent(n[1]):null)}return i},msg:gt,Notification:h,PasswordConfirmation:bt,Plugins:{_plugins:{},register:function(t,e){var n=this._plugins[t];n||(n=this._plugins[t]=[]),n.push(e)},getPlugins:function(t){return this._plugins[t]||[]},attach:function(t,e,n){for(var r=this.getPlugins(t),i=0;i<r.length;i++)r[i].attach&&r[i].attach(e,n)},detach:function(t,e,n){for(var r=this.getPlugins(t),i=0;i<r.length;i++)r[i].detach&&r[i].detach(e,n)}},theme:wt,Util:Xt,debug:Qt,filePath:g.generateFilePath,generateUrl:g.generateUrl,get:(ne=window,function(t){for(var e=t.split("."),n=e.pop(),r=0;r<e.length;r++)if(!(ne=ne[e[r]]))return!1;return ne[n]}),set:function(t){return function(e,n){for(var r=e.split("."),i=r.pop(),o=0;o<r.length;o++)t[r[o]]||(t[r[o]]={}),t=t[r[o]];return t[i]=n,n}}(window),getRootPath:g.getRootUrl,imagePath:g.imagePath,redirect:function(t){window.location=t},reload:function(){window.location.reload()},requestToken:rt(),linkTo:g.linkTo,linkToOCS:function(t,e){return(0,g.generateOcsUrl)(t,{},{ocsVersion:e||1})+"/"},linkToRemote:g.generateRemoteUrl,linkToRemoteBase:function(t){return(0,g.getRootUrl)()+"/remote.php/"+t},webroot:re};(0,s.Ld)("csrf-token-update",(function(t){OC.requestToken=t.token,ie.info("OC.requestToken changed",t.token)}));var ae=i(43554);const se="%[a-f0-9]{2}",le=new RegExp("("+se+")|([^%]+?)","gi"),ue=new RegExp("("+se+")+","gi");function ce(t,e){try{return[decodeURIComponent(t.join(""))]}catch{}if(1===t.length)return t;e=e||1;const n=t.slice(0,e),r=t.slice(e);return Array.prototype.concat.call([],ce(n),ce(r))}function fe(t){try{return decodeURIComponent(t)}catch{let e=t.match(le)||[];for(let n=1;n<e.length;n++)e=(t=ce(e,n).join("")).match(le)||[];return t}}function de(t,e){if("string"!=typeof t||"string"!=typeof e)throw new TypeError("Expected the arguments to be of type `string`");if(""===t||""===e)return[];const n=t.indexOf(e);return-1===n?[]:[t.slice(0,n),t.slice(n+e.length)]}function he(t,e){const n={};if(Array.isArray(e))for(const r of e){const e=Object.getOwnPropertyDescriptor(t,r);e?.enumerable&&Object.defineProperty(n,r,e)}else for(const r of Reflect.ownKeys(t)){const i=Object.getOwnPropertyDescriptor(t,r);i.enumerable&&e(r,t[r],t)&&Object.defineProperty(n,r,i)}return n}const pe=t=>null==t,me=t=>encodeURIComponent(t).replace(/[!'()*]/g,(t=>`%${t.charCodeAt(0).toString(16).toUpperCase()}`)),ge=Symbol("encodeFragmentIdentifier");function ve(t){if("string"!=typeof t||1!==t.length)throw new TypeError("arrayFormatSeparator must be single character string")}function ye(t,e){return e.encode?e.strict?me(t):encodeURIComponent(t):t}function be(t,e){return e.decode?function(t){if("string"!=typeof t)throw new TypeError("Expected `encodedURI` to be of type `string`, got `"+typeof t+"`");try{return decodeURIComponent(t)}catch{return function(t){const e={"%FE%FF":"��","%FF%FE":"��"};let n=ue.exec(t);for(;n;){try{e[n[0]]=decodeURIComponent(n[0])}catch{const t=fe(n[0]);t!==n[0]&&(e[n[0]]=t)}n=ue.exec(t)}e["%C2"]="�";const r=Object.keys(e);for(const n of r)t=t.replace(new RegExp(n,"g"),e[n]);return t}(t)}}(t):t}function we(t){return Array.isArray(t)?t.sort():"object"==typeof t?we(Object.keys(t)).sort(((t,e)=>Number(t)-Number(e))).map((e=>t[e])):t}function xe(t){const e=t.indexOf("#");return-1!==e&&(t=t.slice(0,e)),t}function Ae(t,e){return e.parseNumbers&&!Number.isNaN(Number(t))&&"string"==typeof t&&""!==t.trim()?t=Number(t):!e.parseBooleans||null===t||"true"!==t.toLowerCase()&&"false"!==t.toLowerCase()||(t="true"===t.toLowerCase()),t}function _e(t){const e=(t=xe(t)).indexOf("?");return-1===e?"":t.slice(e+1)}function Ce(t,e){ve((e={decode:!0,sort:!0,arrayFormat:"none",arrayFormatSeparator:",",parseNumbers:!1,parseBooleans:!1,...e}).arrayFormatSeparator);const n=function(t){let e;switch(t.arrayFormat){case"index":return(t,n,r)=>{e=/\[(\d*)]$/.exec(t),t=t.replace(/\[\d*]$/,""),e?(void 0===r[t]&&(r[t]={}),r[t][e[1]]=n):r[t]=n};case"bracket":return(t,n,r)=>{e=/(\[])$/.exec(t),t=t.replace(/\[]$/,""),e?void 0!==r[t]?r[t]=[...r[t],n]:r[t]=[n]:r[t]=n};case"colon-list-separator":return(t,n,r)=>{e=/(:list)$/.exec(t),t=t.replace(/:list$/,""),e?void 0!==r[t]?r[t]=[...r[t],n]:r[t]=[n]:r[t]=n};case"comma":case"separator":return(e,n,r)=>{const i="string"==typeof n&&n.includes(t.arrayFormatSeparator),o="string"==typeof n&&!i&&be(n,t).includes(t.arrayFormatSeparator);n=o?be(n,t):n;const a=i||o?n.split(t.arrayFormatSeparator).map((e=>be(e,t))):null===n?n:be(n,t);r[e]=a};case"bracket-separator":return(e,n,r)=>{const i=/(\[])$/.test(e);if(e=e.replace(/\[]$/,""),!i)return void(r[e]=n?be(n,t):n);const o=null===n?[]:n.split(t.arrayFormatSeparator).map((e=>be(e,t)));void 0!==r[e]?r[e]=[...r[e],...o]:r[e]=o};default:return(t,e,n)=>{void 0!==n[t]?n[t]=[...[n[t]].flat(),e]:n[t]=e}}}(e),r=Object.create(null);if("string"!=typeof t)return r;if(!(t=t.trim().replace(/^[?#&]/,"")))return r;for(const i of t.split("&")){if(""===i)continue;const t=e.decode?i.replace(/\+/g," "):i;let[o,a]=de(t,"=");void 0===o&&(o=t),a=void 0===a?null:["comma","separator","bracket-separator"].includes(e.arrayFormat)?a:be(a,e),n(be(o,e),a,r)}for(const[t,n]of Object.entries(r))if("object"==typeof n&&null!==n)for(const[t,r]of Object.entries(n))n[t]=Ae(r,e);else r[t]=Ae(n,e);return!1===e.sort?r:(!0===e.sort?Object.keys(r).sort():Object.keys(r).sort(e.sort)).reduce(((t,e)=>{const n=r[e];return Boolean(n)&&"object"==typeof n&&!Array.isArray(n)?t[e]=we(n):t[e]=n,t}),Object.create(null))}function ke(t,e){if(!t)return"";ve((e={encode:!0,strict:!0,arrayFormat:"none",arrayFormatSeparator:",",...e}).arrayFormatSeparator);const n=n=>e.skipNull&&pe(t[n])||e.skipEmptyString&&""===t[n],r=function(t){switch(t.arrayFormat){case"index":return e=>(n,r)=>{const i=n.length;return void 0===r||t.skipNull&&null===r||t.skipEmptyString&&""===r?n:null===r?[...n,[ye(e,t),"[",i,"]"].join("")]:[...n,[ye(e,t),"[",ye(i,t),"]=",ye(r,t)].join("")]};case"bracket":return e=>(n,r)=>void 0===r||t.skipNull&&null===r||t.skipEmptyString&&""===r?n:null===r?[...n,[ye(e,t),"[]"].join("")]:[...n,[ye(e,t),"[]=",ye(r,t)].join("")];case"colon-list-separator":return e=>(n,r)=>void 0===r||t.skipNull&&null===r||t.skipEmptyString&&""===r?n:null===r?[...n,[ye(e,t),":list="].join("")]:[...n,[ye(e,t),":list=",ye(r,t)].join("")];case"comma":case"separator":case"bracket-separator":{const e="bracket-separator"===t.arrayFormat?"[]=":"=";return n=>(r,i)=>void 0===i||t.skipNull&&null===i||t.skipEmptyString&&""===i?r:(i=null===i?"":i,0===r.length?[[ye(n,t),e,ye(i,t)].join("")]:[[r,ye(i,t)].join(t.arrayFormatSeparator)])}default:return e=>(n,r)=>void 0===r||t.skipNull&&null===r||t.skipEmptyString&&""===r?n:null===r?[...n,ye(e,t)]:[...n,[ye(e,t),"=",ye(r,t)].join("")]}}(e),i={};for(const[e,r]of Object.entries(t))n(e)||(i[e]=r);const o=Object.keys(i);return!1!==e.sort&&o.sort(e.sort),o.map((n=>{const i=t[n];return void 0===i?"":null===i?ye(n,e):Array.isArray(i)?0===i.length&&"bracket-separator"===e.arrayFormat?ye(n,e)+"[]":i.reduce(r(n),[]).join("&"):ye(n,e)+"="+ye(i,e)})).filter((t=>t.length>0)).join("&")}function Pe(t,e){e={decode:!0,...e};let[n,r]=de(t,"#");return void 0===n&&(n=t),{url:n?.split("?")?.[0]??"",query:Ce(_e(t),e),...e&&e.parseFragmentIdentifier&&r?{fragmentIdentifier:be(r,e)}:{}}}function Ee(t,e){e={encode:!0,strict:!0,[ge]:!0,...e};const n=xe(t.url).split("?")[0]||"";let r=ke({...Ce(_e(t.url),{sort:!1}),...t.query},e);r&&(r=`?${r}`);let i=function(t){let e="";const n=t.indexOf("#");return-1!==n&&(e=t.slice(n)),e}(t.url);if(t.fragmentIdentifier){const r=new URL(n);r.hash=t.fragmentIdentifier,i=e[ge]?r.hash:`#${t.fragmentIdentifier}`}return`${n}${r}${i}`}function Oe(t,e,n){n={parseFragmentIdentifier:!0,[ge]:!1,...n};const{url:r,query:i,fragmentIdentifier:o}=Pe(t,n);return Ee({url:r,query:he(i,e),fragmentIdentifier:o},n)}function je(t,e,n){return Oe(t,Array.isArray(e)?t=>!e.includes(t):(t,n)=>!e(t,n),n)}var Te=o,Ne=i(22660),Se=i.n(Ne),Le=i(10204),Ie=i.n(Le),Fe=i(57290),$e=i.n(Fe),Re=i(10861),Ue=i.n(Re),Me={name:"LoginButton",components:{ArrowRight:i(39429).default,NcButton:Ue()},props:{value:{type:String,default:t("core","Log in")},valueLoading:{type:String,default:t("core","Logging in …")},loading:{type:Boolean,required:!0},invertedColors:{type:Boolean,default:!1}}},Be=i(93379),ze=i.n(Be),De=i(7795),He=i.n(De),qe=i(90569),Ve=i.n(qe),Ye=i(3565),Ge=i.n(Ye),Ke=i(19216),Ze=i.n(Ke),We=i(44589),Je=i.n(We),Xe=i(76515),Qe={};Qe.styleTagTransform=Je(),Qe.setAttributes=Ge(),Qe.insert=Ve().bind(null,"head"),Qe.domAPI=He(),Qe.insertStyleElement=Ze(),ze()(Xe.Z,Qe),Xe.Z&&Xe.Z.locals&&Xe.Z.locals;var tn=i(51900),en=(0,tn.Z)(Me,(function(){var t=this,e=t._self._c;return e("NcButton",{attrs:{type:"primary","native-type":"submit",wide:!0},on:{click:function(e){return t.$emit("click")}},scopedSlots:t._u([{key:"icon",fn:function(){return[t.loading?e("div",{staticClass:"submit-wrapper__icon icon-loading-small-dark"}):e("ArrowRight",{staticClass:"submit-wrapper__icon"})]},proxy:!0}])},[t._v("\n\t"+t._s(t.loading?t.valueLoading:t.value)+"\n\t")])}),[],!1,null,"3fa8511b",null).exports,nn={name:"LoginForm",components:{LoginButton:en,NcPasswordField:Se(),NcTextField:Ie(),NcNoteCard:$e()},props:{username:{type:String,default:""},redirectUrl:{type:[String,Boolean],default:!1},errors:{type:Array,default:function(){return[]}},messages:{type:Array,default:function(){return[]}},throttleDelay:{type:Number,default:0},autoCompleteAllowed:{type:Boolean,default:!0},directLogin:{type:Boolean,default:!1}},data:function(){var e;return{loading:!1,timezone:null===(e=new Intl.DateTimeFormat)||void 0===e||null===(e=e.resolvedOptions())||void 0===e?void 0:e.timeZone,timezoneOffset:-(new Date).getTimezoneOffset()/60,headline:t("core","Log in to {productName}",{productName:OC.theme.name}),user:"",password:""}},computed:{isError:function(){return this.invalidPassword||this.userDisabled||this.throttleDelay>5e3},errorLabel:function(){return this.invalidPassword?t("core","Wrong username or password."):this.userDisabled?t("core","User disabled"):this.throttleDelay>5e3?t("core","We have detected multiple invalid login attempts from your IP. Therefore your next login is throttled up to 30 seconds."):void 0},apacheAuthFailed:function(){return-1!==this.errors.indexOf("apacheAuthFailed")},internalException:function(){return-1!==this.errors.indexOf("internalexception")},invalidPassword:function(){return-1!==this.errors.indexOf("invalidpassword")},userDisabled:function(){return-1!==this.errors.indexOf("userdisabled")},loadingIcon:function(){return(0,g.imagePath)("core","loading-dark.gif")},loginActionUrl:function(){return(0,g.generateUrl)("login")}},mounted:function(){""===this.username?this.$refs.user.$refs.inputField.$refs.input.focus():(this.user=this.username,this.$refs.password.$refs.inputField.$refs.input.focus())},methods:{updateUsername:function(){this.$emit("update:username",this.user)},submit:function(){this.loading=!0,this.$emit("submit")}}},rn=i(70934),on={};on.styleTagTransform=Je(),on.setAttributes=Ge(),on.insert=Ve().bind(null,"head"),on.domAPI=He(),on.insertStyleElement=Ze(),ze()(rn.Z,on),rn.Z&&rn.Z.locals&&rn.Z.locals;var an=(0,tn.Z)(nn,(function(){var t=this,e=t._self._c;return e("form",{ref:"loginForm",staticClass:"login-form",attrs:{method:"post",name:"login",action:t.loginActionUrl},on:{submit:t.submit}},[e("fieldset",{staticClass:"login-form__fieldset",attrs:{"data-login-form":""}},[t.apacheAuthFailed?e("NcNoteCard",{attrs:{title:t.t("core","Server side authentication failed!"),type:"warning"}},[t._v("\n\t\t\t"+t._s(t.t("core","Please contact your administrator."))+"\n\t\t")]):t._e(),t._v(" "),t.messages.length>0?e("NcNoteCard",t._l(t.messages,(function(n,r){return e("div",{key:r},[t._v("\n\t\t\t\t"+t._s(n)),e("br")])})),0):t._e(),t._v(" "),t.internalException?e("NcNoteCard",{class:t.t("core","An internal error occurred."),attrs:{type:"warning"}},[t._v("\n\t\t\t"+t._s(t.t("core","Please try again or contact your administrator."))+"\n\t\t")]):t._e(),t._v(" "),e("div",{staticClass:"hidden",attrs:{id:"message"}},[e("img",{staticClass:"float-spinner",attrs:{alt:"",src:t.loadingIcon}}),t._v(" "),e("span",{attrs:{id:"messageText"}}),t._v(" "),e("div",{staticStyle:{clear:"both"}})]),t._v(" "),e("h2",{staticClass:"login-form__headline",attrs:{"data-login-form-headline":""},domProps:{innerHTML:t._s(t.headline)}}),t._v(" "),e("NcTextField",{ref:"user",class:{shake:t.invalidPassword},attrs:{id:"user",label:t.t("core","Account name or email"),"label-visible":!0,name:"user",value:t.user,autocapitalize:"none",spellchecking:!1,autocomplete:t.autoCompleteAllowed?"username":"off",required:"","data-login-form-input-user":""},on:{"update:value":function(e){t.user=e},change:t.updateUsername}}),t._v(" "),e("NcPasswordField",{ref:"password",class:{shake:t.invalidPassword},attrs:{id:"password",name:"password","label-visible":!0,value:t.password,spellchecking:!1,autocapitalize:"none",autocomplete:t.autoCompleteAllowed?"current-password":"off",label:t.t("core","Password"),"helper-text":t.errorLabel,error:t.isError,"data-login-form-input-password":"",required:""},on:{"update:value":function(e){t.password=e}}}),t._v(" "),e("LoginButton",{attrs:{"data-login-form-submit":"",loading:t.loading}}),t._v(" "),t.redirectUrl?e("input",{attrs:{type:"hidden",name:"redirect_url"},domProps:{value:t.redirectUrl}}):t._e(),t._v(" "),e("input",{attrs:{type:"hidden",name:"timezone"},domProps:{value:t.timezone}}),t._v(" "),e("input",{attrs:{type:"hidden",name:"timezone_offset"},domProps:{value:t.timezoneOffset}}),t._v(" "),e("input",{attrs:{type:"hidden",name:"requesttoken"},domProps:{value:t.OC.requestToken}}),t._v(" "),t.directLogin?e("input",{attrs:{type:"hidden",name:"direct",value:"1"}}):t._e()],1)])}),[],!1,null,"e7af5b9e",null).exports,sn=i(48033),ln=i(37838),un={name:"LockOpenIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},cn=(0,tn.Z)(un,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon lock-open-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),[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,8A2,2 0 0,1 20,10V20A2,2 0 0,1 18,22H6C4.89,22 4,21.1 4,20V10A2,2 0 0,1 6,8H15V6A3,3 0 0,0 12,3A3,3 0 0,0 9,6H7A5,5 0 0,1 12,1A5,5 0 0,1 17,6V8H18M12,17A2,2 0 0,0 14,15A2,2 0 0,0 12,13A2,2 0 0,0 10,15A2,2 0 0,0 12,17Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,fn=i(25108);function dn(t){return dn="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},dn(t)}function hn(t){return function(t){if(Array.isArray(t))return pn(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){if("string"==typeof t)return pn(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?pn(t,e):void 0}}(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 pn(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n<e;n++)r[n]=t[n];return r}function mn(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 gn(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?mn(Object(n),!0).forEach((function(e){vn(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):mn(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function vn(t,e,n){return(e=yn(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function yn(t){var e=function(t,e){if("object"!==dn(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,"string");if("object"!==dn(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===dn(e)?e:String(e)}function bn(t){var e="function"==typeof Map?new Map:void 0;return bn=function(t){if(null===t||(n=t,-1===Function.toString.call(n).indexOf("[native code]")))return t;var n;if("function"!=typeof t)throw new TypeError("Super expression must either be null or a function");if(void 0!==e){if(e.has(t))return e.get(t);e.set(t,r)}function r(){return wn(t,arguments,_n(this).constructor)}return r.prototype=Object.create(t.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}),An(r,t)},bn(t)}function wn(t,e,n){return wn=xn()?Reflect.construct.bind():function(t,e,n){var r=[null];r.push.apply(r,e);var i=new(Function.bind.apply(t,r));return n&&An(i,n.prototype),i},wn.apply(null,arguments)}function xn(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}function An(t,e){return An=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},An(t,e)}function _n(t){return _n=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},_n(t)}var Cn=function(t){!function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&An(t,e)}(o,t);var e,n,r,i=(n=o,r=xn(),function(){var t,e=_n(n);if(r){var i=_n(this).constructor;t=Reflect.construct(e,arguments,i)}else t=e.apply(this,arguments);return function(t,e){if(e&&("object"===dn(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(this,t)});function o(){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,o),i.apply(this,arguments)}return e=o,Object.defineProperty(e,"prototype",{writable:!1}),e}(bn(Error)),kn={name:"PasswordLessLoginForm",components:{LoginButton:en,InformationIcon:ln.default,LockOpenIcon:cn,NcTextField:Ie()},props:{username:{type:String,default:""},redirectUrl:{type:[String,Boolean],default:!1},autoCompleteAllowed:{type:Boolean,default:!0},isHttps:{type:Boolean,default:!1},isLocalhost:{type:Boolean,default:!1},hasPublicKeyCredential:{type:Boolean,default:!1}},data:function(){return{user:this.username,loading:!1,validCredentials:!0}},methods:{authenticate:function(){var t=this;this.$refs.loginForm.checkValidity()&&(fn.debug("passwordless login initiated"),this.getAuthenticationData(this.user).then((function(t){return fn.debug(t),t})).then(this.sign).then(this.completeAuthentication).catch((function(e){e instanceof Cn?t.validCredentials=!1:fn.debug(e)})))},changeUsername:function(t){this.user=t,this.$emit("update:username",this.user)},getAuthenticationData:function(t){var e,n,r=function(t){var e=(t=t.replace(/-/g,"+").replace(/_/g,"/")).length%4;if(e){if(1===e)throw new Error("InvalidLengthError: Input base64url string is the wrong length to determine padding");t+=new Array(5-e).join("=")}return window.atob(t)};return(e=t,n=(0,g.generateUrl)("/login/webauthn/start"),sn.Z.post(n,{loginName:e}).then((function(t){return t.data}))).then((function(t){if(fn.debug("Obtained PublicKeyCredentialRequestOptions"),fn.debug(t),!Object.prototype.hasOwnProperty.call(t,"allowCredentials"))throw fn.debug("No credentials found."),new Cn;return t.challenge=Uint8Array.from(r(t.challenge),(function(t){return t.charCodeAt(0)})),t.allowCredentials=t.allowCredentials.map((function(t){return gn(gn({},t),{},{id:Uint8Array.from(r(t.id),(function(t){return t.charCodeAt(0)}))})})),fn.debug("Converted PublicKeyCredentialRequestOptions"),fn.debug(t),t})).catch((function(t){throw fn.debug("Error while obtaining data"),t}))},sign:function(t){var e=function(t){return window.btoa(String.fromCharCode.apply(String,hn(t)))};return navigator.credentials.get({publicKey:t}).then((function(t){return fn.debug(t),fn.debug(new Uint8Array(t.rawId)),fn.debug(e(new Uint8Array(t.rawId))),{id:t.id,type:t.type,rawId:e(new Uint8Array(t.rawId)),response:{authenticatorData:e(new Uint8Array(t.response.authenticatorData)),clientDataJSON:e(new Uint8Array(t.response.clientDataJSON)),signature:e(new Uint8Array(t.response.signature)),userHandle:t.response.userHandle?(n=new Uint8Array(t.response.userHandle),String.fromCharCode.apply(String,hn(n))):null}};var n})).then((function(t){return fn.debug(t),t})).catch((function(t){fn.debug("GOT AN ERROR!"),fn.debug(t)}))},completeAuthentication:function(t){fn.debug("TIME TO COMPLETE");var e,n,r=this.redirectUrl;return(e=JSON.stringify(t),n=(0,g.generateUrl)("/login/webauthn/finish"),sn.Z.post(n,{data:e}).then((function(t){return t.data}))).then((function(t){var e=t.defaultRedirectUrl;fn.debug("Logged in redirecting"),window.location.href=r||e})).catch((function(t){fn.debug("GOT AN ERROR WHILE SUBMITTING CHALLENGE!"),fn.debug(t)}))},submit:function(){}}},Pn=i(34840),En={};En.styleTagTransform=Je(),En.setAttributes=Ge(),En.insert=Ve().bind(null,"head"),En.domAPI=He(),En.insertStyleElement=Ze(),ze()(Pn.Z,En),Pn.Z&&Pn.Z.locals&&Pn.Z.locals;var On=(0,tn.Z)(kn,(function(){var t=this,e=t._self._c;return(t.isHttps||t.isLocalhost)&&t.hasPublicKeyCredential?e("form",{ref:"loginForm",attrs:{method:"post",name:"login"},on:{submit:function(e){return e.preventDefault(),t.submit.apply(null,arguments)}}},[e("h2",[t._v(t._s(t.t("core","Log in with a device")))]),t._v(" "),e("fieldset",[e("NcTextField",{attrs:{required:"",value:t.user,autocomplete:t.autoCompleteAllowed?"on":"off",error:!t.validCredentials,"label-visible":!0,label:t.t("core","Username or email"),placeholder:t.t("core","Username or email"),"helper-text":t.validCredentials?"":t.t("core","Your account is not setup for passwordless login.")},on:{"update:value":t.changeUsername}}),t._v(" "),t.validCredentials?e("LoginButton",{attrs:{loading:t.loading},on:{click:t.authenticate}}):t._e()],1)]):t.hasPublicKeyCredential?t.isHttps||t.isLocalhost?t._e():e("div",{staticClass:"update"},[e("LockOpenIcon",{attrs:{size:"70"}}),t._v(" "),e("h2",[t._v(t._s(t.t("core","Your connection is not secure")))]),t._v(" "),e("p",{staticClass:"infogroup"},[t._v("\n\t\t"+t._s(t.t("core","Passwordless authentication is only available over a secure connection."))+"\n\t")])],1):e("div",{staticClass:"update"},[e("InformationIcon",{attrs:{size:"70"}}),t._v(" "),e("h2",[t._v(t._s(t.t("core","Browser not supported")))]),t._v(" "),e("p",{staticClass:"infogroup"},[t._v("\n\t\t"+t._s(t.t("core","Passwordless authentication is not supported in your browser."))+"\n\t")])],1)}),[],!1,null,"11c76644",null),jn=On.exports,Tn=i(25108),Nn={name:"ResetPassword",components:{LoginButton:en,NcNoteCard:$e(),NcTextField:Ie()},props:{username:{type:String,required:!0},resetPasswordLink:{type:String,required:!0}},data:function(){return{error:!1,loading:!1,message:void 0,user:this.username}},watch:{username:function(t){this.user=t}},methods:{updateUsername:function(){this.$emit("update:username",this.user)},submit:function(){var t=this;this.loading=!0,this.error=!1,this.message="";var e=(0,g.generateUrl)("/lostpassword/email"),n={user:this.user};return sn.Z.post(e,n).then((function(t){return t.data})).then((function(e){if("success"!==e.status)throw new Error("got status ".concat(e.status));t.message="send-success"})).catch((function(e){Tn.error("could not send reset email request",e),t.error=!0,t.message="send-error"})).then((function(){t.loading=!1}))}}},Sn=i(72076),Ln={};Ln.styleTagTransform=Je(),Ln.setAttributes=Ge(),Ln.insert=Ve().bind(null,"head"),Ln.domAPI=He(),Ln.insertStyleElement=Ze(),ze()(Sn.Z,Ln),Sn.Z&&Sn.Z.locals&&Sn.Z.locals;var In=(0,tn.Z)(Nn,(function(){var t=this,e=t._self._c;return e("form",{staticClass:"login-form",on:{submit:function(e){return e.preventDefault(),t.submit.apply(null,arguments)}}},[e("fieldset",{staticClass:"login-form__fieldset"},[e("NcTextField",{attrs:{id:"user",value:t.user,name:"user",autocapitalize:"off",label:t.t("core","Account name or email"),"label-visible":!0,required:""},on:{"update:value":function(e){t.user=e},change:t.updateUsername}}),t._v(" "),e("LoginButton",{attrs:{value:t.t("core","Reset password")}}),t._v(" "),"send-success"===t.message?e("NcNoteCard",{attrs:{type:"success"}},[t._v("\n\t\t\t"+t._s(t.t("core","If this account exists, a password reset message has been sent to its email address. If you do not receive it, verify your email address and/or account name, check your spam/junk folders or ask your local administration for help."))+"\n\t\t")]):"send-error"===t.message?e("NcNoteCard",{attrs:{type:"error"}},[t._v("\n\t\t\t"+t._s(t.t("core","Couldn't send reset email. Please contact your administrator."))+"\n\t\t")]):"reset-error"===t.message?e("NcNoteCard",{attrs:{type:"error"}},[t._v("\n\t\t\t"+t._s(t.t("core","Password cannot be changed. Please contact your administrator."))+"\n\t\t")]):t._e(),t._v(" "),e("a",{staticClass:"login-form__link",attrs:{href:"#"},on:{click:function(e){return e.preventDefault(),t.$emit("abort")}}},[t._v("\n\t\t\t"+t._s(t.t("core","Back to login"))+"\n\t\t")])],1)])}),[],!1,null,"6636f1b2",null),Fn=In.exports;function $n(t){return $n="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},$n(t)}function Rn(){Rn=function(){return t};var t={},e=Object.prototype,n=e.hasOwnProperty,r=Object.defineProperty||function(t,e,n){t[e]=n.value},i="function"==typeof Symbol?Symbol:{},o=i.iterator||"@@iterator",a=i.asyncIterator||"@@asyncIterator",s=i.toStringTag||"@@toStringTag";function l(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{l({},"")}catch(t){l=function(t,e,n){return t[e]=n}}function u(t,e,n,i){var o=e&&e.prototype instanceof d?e:d,a=Object.create(o.prototype),s=new k(i||[]);return r(a,"_invoke",{value:x(t,n,s)}),a}function c(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}t.wrap=u;var f={};function d(){}function h(){}function p(){}var m={};l(m,o,(function(){return this}));var g=Object.getPrototypeOf,v=g&&g(g(P([])));v&&v!==e&&n.call(v,o)&&(m=v);var y=p.prototype=d.prototype=Object.create(m);function b(t){["next","throw","return"].forEach((function(e){l(t,e,(function(t){return this._invoke(e,t)}))}))}function w(t,e){function i(r,o,a,s){var l=c(t[r],t,o);if("throw"!==l.type){var u=l.arg,f=u.value;return f&&"object"==$n(f)&&n.call(f,"__await")?e.resolve(f.__await).then((function(t){i("next",t,a,s)}),(function(t){i("throw",t,a,s)})):e.resolve(f).then((function(t){u.value=t,a(u)}),(function(t){return i("throw",t,a,s)}))}s(l.arg)}var o;r(this,"_invoke",{value:function(t,n){function r(){return new e((function(e,r){i(t,n,e,r)}))}return o=o?o.then(r,r):r()}})}function x(t,e,n){var r="suspendedStart";return function(i,o){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===i)throw o;return{value:void 0,done:!0}}for(n.method=i,n.arg=o;;){var a=n.delegate;if(a){var s=A(a,n);if(s){if(s===f)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var l=c(t,e,n);if("normal"===l.type){if(r=n.done?"completed":"suspendedYield",l.arg===f)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(r="completed",n.method="throw",n.arg=l.arg)}}}function A(t,e){var n=e.method,r=t.iterator[n];if(void 0===r)return e.delegate=null,"throw"===n&&t.iterator.return&&(e.method="return",e.arg=void 0,A(t,e),"throw"===e.method)||"return"!==n&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+n+"' method")),f;var i=c(r,t.iterator,e.arg);if("throw"===i.type)return e.method="throw",e.arg=i.arg,e.delegate=null,f;var o=i.arg;return o?o.done?(e[t.resultName]=o.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,f):o:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,f)}function _(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function C(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function k(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(_,this),this.reset(!0)}function P(t){if(t){var e=t[o];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var r=-1,i=function e(){for(;++r<t.length;)if(n.call(t,r))return e.value=t[r],e.done=!1,e;return e.value=void 0,e.done=!0,e};return i.next=i}}return{next:E}}function E(){return{value:void 0,done:!0}}return h.prototype=p,r(y,"constructor",{value:p,configurable:!0}),r(p,"constructor",{value:h,configurable:!0}),h.displayName=l(p,s,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===h||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,p):(t.__proto__=p,l(t,s,"GeneratorFunction")),t.prototype=Object.create(y),t},t.awrap=function(t){return{__await:t}},b(w.prototype),l(w.prototype,a,(function(){return this})),t.AsyncIterator=w,t.async=function(e,n,r,i,o){void 0===o&&(o=Promise);var a=new w(u(e,n,r,i),o);return t.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},b(y),l(y,s,"Generator"),l(y,o,(function(){return this})),l(y,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),n=[];for(var r in e)n.push(r);return n.reverse(),function t(){for(;n.length;){var r=n.pop();if(r in e)return t.value=r,t.done=!1,t}return t.done=!0,t}},t.values=P,k.prototype={constructor:k,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(C),!t)for(var e in this)"t"===e.charAt(0)&&n.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function r(n,r){return a.type="throw",a.arg=t,e.next=n,r&&(e.method="next",e.arg=void 0),!!r}for(var i=this.tryEntries.length-1;i>=0;--i){var o=this.tryEntries[i],a=o.completion;if("root"===o.tryLoc)return r("end");if(o.tryLoc<=this.prev){var s=n.call(o,"catchLoc"),l=n.call(o,"finallyLoc");if(s&&l){if(this.prev<o.catchLoc)return r(o.catchLoc,!0);if(this.prev<o.finallyLoc)return r(o.finallyLoc)}else if(s){if(this.prev<o.catchLoc)return r(o.catchLoc,!0)}else{if(!l)throw new Error("try statement without catch or finally");if(this.prev<o.finallyLoc)return r(o.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var i=this.tryEntries[r];if(i.tryLoc<=this.prev&&n.call(i,"finallyLoc")&&this.prev<i.finallyLoc){var o=i;break}}o&&("break"===t||"continue"===t)&&o.tryLoc<=e&&e<=o.finallyLoc&&(o=null);var a=o?o.completion:{};return a.type=t,a.arg=e,o?(this.method="next",this.next=o.finallyLoc,f):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),f},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),C(n),f}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var i=r.arg;C(n)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,n){return this.delegate={iterator:P(t),resultName:e,nextLoc:n},"next"===this.method&&(this.arg=void 0),f}},t}function Un(t,e,n,r,i,o,a){try{var s=t[o](a),l=s.value}catch(t){return void n(t)}s.done?e(l):Promise.resolve(l).then(r,i)}var Mn={name:"UpdatePassword",components:{LoginButton:en},props:{username:{type:String,required:!0},resetPasswordTarget:{type:String,required:!0}},data:function(){return{error:!1,loading:!1,message:void 0,user:this.username,password:"",encrypted:!1,proceed:!1}},watch:{username:function(t){this.user=t}},methods:{submit:function(){var e,n=this;return(e=Rn().mark((function e(){var r,i;return Rn().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n.loading=!0,n.error=!1,n.message="",e.prev=3,e.next=6,sn.Z.post(n.resetPasswordTarget,{password:n.password,proceed:n.proceed});case 6:if(r=e.sent,!(i=r.data)||"success"!==i.status){e.next=14;break}n.message="send-success",n.$emit("update:username",n.user),n.$emit("done"),e.next=23;break;case 14:if(!i||!i.encryption){e.next=18;break}n.encrypted=!0,e.next=23;break;case 18:if(!i||!i.msg){e.next=22;break}throw new Error(i.msg);case 22:throw new Error;case 23:e.next=29;break;case 25:e.prev=25,e.t0=e.catch(3),n.error=!0,n.message=e.t0.message?e.t0.message:t("core","Password cannot be changed. Please contact your administrator.");case 29:return e.prev=29,n.loading=!1,e.finish(29);case 32:case"end":return e.stop()}}),e,null,[[3,25,29,32]])})),function(){var t=this,n=arguments;return new Promise((function(r,i){var o=e.apply(t,n);function a(t){Un(o,r,i,a,s,"next",t)}function s(t){Un(o,r,i,a,s,"throw",t)}a(void 0)}))})()}}},Bn=Mn,zn=i(74778),Dn={};Dn.styleTagTransform=Je(),Dn.setAttributes=Ge(),Dn.insert=Ve().bind(null,"head"),Dn.domAPI=He(),Dn.insertStyleElement=Ze(),ze()(zn.Z,Dn),zn.Z&&zn.Z.locals&&zn.Z.locals;var Hn=(0,tn.Z)(Bn,(function(){var t=this,e=t._self._c;return e("form",{on:{submit:function(e){return e.preventDefault(),t.submit.apply(null,arguments)}}},[e("fieldset",[e("p",[e("label",{staticClass:"infield",attrs:{for:"password"}},[t._v(t._s(t.t("core","New password")))]),t._v(" "),e("input",{directives:[{name:"model",rawName:"v-model",value:t.password,expression:"password"}],attrs:{id:"password",type:"password",name:"password",autocomplete:"new-password",autocapitalize:"none",autocorrect:"off",required:"",placeholder:t.t("core","New password")},domProps:{value:t.password},on:{input:function(e){e.target.composing||(t.password=e.target.value)}}})]),t._v(" "),t.encrypted?e("div",{staticClass:"update"},[e("p",[t._v("\n\t\t\t\t"+t._s(t.t("core","Your files are encrypted. There will be no way to get your data back after your password is reset. If you are not sure what to do, please contact your administrator before you continue. Do you really want to continue?"))+"\n\t\t\t")]),t._v(" "),e("input",{directives:[{name:"model",rawName:"v-model",value:t.proceed,expression:"proceed"}],staticClass:"checkbox",attrs:{id:"encrypted-continue",type:"checkbox"},domProps:{checked:Array.isArray(t.proceed)?t._i(t.proceed,null)>-1:t.proceed},on:{change:function(e){var n=t.proceed,r=e.target,i=!!r.checked;if(Array.isArray(n)){var o=t._i(n,null);r.checked?o<0&&(t.proceed=n.concat([null])):o>-1&&(t.proceed=n.slice(0,o).concat(n.slice(o+1)))}else t.proceed=i}}}),t._v(" "),e("label",{attrs:{for:"encrypted-continue"}},[t._v("\n\t\t\t\t"+t._s(t.t("core","I know what I'm doing"))+"\n\t\t\t")])]):t._e(),t._v(" "),e("LoginButton",{attrs:{loading:t.loading,value:t.t("core","Reset password"),"value-loading":t.t("core","Resetting password")}}),t._v(" "),t.error&&t.message?e("p",{class:{warning:t.error}},[t._v("\n\t\t\t"+t._s(t.message)+"\n\t\t")]):t._e()],1)])}),[],!1,null,"4dc21d74",null),qn=Hn.exports,Vn=i(25108),Yn=Te.parse(location.search);if("1"===Yn.clear)try{window.localStorage.clear(),window.sessionStorage.clear(),Vn.debug("Browser storage cleared")}catch(t){Vn.error("Could not clear browser storage",t)}var Gn={name:"Login",components:{LoginForm:an,PasswordLessLoginForm:jn,ResetPassword:Fn,UpdatePassword:qn,NcButton:Ue(),NcNoteCard:$e()},data:function(){return{loading:!1,user:(0,ae.j)("core","loginUsername",""),passwordlessLogin:!1,resetPassword:!1,errors:(0,ae.j)("core","loginErrors",[]),messages:(0,ae.j)("core","loginMessages",[]),redirectUrl:(0,ae.j)("core","loginRedirectUrl",!1),throttleDelay:(0,ae.j)("core","loginThrottleDelay",0),canResetPassword:(0,ae.j)("core","loginCanResetPassword",!1),resetPasswordLink:(0,ae.j)("core","loginResetPasswordLink",""),autoCompleteAllowed:(0,ae.j)("core","loginAutocomplete",!0),resetPasswordTarget:(0,ae.j)("core","resetPasswordTarget",""),resetPasswordUser:(0,ae.j)("core","resetPasswordUser",""),directLogin:"1"===Yn.direct,hasPasswordless:(0,ae.j)("core","webauthn-available",!1),countAlternativeLogins:(0,ae.j)("core","countAlternativeLogins",!1),alternativeLogins:(0,ae.j)("core","alternativeLogins",[]),isHttps:"https:"===window.location.protocol,isLocalhost:"localhost"===window.location.hostname,hasPublicKeyCredential:void 0!==window.PublicKeyCredential,hideLoginForm:(0,ae.j)("core","hideLoginForm",!1)}},methods:{passwordResetFinished:function(){this.resetPasswordTarget="",this.directLogin=!0}}},Kn=i(52454),Zn={};Zn.styleTagTransform=Je(),Zn.setAttributes=Ge(),Zn.insert=Ve().bind(null,"head"),Zn.domAPI=He(),Zn.insertStyleElement=Ze(),ze()(Kn.Z,Zn),Kn.Z&&Kn.Z.locals&&Kn.Z.locals;var Wn=(0,tn.Z)(Gn,(function(){var t=this,e=t._self._c;return e("div",{staticClass:"guest-box login-box"},[!t.hideLoginForm||t.directLogin?[e("transition",{attrs:{name:"fade",mode:"out-in"}},[t.passwordlessLogin||t.resetPassword||""!==t.resetPasswordTarget?!t.loading&&t.passwordlessLogin?e("div",{key:"reset",staticClass:"login-additional login-passwordless"},[e("PasswordLessLoginForm",{attrs:{username:t.user,"redirect-url":t.redirectUrl,"auto-complete-allowed":t.autoCompleteAllowed,"is-https":t.isHttps,"is-localhost":t.isLocalhost,"has-public-key-credential":t.hasPublicKeyCredential},on:{"update:username":function(e){t.user=e},submit:function(e){t.loading=!0}}}),t._v(" "),e("NcButton",{attrs:{type:"tertiary","aria-label":t.t("core","Back to login form"),wide:!0},on:{click:function(e){t.passwordlessLogin=!1}}},[t._v("\n\t\t\t\t\t"+t._s(t.t("core","Back"))+"\n\t\t\t\t")])],1):!t.loading&&t.canResetPassword?e("div",{key:"reset",staticClass:"login-additional"},[e("div",{staticClass:"lost-password-container"},[t.resetPassword?e("ResetPassword",{attrs:{username:t.user,"reset-password-link":t.resetPasswordLink},on:{"update:username":function(e){t.user=e},abort:function(e){t.resetPassword=!1}}}):t._e()],1)]):""!==t.resetPasswordTarget?e("div",[e("UpdatePassword",{attrs:{username:t.user,"reset-password-target":t.resetPasswordTarget},on:{"update:username":function(e){t.user=e},done:t.passwordResetFinished}})],1):t._e():e("div",[e("LoginForm",{attrs:{username:t.user,"redirect-url":t.redirectUrl,"direct-login":t.directLogin,messages:t.messages,errors:t.errors,"throttle-delay":t.throttleDelay,"auto-complete-allowed":t.autoCompleteAllowed},on:{"update:username":function(e){t.user=e},submit:function(e){t.loading=!0}}}),t._v(" "),t.canResetPassword&&""!==t.resetPasswordLink?e("a",{staticClass:"login-box__link",attrs:{id:"lost-password",href:t.resetPasswordLink}},[t._v("\n\t\t\t\t\t"+t._s(t.t("core","Forgot password?"))+"\n\t\t\t\t")]):t.canResetPassword&&!t.resetPassword?e("a",{staticClass:"login-box__link",attrs:{id:"lost-password",href:t.resetPasswordLink},on:{click:function(e){e.preventDefault(),t.resetPassword=!0}}},[t._v("\n\t\t\t\t\t"+t._s(t.t("core","Forgot password?"))+"\n\t\t\t\t")]):t._e(),t._v(" "),t.hasPasswordless?[t.countAlternativeLogins?e("div",{staticClass:"alternative-logins"},[t.hasPasswordless?e("a",{staticClass:"button",class:{"single-alt-login-option":t.countAlternativeLogins},attrs:{href:"#"},on:{click:function(e){e.preventDefault(),t.passwordlessLogin=!0}}},[t._v("\n\t\t\t\t\t\t\t"+t._s(t.t("core","Log in with a device"))+"\n\t\t\t\t\t\t")]):t._e()]):e("a",{attrs:{href:"#"},on:{click:function(e){e.preventDefault(),t.passwordlessLogin=!0}}},[t._v("\n\t\t\t\t\t\t"+t._s(t.t("core","Log in with a device"))+"\n\t\t\t\t\t")])]:t._e()],2)])]:[e("transition",{attrs:{name:"fade",mode:"out-in"}},[e("NcNoteCard",{attrs:{type:"warning",title:t.t("core","Login form is disabled.")}},[t._v("\n\t\t\t\t"+t._s(t.t("core","Please contact your administrator."))+"\n\t\t\t")])],1)],t._v(" "),e("div",{staticClass:"alternative-logins",attrs:{id:"alternative-logins"}},t._l(t.alternativeLogins,(function(n,r){return e("NcButton",{key:r,class:[n.class],attrs:{type:"secondary",wide:!0,role:"link",href:n.href}},[t._v("\n\t\t\t"+t._s(n.name)+"\n\t\t")])})),1)],2)}),[],!1,null,null,null).exports,Jn={data:function(){return{OC:oe}},methods:{t:mt.translate.bind(mt),n:mt.translatePlural.bind(mt)}};a.default.mixin(Jn),(new(a.default.extend(Wn))).$mount("#login")},72316:function(t,e,n){var r,i,o;o="object"==typeof self&&self.self===self&&self||"object"==typeof n.g&&n.g.global===n.g&&n.g,r=[n(59050),n(19755),e],i=function(t,e,n){o.Backbone=function(t,e,n,r){var i=t.Backbone,o=Array.prototype.slice;e.VERSION="1.5.0",e.$=r,e.noConflict=function(){return t.Backbone=i,this},e.emulateHTTP=!1,e.emulateJSON=!1;var a,s=e.Events={},l=/\s+/,u=function(t,e,r,i,o){var a,s=0;if(r&&"object"==typeof r){void 0!==i&&"context"in o&&void 0===o.context&&(o.context=i);for(a=n.keys(r);s<a.length;s++)e=u(t,e,a[s],r[a[s]],o)}else if(r&&l.test(r))for(a=r.split(l);s<a.length;s++)e=t(e,a[s],i,o);else e=t(e,r,i,o);return e};s.on=function(t,e,n){return this._events=u(c,this._events||{},t,e,{context:n,ctx:this,listening:a}),a&&((this._listeners||(this._listeners={}))[a.id]=a,a.interop=!1),this},s.listenTo=function(t,e,r){if(!t)return this;var i=t._listenId||(t._listenId=n.uniqueId("l")),o=this._listeningTo||(this._listeningTo={}),s=a=o[i];s||(this._listenId||(this._listenId=n.uniqueId("l")),s=a=o[i]=new g(this,t));var l=f(t,e,r,this);if(a=void 0,l)throw l;return s.interop&&s.on(e,r),this};var c=function(t,e,n,r){if(n){var i=t[e]||(t[e]=[]),o=r.context,a=r.ctx,s=r.listening;s&&s.count++,i.push({callback:n,context:o,ctx:o||a,listening:s})}return t},f=function(t,e,n,r){try{t.on(e,n,r)}catch(t){return t}};s.off=function(t,e,n){return this._events?(this._events=u(d,this._events,t,e,{context:n,listeners:this._listeners}),this):this},s.stopListening=function(t,e,r){var i=this._listeningTo;if(!i)return this;for(var o=t?[t._listenId]:n.keys(i),a=0;a<o.length;a++){var s=i[o[a]];if(!s)break;s.obj.off(e,r,this),s.interop&&s.off(e,r)}return n.isEmpty(i)&&(this._listeningTo=void 0),this};var d=function(t,e,r,i){if(t){var o,a=i.context,s=i.listeners,l=0;if(e||a||r){for(o=e?[e]:n.keys(t);l<o.length;l++){var u=t[e=o[l]];if(!u)break;for(var c=[],f=0;f<u.length;f++){var d=u[f];if(r&&r!==d.callback&&r!==d.callback._callback||a&&a!==d.context)c.push(d);else{var h=d.listening;h&&h.off(e,r)}}c.length?t[e]=c:delete t[e]}return t}for(o=n.keys(s);l<o.length;l++)s[o[l]].cleanup()}};s.once=function(t,e,n){var r=u(h,{},t,e,this.off.bind(this));return"string"==typeof t&&null==n&&(e=void 0),this.on(r,e,n)},s.listenToOnce=function(t,e,n){var r=u(h,{},e,n,this.stopListening.bind(this,t));return this.listenTo(t,r)};var h=function(t,e,r,i){if(r){var o=t[e]=n.once((function(){i(e,o),r.apply(this,arguments)}));o._callback=r}return t};s.trigger=function(t){if(!this._events)return this;for(var e=Math.max(0,arguments.length-1),n=Array(e),r=0;r<e;r++)n[r]=arguments[r+1];return u(p,this._events,t,void 0,n),this};var p=function(t,e,n,r){if(t){var i=t[e],o=t.all;i&&o&&(o=o.slice()),i&&m(i,r),o&&m(o,[e].concat(r))}return t},m=function(t,e){var n,r=-1,i=t.length,o=e[0],a=e[1],s=e[2];switch(e.length){case 0:for(;++r<i;)(n=t[r]).callback.call(n.ctx);return;case 1:for(;++r<i;)(n=t[r]).callback.call(n.ctx,o);return;case 2:for(;++r<i;)(n=t[r]).callback.call(n.ctx,o,a);return;case 3:for(;++r<i;)(n=t[r]).callback.call(n.ctx,o,a,s);return;default:for(;++r<i;)(n=t[r]).callback.apply(n.ctx,e);return}},g=function(t,e){this.id=t._listenId,this.listener=t,this.obj=e,this.interop=!0,this.count=0,this._events=void 0};g.prototype.on=s.on,g.prototype.off=function(t,e){var n;this.interop?(this._events=u(d,this._events,t,e,{context:void 0,listeners:void 0}),n=!this._events):(this.count--,n=0===this.count),n&&this.cleanup()},g.prototype.cleanup=function(){delete this.listener._listeningTo[this.obj._listenId],this.interop||delete this.obj._listeners[this.id]},s.bind=s.on,s.unbind=s.off,n.extend(e,s);var v=e.Model=function(t,e){var r=t||{};e||(e={}),this.preinitialize.apply(this,arguments),this.cid=n.uniqueId(this.cidPrefix),this.attributes={},e.collection&&(this.collection=e.collection),e.parse&&(r=this.parse(r,e)||{});var i=n.result(this,"defaults");r=n.defaults(n.extend({},i,r),i),this.set(r,e),this.changed={},this.initialize.apply(this,arguments)};n.extend(v.prototype,s,{changed:null,validationError:null,idAttribute:"id",cidPrefix:"c",preinitialize:function(){},initialize:function(){},toJSON:function(t){return n.clone(this.attributes)},sync:function(){return e.sync.apply(this,arguments)},get:function(t){return this.attributes[t]},escape:function(t){return n.escape(this.get(t))},has:function(t){return null!=this.get(t)},matches:function(t){return!!n.iteratee(t,this)(this.attributes)},set:function(t,e,r){if(null==t)return this;var i;if("object"==typeof t?(i=t,r=e):(i={})[t]=e,r||(r={}),!this._validate(i,r))return!1;var o=r.unset,a=r.silent,s=[],l=this._changing;this._changing=!0,l||(this._previousAttributes=n.clone(this.attributes),this.changed={});var u=this.attributes,c=this.changed,f=this._previousAttributes;for(var d in i)e=i[d],n.isEqual(u[d],e)||s.push(d),n.isEqual(f[d],e)?delete c[d]:c[d]=e,o?delete u[d]:u[d]=e;if(this.idAttribute in i){var h=this.id;this.id=this.get(this.idAttribute),this.trigger("changeId",this,h,r)}if(!a){s.length&&(this._pending=r);for(var p=0;p<s.length;p++)this.trigger("change:"+s[p],this,u[s[p]],r)}if(l)return this;if(!a)for(;this._pending;)r=this._pending,this._pending=!1,this.trigger("change",this,r);return this._pending=!1,this._changing=!1,this},unset:function(t,e){return this.set(t,void 0,n.extend({},e,{unset:!0}))},clear:function(t){var e={};for(var r in this.attributes)e[r]=void 0;return this.set(e,n.extend({},t,{unset:!0}))},hasChanged:function(t){return null==t?!n.isEmpty(this.changed):n.has(this.changed,t)},changedAttributes:function(t){if(!t)return!!this.hasChanged()&&n.clone(this.changed);var e,r=this._changing?this._previousAttributes:this.attributes,i={};for(var o in t){var a=t[o];n.isEqual(r[o],a)||(i[o]=a,e=!0)}return!!e&&i},previous:function(t){return null!=t&&this._previousAttributes?this._previousAttributes[t]:null},previousAttributes:function(){return n.clone(this._previousAttributes)},fetch:function(t){t=n.extend({parse:!0},t);var e=this,r=t.success;return t.success=function(n){var i=t.parse?e.parse(n,t):n;if(!e.set(i,t))return!1;r&&r.call(t.context,e,n,t),e.trigger("sync",e,n,t)},q(this,t),this.sync("read",this,t)},save:function(t,e,r){var i;null==t||"object"==typeof t?(i=t,r=e):(i={})[t]=e;var o=(r=n.extend({validate:!0,parse:!0},r)).wait;if(i&&!o){if(!this.set(i,r))return!1}else if(!this._validate(i,r))return!1;var a=this,s=r.success,l=this.attributes;r.success=function(t){a.attributes=l;var e=r.parse?a.parse(t,r):t;if(o&&(e=n.extend({},i,e)),e&&!a.set(e,r))return!1;s&&s.call(r.context,a,t,r),a.trigger("sync",a,t,r)},q(this,r),i&&o&&(this.attributes=n.extend({},l,i));var u=this.isNew()?"create":r.patch?"patch":"update";"patch"!==u||r.attrs||(r.attrs=i);var c=this.sync(u,this,r);return this.attributes=l,c},destroy:function(t){t=t?n.clone(t):{};var e=this,r=t.success,i=t.wait,o=function(){e.stopListening(),e.trigger("destroy",e,e.collection,t)};t.success=function(n){i&&o(),r&&r.call(t.context,e,n,t),e.isNew()||e.trigger("sync",e,n,t)};var a=!1;return this.isNew()?n.defer(t.success):(q(this,t),a=this.sync("delete",this,t)),i||o(),a},url:function(){var t=n.result(this,"urlRoot")||n.result(this.collection,"url")||H();if(this.isNew())return t;var e=this.get(this.idAttribute);return t.replace(/[^\/]$/,"$&/")+encodeURIComponent(e)},parse:function(t,e){return t},clone:function(){return new this.constructor(this.attributes)},isNew:function(){return!this.has(this.idAttribute)},isValid:function(t){return this._validate({},n.extend({},t,{validate:!0}))},_validate:function(t,e){if(!e.validate||!this.validate)return!0;t=n.extend({},this.attributes,t);var r=this.validationError=this.validate(t,e)||null;return!r||(this.trigger("invalid",this,r,n.extend(e,{validationError:r})),!1)}});var y=e.Collection=function(t,e){e||(e={}),this.preinitialize.apply(this,arguments),e.model&&(this.model=e.model),void 0!==e.comparator&&(this.comparator=e.comparator),this._reset(),this.initialize.apply(this,arguments),t&&this.reset(t,n.extend({silent:!0},e))},b={add:!0,remove:!0,merge:!0},w={add:!0,remove:!1},x=function(t,e,n){n=Math.min(Math.max(n,0),t.length);var r,i=Array(t.length-n),o=e.length;for(r=0;r<i.length;r++)i[r]=t[r+n];for(r=0;r<o;r++)t[r+n]=e[r];for(r=0;r<i.length;r++)t[r+o+n]=i[r]};n.extend(y.prototype,s,{model:v,preinitialize:function(){},initialize:function(){},toJSON:function(t){return this.map((function(e){return e.toJSON(t)}))},sync:function(){return e.sync.apply(this,arguments)},add:function(t,e){return this.set(t,n.extend({merge:!1},e,w))},remove:function(t,e){e=n.extend({},e);var r=!n.isArray(t);t=r?[t]:t.slice();var i=this._removeModels(t,e);return!e.silent&&i.length&&(e.changes={added:[],merged:[],removed:i},this.trigger("update",this,e)),r?i[0]:i},set:function(t,e){if(null!=t){(e=n.extend({},b,e)).parse&&!this._isModel(t)&&(t=this.parse(t,e)||[]);var r=!n.isArray(t);t=r?[t]:t.slice();var i=e.at;null!=i&&(i=+i),i>this.length&&(i=this.length),i<0&&(i+=this.length+1);var o,a,s=[],l=[],u=[],c=[],f={},d=e.add,h=e.merge,p=e.remove,m=!1,g=this.comparator&&null==i&&!1!==e.sort,v=n.isString(this.comparator)?this.comparator:null;for(a=0;a<t.length;a++){o=t[a];var y=this.get(o);if(y){if(h&&o!==y){var w=this._isModel(o)?o.attributes:o;e.parse&&(w=y.parse(w,e)),y.set(w,e),u.push(y),g&&!m&&(m=y.hasChanged(v))}f[y.cid]||(f[y.cid]=!0,s.push(y)),t[a]=y}else d&&(o=t[a]=this._prepareModel(o,e))&&(l.push(o),this._addReference(o,e),f[o.cid]=!0,s.push(o))}if(p){for(a=0;a<this.length;a++)f[(o=this.models[a]).cid]||c.push(o);c.length&&this._removeModels(c,e)}var A=!1,_=!g&&d&&p;if(s.length&&_?(A=this.length!==s.length||n.some(this.models,(function(t,e){return t!==s[e]})),this.models.length=0,x(this.models,s,0),this.length=this.models.length):l.length&&(g&&(m=!0),x(this.models,l,null==i?this.length:i),this.length=this.models.length),m&&this.sort({silent:!0}),!e.silent){for(a=0;a<l.length;a++)null!=i&&(e.index=i+a),(o=l[a]).trigger("add",o,this,e);(m||A)&&this.trigger("sort",this,e),(l.length||c.length||u.length)&&(e.changes={added:l,removed:c,merged:u},this.trigger("update",this,e))}return r?t[0]:t}},reset:function(t,e){e=e?n.clone(e):{};for(var r=0;r<this.models.length;r++)this._removeReference(this.models[r],e);return e.previousModels=this.models,this._reset(),t=this.add(t,n.extend({silent:!0},e)),e.silent||this.trigger("reset",this,e),t},push:function(t,e){return this.add(t,n.extend({at:this.length},e))},pop:function(t){var e=this.at(this.length-1);return this.remove(e,t)},unshift:function(t,e){return this.add(t,n.extend({at:0},e))},shift:function(t){var e=this.at(0);return this.remove(e,t)},slice:function(){return o.apply(this.models,arguments)},get:function(t){if(null!=t)return this._byId[t]||this._byId[this.modelId(this._isModel(t)?t.attributes:t,t.idAttribute)]||t.cid&&this._byId[t.cid]},has:function(t){return null!=this.get(t)},at:function(t){return t<0&&(t+=this.length),this.models[t]},where:function(t,e){return this[e?"find":"filter"](t)},findWhere:function(t){return this.where(t,!0)},sort:function(t){var e=this.comparator;if(!e)throw new Error("Cannot sort a set without a comparator");t||(t={});var r=e.length;return n.isFunction(e)&&(e=e.bind(this)),1===r||n.isString(e)?this.models=this.sortBy(e):this.models.sort(e),t.silent||this.trigger("sort",this,t),this},pluck:function(t){return this.map(t+"")},fetch:function(t){var e=(t=n.extend({parse:!0},t)).success,r=this;return t.success=function(n){var i=t.reset?"reset":"set";r[i](n,t),e&&e.call(t.context,r,n,t),r.trigger("sync",r,n,t)},q(this,t),this.sync("read",this,t)},create:function(t,e){var r=(e=e?n.clone(e):{}).wait;if(!(t=this._prepareModel(t,e)))return!1;r||this.add(t,e);var i=this,o=e.success;return e.success=function(t,e,n){r&&(t.off("error",this._forwardPristineError,this),i.add(t,n)),o&&o.call(n.context,t,e,n)},r&&t.once("error",this._forwardPristineError,this),t.save(null,e),t},parse:function(t,e){return t},clone:function(){return new this.constructor(this.models,{model:this.model,comparator:this.comparator})},modelId:function(t,e){return t[e||this.model.prototype.idAttribute||"id"]},values:function(){return new _(this,C)},keys:function(){return new _(this,k)},entries:function(){return new _(this,P)},_reset:function(){this.length=0,this.models=[],this._byId={}},_prepareModel:function(t,e){return this._isModel(t)?(t.collection||(t.collection=this),t):((e=e?n.clone(e):{}).collection=this,(r=this.model.prototype?new this.model(t,e):this.model(t,e)).validationError?(this.trigger("invalid",this,r.validationError,e),!1):r);var r},_removeModels:function(t,e){for(var n=[],r=0;r<t.length;r++){var i=this.get(t[r]);if(i){var o=this.indexOf(i);this.models.splice(o,1),this.length--,delete this._byId[i.cid];var a=this.modelId(i.attributes,i.idAttribute);null!=a&&delete this._byId[a],e.silent||(e.index=o,i.trigger("remove",i,this,e)),n.push(i),this._removeReference(i,e)}}return t.length>0&&!e.silent&&delete e.index,n},_isModel:function(t){return t instanceof v},_addReference:function(t,e){this._byId[t.cid]=t;var n=this.modelId(t.attributes,t.idAttribute);null!=n&&(this._byId[n]=t),t.on("all",this._onModelEvent,this)},_removeReference:function(t,e){delete this._byId[t.cid];var n=this.modelId(t.attributes,t.idAttribute);null!=n&&delete this._byId[n],this===t.collection&&delete t.collection,t.off("all",this._onModelEvent,this)},_onModelEvent:function(t,e,n,r){if(e){if(("add"===t||"remove"===t)&&n!==this)return;if("destroy"===t&&this.remove(e,r),"changeId"===t){var i=this.modelId(e.previousAttributes(),e.idAttribute),o=this.modelId(e.attributes,e.idAttribute);null!=i&&delete this._byId[i],null!=o&&(this._byId[o]=e)}}this.trigger.apply(this,arguments)},_forwardPristineError:function(t,e,n){this.has(t)||this._onModelEvent("error",t,e,n)}});var A="function"==typeof Symbol&&Symbol.iterator;A&&(y.prototype[A]=y.prototype.values);var _=function(t,e){this._collection=t,this._kind=e,this._index=0},C=1,k=2,P=3;A&&(_.prototype[A]=function(){return this}),_.prototype.next=function(){if(this._collection){if(this._index<this._collection.length){var t,e=this._collection.at(this._index);if(this._index++,this._kind===C)t=e;else{var n=this._collection.modelId(e.attributes,e.idAttribute);t=this._kind===k?n:[n,e]}return{value:t,done:!1}}this._collection=void 0}return{value:void 0,done:!0}};var E=e.View=function(t){this.cid=n.uniqueId("view"),this.preinitialize.apply(this,arguments),n.extend(this,n.pick(t,j)),this._ensureElement(),this.initialize.apply(this,arguments)},O=/^(\S+)\s*(.*)$/,j=["model","collection","el","id","attributes","className","tagName","events"];n.extend(E.prototype,s,{tagName:"div",$:function(t){return this.$el.find(t)},preinitialize:function(){},initialize:function(){},render:function(){return this},remove:function(){return this._removeElement(),this.stopListening(),this},_removeElement:function(){this.$el.remove()},setElement:function(t){return this.undelegateEvents(),this._setElement(t),this.delegateEvents(),this},_setElement:function(t){this.$el=t instanceof e.$?t:e.$(t),this.el=this.$el[0]},delegateEvents:function(t){if(t||(t=n.result(this,"events")),!t)return this;for(var e in this.undelegateEvents(),t){var r=t[e];if(n.isFunction(r)||(r=this[r]),r){var i=e.match(O);this.delegate(i[1],i[2],r.bind(this))}}return this},delegate:function(t,e,n){return this.$el.on(t+".delegateEvents"+this.cid,e,n),this},undelegateEvents:function(){return this.$el&&this.$el.off(".delegateEvents"+this.cid),this},undelegate:function(t,e,n){return this.$el.off(t+".delegateEvents"+this.cid,e,n),this},_createElement:function(t){return document.createElement(t)},_ensureElement:function(){if(this.el)this.setElement(n.result(this,"el"));else{var t=n.extend({},n.result(this,"attributes"));this.id&&(t.id=n.result(this,"id")),this.className&&(t.class=n.result(this,"className")),this.setElement(this._createElement(n.result(this,"tagName"))),this._setAttributes(t)}},_setAttributes:function(t){this.$el.attr(t)}});var T=function(t,e,r,i){n.each(r,(function(n,r){e[r]&&(t.prototype[r]=function(t,e,n,r){switch(e){case 1:return function(){return t[n](this[r])};case 2:return function(e){return t[n](this[r],e)};case 3:return function(e,i){return t[n](this[r],N(e,this),i)};case 4:return function(e,i,o){return t[n](this[r],N(e,this),i,o)};default:return function(){var e=o.call(arguments);return e.unshift(this[r]),t[n].apply(t,e)}}}(e,n,r,i))}))},N=function(t,e){return n.isFunction(t)?t:n.isObject(t)&&!e._isModel(t)?S(t):n.isString(t)?function(e){return e.get(t)}:t},S=function(t){var e=n.matches(t);return function(t){return e(t.attributes)}};n.each([[y,{forEach:3,each:3,map:3,collect:3,reduce:0,foldl:0,inject:0,reduceRight:0,foldr:0,find:3,detect:3,filter:3,select:3,reject:3,every:3,all:3,some:3,any:3,include:3,includes:3,contains:3,invoke:0,max:3,min:3,toArray:1,size:1,first:3,head:3,take:3,initial:3,rest:3,tail:3,drop:3,last:3,without:0,difference:0,indexOf:3,shuffle:1,lastIndexOf:3,isEmpty:1,chain:1,sample:3,partition:3,groupBy:3,countBy:3,sortBy:3,indexBy:3,findIndex:3,findLastIndex:3},"models"],[v,{keys:1,values:1,pairs:1,invert:1,pick:0,omit:0,chain:1,isEmpty:1},"attributes"]],(function(t){var e=t[0],r=t[1],i=t[2];e.mixin=function(t){var r=n.reduce(n.functions(t),(function(t,e){return t[e]=0,t}),{});T(e,t,r,i)},T(e,n,r,i)})),e.sync=function(t,r,i){var o=L[t];n.defaults(i||(i={}),{emulateHTTP:e.emulateHTTP,emulateJSON:e.emulateJSON});var a={type:o,dataType:"json"};if(i.url||(a.url=n.result(r,"url")||H()),null!=i.data||!r||"create"!==t&&"update"!==t&&"patch"!==t||(a.contentType="application/json",a.data=JSON.stringify(i.attrs||r.toJSON(i))),i.emulateJSON&&(a.contentType="application/x-www-form-urlencoded",a.data=a.data?{model:a.data}:{}),i.emulateHTTP&&("PUT"===o||"DELETE"===o||"PATCH"===o)){a.type="POST",i.emulateJSON&&(a.data._method=o);var s=i.beforeSend;i.beforeSend=function(t){if(t.setRequestHeader("X-HTTP-Method-Override",o),s)return s.apply(this,arguments)}}"GET"===a.type||i.emulateJSON||(a.processData=!1);var l=i.error;i.error=function(t,e,n){i.textStatus=e,i.errorThrown=n,l&&l.call(i.context,t,e,n)};var u=i.xhr=e.ajax(n.extend(a,i));return r.trigger("request",r,u,i),u};var L={create:"POST",update:"PUT",patch:"PATCH",delete:"DELETE",read:"GET"};e.ajax=function(){return e.$.ajax.apply(e.$,arguments)};var I=e.Router=function(t){t||(t={}),this.preinitialize.apply(this,arguments),t.routes&&(this.routes=t.routes),this._bindRoutes(),this.initialize.apply(this,arguments)},F=/\((.*?)\)/g,$=/(\(\?)?:\w+/g,R=/\*\w+/g,U=/[\-{}\[\]+?.,\\\^$|#\s]/g;n.extend(I.prototype,s,{preinitialize:function(){},initialize:function(){},route:function(t,r,i){n.isRegExp(t)||(t=this._routeToRegExp(t)),n.isFunction(r)&&(i=r,r=""),i||(i=this[r]);var o=this;return e.history.route(t,(function(n){var a=o._extractParameters(t,n);!1!==o.execute(i,a,r)&&(o.trigger.apply(o,["route:"+r].concat(a)),o.trigger("route",r,a),e.history.trigger("route",o,r,a))})),this},execute:function(t,e,n){t&&t.apply(this,e)},navigate:function(t,n){return e.history.navigate(t,n),this},_bindRoutes:function(){if(this.routes){this.routes=n.result(this,"routes");for(var t,e=n.keys(this.routes);null!=(t=e.pop());)this.route(t,this.routes[t])}},_routeToRegExp:function(t){return t=t.replace(U,"\\$&").replace(F,"(?:$1)?").replace($,(function(t,e){return e?t:"([^/?]+)"})).replace(R,"([^?]*?)"),new RegExp("^"+t+"(?:\\?([\\s\\S]*))?$")},_extractParameters:function(t,e){var r=t.exec(e).slice(1);return n.map(r,(function(t,e){return e===r.length-1?t||null:t?decodeURIComponent(t):null}))}});var M=e.History=function(){this.handlers=[],this.checkUrl=this.checkUrl.bind(this),"undefined"!=typeof window&&(this.location=window.location,this.history=window.history)},B=/^[#\/]|\s+$/g,z=/^\/+|\/+$/g,D=/#.*$/;M.started=!1,n.extend(M.prototype,s,{interval:50,atRoot:function(){return this.location.pathname.replace(/[^\/]$/,"$&/")===this.root&&!this.getSearch()},matchRoot:function(){return this.decodeFragment(this.location.pathname).slice(0,this.root.length-1)+"/"===this.root},decodeFragment:function(t){return decodeURI(t.replace(/%25/g,"%2525"))},getSearch:function(){var t=this.location.href.replace(/#.*/,"").match(/\?.+/);return t?t[0]:""},getHash:function(t){var e=(t||this).location.href.match(/#(.*)$/);return e?e[1]:""},getPath:function(){var t=this.decodeFragment(this.location.pathname+this.getSearch()).slice(this.root.length-1);return"/"===t.charAt(0)?t.slice(1):t},getFragment:function(t){return null==t&&(t=this._usePushState||!this._wantsHashChange?this.getPath():this.getHash()),t.replace(B,"")},start:function(t){if(M.started)throw new Error("Backbone.history has already been started");if(M.started=!0,this.options=n.extend({root:"/"},this.options,t),this.root=this.options.root,this._trailingSlash=this.options.trailingSlash,this._wantsHashChange=!1!==this.options.hashChange,this._hasHashChange="onhashchange"in window&&(void 0===document.documentMode||document.documentMode>7),this._useHashChange=this._wantsHashChange&&this._hasHashChange,this._wantsPushState=!!this.options.pushState,this._hasPushState=!(!this.history||!this.history.pushState),this._usePushState=this._wantsPushState&&this._hasPushState,this.fragment=this.getFragment(),this.root=("/"+this.root+"/").replace(z,"/"),this._wantsHashChange&&this._wantsPushState){if(!this._hasPushState&&!this.atRoot()){var e=this.root.slice(0,-1)||"/";return this.location.replace(e+"#"+this.getPath()),!0}this._hasPushState&&this.atRoot()&&this.navigate(this.getHash(),{replace:!0})}if(!this._hasHashChange&&this._wantsHashChange&&!this._usePushState){this.iframe=document.createElement("iframe"),this.iframe.src="javascript:0",this.iframe.style.display="none",this.iframe.tabIndex=-1;var r=document.body,i=r.insertBefore(this.iframe,r.firstChild).contentWindow;i.document.open(),i.document.close(),i.location.hash="#"+this.fragment}var o=window.addEventListener||function(t,e){return attachEvent("on"+t,e)};if(this._usePushState?o("popstate",this.checkUrl,!1):this._useHashChange&&!this.iframe?o("hashchange",this.checkUrl,!1):this._wantsHashChange&&(this._checkUrlInterval=setInterval(this.checkUrl,this.interval)),!this.options.silent)return this.loadUrl()},stop:function(){var t=window.removeEventListener||function(t,e){return detachEvent("on"+t,e)};this._usePushState?t("popstate",this.checkUrl,!1):this._useHashChange&&!this.iframe&&t("hashchange",this.checkUrl,!1),this.iframe&&(document.body.removeChild(this.iframe),this.iframe=null),this._checkUrlInterval&&clearInterval(this._checkUrlInterval),M.started=!1},route:function(t,e){this.handlers.unshift({route:t,callback:e})},checkUrl:function(t){var e=this.getFragment();if(e===this.fragment&&this.iframe&&(e=this.getHash(this.iframe.contentWindow)),e===this.fragment)return!1;this.iframe&&this.navigate(e),this.loadUrl()},loadUrl:function(t){return!!this.matchRoot()&&(t=this.fragment=this.getFragment(t),n.some(this.handlers,(function(e){if(e.route.test(t))return e.callback(t),!0})))},navigate:function(t,e){if(!M.started)return!1;e&&!0!==e||(e={trigger:!!e}),t=this.getFragment(t||"");var n=this.root;this._trailingSlash||""!==t&&"?"!==t.charAt(0)||(n=n.slice(0,-1)||"/");var r=n+t;t=t.replace(D,"");var i=this.decodeFragment(t);if(this.fragment!==i){if(this.fragment=i,this._usePushState)this.history[e.replace?"replaceState":"pushState"]({},document.title,r);else{if(!this._wantsHashChange)return this.location.assign(r);if(this._updateHash(this.location,t,e.replace),this.iframe&&t!==this.getHash(this.iframe.contentWindow)){var o=this.iframe.contentWindow;e.replace||(o.document.open(),o.document.close()),this._updateHash(o.location,t,e.replace)}}return e.trigger?this.loadUrl(t):void 0}},_updateHash:function(t,e,n){if(n){var r=t.href.replace(/(javascript:|#).*$/,"");t.replace(r+"#"+e)}else t.hash="#"+e}}),e.history=new M;v.extend=y.extend=I.extend=E.extend=M.extend=function(t,e){var r,i=this;return r=t&&n.has(t,"constructor")?t.constructor:function(){return i.apply(this,arguments)},n.extend(r,i,e),r.prototype=n.create(i.prototype,t),r.prototype.constructor=r,r.__super__=i.prototype,r};var H=function(){throw new Error('A "url" property or function must be specified')},q=function(t,e){var n=e.error;e.error=function(r){n&&n.call(e.context,t,r,e),t.trigger("error",t,r,e)}};return e}(o,n,t,e)}.apply(e,r),void 0===i||(t.exports=i)},76515:function(t,e,n){"use strict";var r=n(87537),i=n.n(r),o=n(23645),a=n.n(o)()(i());a.push([t.id,".button-vue[data-v-3fa8511b]{margin-top:.5rem}","",{version:3,sources:["webpack://./core/src/components/login/LoginButton.vue"],names:[],mappings:"AACA,6BACC,gBAAA",sourcesContent:["\n.button-vue {\n\tmargin-top: .5rem;\n}\n"],sourceRoot:""}]),e.Z=a},70934:function(t,e,n){"use strict";var r=n(87537),i=n.n(r),o=n(23645),a=n.n(o)()(i());a.push([t.id,".login-form[data-v-e7af5b9e]{text-align:left;font-size:1rem}.login-form__fieldset[data-v-e7af5b9e]{width:100%;display:flex;flex-direction:column;gap:.5rem}.login-form__headline[data-v-e7af5b9e]{text-align:center;overflow-wrap:anywhere}","",{version:3,sources:["webpack://./core/src/components/login/LoginForm.vue"],names:[],mappings:"AACA,6BACC,eAAA,CACA,cAAA,CAEA,uCACC,UAAA,CACA,YAAA,CACA,qBAAA,CACA,SAAA,CAGD,uCACC,iBAAA,CACA,sBAAA",sourcesContent:["\n.login-form {\n\ttext-align: left;\n\tfont-size: 1rem;\n\n\t&__fieldset {\n\t\twidth: 100%;\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tgap: .5rem;\n\t}\n\n\t&__headline {\n\t\ttext-align: center;\n\t\toverflow-wrap: anywhere;\n\t}\n}\n"],sourceRoot:""}]),e.Z=a},34840:function(t,e,n){"use strict";var r=n(87537),i=n.n(r),o=n(23645),a=n.n(o)()(i());a.push([t.id,"fieldset[data-v-11c76644]{display:flex;flex-direction:column;gap:.5rem}fieldset[data-v-11c76644] label{text-align:initial}.update[data-v-11c76644]{margin:0 auto}","",{version:3,sources:["webpack://./core/src/components/login/PasswordLessLoginForm.vue"],names:[],mappings:"AACA,0BACC,YAAA,CACA,qBAAA,CACA,SAAA,CAEA,gCACC,kBAAA,CAIF,yBACC,aAAA",sourcesContent:["\nfieldset {\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 0.5rem;\n\n\t:deep(label) {\n\t\ttext-align: initial;\n\t}\n}\n\n.update {\n\tmargin: 0 auto;\n}\n"],sourceRoot:""}]),e.Z=a},72076:function(t,e,n){"use strict";var r=n(87537),i=n.n(r),o=n(23645),a=n.n(o)()(i());a.push([t.id,".login-form[data-v-6636f1b2]{text-align:left;font-size:1rem}.login-form__fieldset[data-v-6636f1b2]{width:100%;display:flex;flex-direction:column;gap:.5rem}.login-form__link[data-v-6636f1b2]{display:block;font-weight:normal !important;padding-bottom:1rem;cursor:pointer;font-size:var(--default-font-size);text-align:center;padding:.5rem 1rem 1rem 1rem}","",{version:3,sources:["webpack://./core/src/components/login/ResetPassword.vue"],names:[],mappings:"AACA,6BACC,eAAA,CACA,cAAA,CAEA,uCACC,UAAA,CACA,YAAA,CACA,qBAAA,CACA,SAAA,CAGD,mCACC,aAAA,CACA,6BAAA,CACA,mBAAA,CACA,cAAA,CACA,kCAAA,CACA,iBAAA,CACA,4BAAA",sourcesContent:["\n.login-form {\n\ttext-align: left;\n\tfont-size: 1rem;\n\n\t&__fieldset {\n\t\twidth: 100%;\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tgap: .5rem;\n\t}\n\n\t&__link {\n\t\tdisplay: block;\n\t\tfont-weight: normal !important;\n\t\tpadding-bottom: 1rem;\n\t\tcursor: pointer;\n\t\tfont-size: var(--default-font-size);\n\t\ttext-align: center;\n\t\tpadding: .5rem 1rem 1rem 1rem;\n\t}\n}\n"],sourceRoot:""}]),e.Z=a},52454:function(t,e,n){"use strict";var r=n(87537),i=n.n(r),o=n(23645),a=n.n(o)()(i());a.push([t.id,"body{font-size:var(--default-font-size)}.login-box{width:320px;box-sizing:border-box}.login-box__link{display:block;padding:1rem;font-size:var(--default-font-size);text-align:center;font-weight:normal !important}.login-box.guest-box,footer{color:var(--color-main-text);background-color:var(--color-main-background-blur);-webkit-backdrop-filter:var(--filter-background-blur);backdrop-filter:var(--filter-background-blur)}footer{min-width:320px;box-sizing:border-box;box-shadow:0 0 10px var(--color-box-shadow);border-radius:var(--border-radius-pill);padding:6px 24px;margin-bottom:1rem;min-height:unset}footer p.info{margin:auto 0px}.fade-enter-active,.fade-leave-active{transition:opacity .3s}.fade-enter,.fade-leave-to{opacity:0}.alternative-logins{display:flex;flex-direction:column;gap:.75rem}.alternative-logins .button-vue{box-sizing:border-box}.login-passwordless .button-vue{margin-top:.5rem}","",{version:3,sources:["webpack://./core/src/views/Login.vue"],names:[],mappings:"AACA,KACC,kCAAA,CAGD,WAEC,WAAA,CACA,qBAAA,CAEA,iBACC,aAAA,CACA,YAAA,CACA,kCAAA,CACA,iBAAA,CACA,6BAAA,CAKF,4BACC,4BAAA,CACA,kDAAA,CACA,qDAAA,CACA,6CAAA,CAGD,OAEC,eAAA,CACA,qBAAA,CAEA,2CAAA,CAEA,uCAAA,CACA,gBAAA,CAEA,kBAAA,CACA,gBAAA,CAGA,cACC,eAAA,CAIF,sCACC,sBAAA,CAED,2BACC,SAAA,CAGD,oBACC,YAAA,CACA,qBAAA,CACA,UAAA,CAEA,gCACC,qBAAA,CAKD,gCACC,gBAAA",sourcesContent:["\nbody {\n\tfont-size: var(--default-font-size);\n}\n\n.login-box {\n\t// Same size as dashboard panels\n\twidth: 320px;\n\tbox-sizing: border-box;\n\n\t&__link {\n\t\tdisplay: block;\n\t\tpadding: 1rem;\n\t\tfont-size: var(--default-font-size);\n\t\ttext-align: center;\n\t\tfont-weight: normal !important;\n\t}\n}\n\n// Same look like a dashboard panel\n.login-box.guest-box, footer {\n\tcolor: var(--color-main-text);\n\tbackground-color: var(--color-main-background-blur);\n\t-webkit-backdrop-filter: var(--filter-background-blur);\n\tbackdrop-filter: var(--filter-background-blur);\n}\n\nfooter {\n\t// Usually the same size as the login box, but allow longer texts\n\tmin-width: 320px;\n\tbox-sizing: border-box;\n\t// align with login box\n\tbox-shadow: 0 0 10px var(--color-box-shadow);\n\t// set border to pill style and adjust padding for it\n\tborder-radius: var(--border-radius-pill);\n\tpadding: 6px 24px;\n\t// always show above bottom\n\tmargin-bottom: 1rem;\n\tmin-height: unset;\n\n\t// reset margin to reduce height of pill\n\tp.info {\n\t\tmargin: auto 0px;\n\t}\n}\n\n.fade-enter-active, .fade-leave-active {\n\ttransition: opacity .3s;\n}\n.fade-enter, .fade-leave-to /* .fade-leave-active below version 2.1.8 */ {\n\topacity: 0;\n}\n\n.alternative-logins {\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 0.75rem;\n\n\t.button-vue {\n\t\tbox-sizing: border-box;\n\t}\n}\n\n.login-passwordless {\n\t.button-vue {\n\t\tmargin-top: 0.5rem;\n\t}\n}\n"],sourceRoot:""}]),e.Z=a},74778:function(t,e,n){"use strict";var r=n(87537),i=n.n(r),o=n(23645),a=n.n(o)()(i());a.push([t.id,"\nfieldset[data-v-4dc21d74] {\n\ttext-align: center;\n}\ninput[type=submit][data-v-4dc21d74] {\n\tmargin-top: 20px;\n}\n","",{version:3,sources:["webpack://./core/src/components/login/UpdatePassword.vue"],names:[],mappings:";AA4IA;CACA,kBAAA;AACA;AAEA;CACA,gBAAA;AACA",sourcesContent:["\x3c!--\n - @copyright Copyright (c) 2019 Julius Härtl <jus@bitgrid.net>\n -\n - @author Julius Härtl <jus@bitgrid.net>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n --\x3e\n\n<template>\n\t<form @submit.prevent=\"submit\">\n\t\t<fieldset>\n\t\t\t<p>\n\t\t\t\t<label for=\"password\" class=\"infield\">{{ t('core', 'New password') }}</label>\n\t\t\t\t<input id=\"password\"\n\t\t\t\t\tv-model=\"password\"\n\t\t\t\t\ttype=\"password\"\n\t\t\t\t\tname=\"password\"\n\t\t\t\t\tautocomplete=\"new-password\"\n\t\t\t\t\tautocapitalize=\"none\"\n\t\t\t\t\tautocorrect=\"off\"\n\t\t\t\t\trequired\n\t\t\t\t\t:placeholder=\"t('core', 'New password')\">\n\t\t\t</p>\n\n\t\t\t<div v-if=\"encrypted\" class=\"update\">\n\t\t\t\t<p>\n\t\t\t\t\t{{ t('core', 'Your files are encrypted. There will be no way to get your data back after your password is reset. If you are not sure what to do, please contact your administrator before you continue. Do you really want to continue?') }}\n\t\t\t\t</p>\n\t\t\t\t<input id=\"encrypted-continue\"\n\t\t\t\t\tv-model=\"proceed\"\n\t\t\t\t\ttype=\"checkbox\"\n\t\t\t\t\tclass=\"checkbox\">\n\t\t\t\t<label for=\"encrypted-continue\">\n\t\t\t\t\t{{ t('core', 'I know what I\\'m doing') }}\n\t\t\t\t</label>\n\t\t\t</div>\n\n\t\t\t<LoginButton :loading=\"loading\"\n\t\t\t\t:value=\"t('core', 'Reset password')\"\n\t\t\t\t:value-loading=\"t('core', 'Resetting password')\" />\n\n\t\t\t<p v-if=\"error && message\" :class=\"{warning: error}\">\n\t\t\t\t{{ message }}\n\t\t\t</p>\n\t\t</fieldset>\n\t</form>\n</template>\n\n<script>\nimport Axios from '@nextcloud/axios'\nimport LoginButton from './LoginButton.vue'\n\nexport default {\n\tname: 'UpdatePassword',\n\tcomponents: {\n\t\tLoginButton,\n\t},\n\tprops: {\n\t\tusername: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tresetPasswordTarget: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t},\n\tdata() {\n\t\treturn {\n\t\t\terror: false,\n\t\t\tloading: false,\n\t\t\tmessage: undefined,\n\t\t\tuser: this.username,\n\t\t\tpassword: '',\n\t\t\tencrypted: false,\n\t\t\tproceed: false,\n\t\t}\n\t},\n\twatch: {\n\t\tusername(value) {\n\t\t\tthis.user = value\n\t\t},\n\t},\n\tmethods: {\n\t\tasync submit() {\n\t\t\tthis.loading = true\n\t\t\tthis.error = false\n\t\t\tthis.message = ''\n\n\t\t\ttry {\n\t\t\t\tconst { data } = await Axios.post(this.resetPasswordTarget, {\n\t\t\t\t\tpassword: this.password,\n\t\t\t\t\tproceed: this.proceed,\n\t\t\t\t})\n\t\t\t\tif (data && data.status === 'success') {\n\t\t\t\t\tthis.message = 'send-success'\n\t\t\t\t\tthis.$emit('update:username', this.user)\n\t\t\t\t\tthis.$emit('done')\n\t\t\t\t} else if (data && data.encryption) {\n\t\t\t\t\tthis.encrypted = true\n\t\t\t\t} else if (data && data.msg) {\n\t\t\t\t\tthrow new Error(data.msg)\n\t\t\t\t} else {\n\t\t\t\t\tthrow new Error()\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\tthis.error = true\n\t\t\t\tthis.message = e.message ? e.message : t('core', 'Password cannot be changed. Please contact your administrator.')\n\t\t\t} finally {\n\t\t\t\tthis.loading = false\n\t\t\t}\n\t\t},\n\t},\n}\n<\/script>\n\n<style scoped>\n\tfieldset {\n\t\ttext-align: center;\n\t}\n\n\tinput[type=submit] {\n\t\tmargin-top: 20px;\n\t}\n</style>\n"],sourceRoot:""}]),e.Z=a},76591:function(t){"undefined"==typeof dav&&(dav={}),dav._XML_CHAR_MAP={"<":"&lt;",">":"&gt;","&":"&amp;",'"':"&quot;","'":"&apos;"},dav._escapeXml=function(t){return t.replace(/[<>&"']/g,(function(t){return dav._XML_CHAR_MAP[t]}))},dav.Client=function(t){var e;for(e in t)this[e]=t[e]},dav.Client.prototype={baseUrl:null,userName:null,password:null,xmlNamespaces:{"DAV:":"d"},propFind:function(t,e,n,r){void 0===n&&(n="0"),n=""+n,(r=r||{}).Depth=n,r["Content-Type"]="application/xml; charset=utf-8";var i,o='<?xml version="1.0"?>\n<d:propfind ';for(i in this.xmlNamespaces)o+=" xmlns:"+this.xmlNamespaces[i]+'="'+i+'"';for(var a in o+=">\n <d:prop>\n",e)if(e.hasOwnProperty(a)){var s=this.parseClarkNotation(e[a]);this.xmlNamespaces[s.namespace]?o+=" <"+this.xmlNamespaces[s.namespace]+":"+s.name+" />\n":o+=" <x:"+s.name+' xmlns:x="'+s.namespace+'" />\n'}return o+=" </d:prop>\n",o+="</d:propfind>",this.request("PROPFIND",t,r,o).then(function(t){return"0"===n?{status:t.status,body:t.body[0],xhr:t.xhr}:{status:t.status,body:t.body,xhr:t.xhr}}.bind(this))},_renderPropSet:function(t){var e=" <d:set>\n <d:prop>\n";for(var n in t)if(t.hasOwnProperty(n)){var r,i=this.parseClarkNotation(n),o=t[n];"d:resourcetype"!=(r=this.xmlNamespaces[i.namespace]?this.xmlNamespaces[i.namespace]+":"+i.name:"x:"+i.name+' xmlns:x="'+i.namespace+'"')&&(o=dav._escapeXml(o)),e+=" <"+r+">"+o+"</"+r+">\n"}return(e+=" </d:prop>\n")+" </d:set>\n"},propPatch:function(t,e,n){(n=n||{})["Content-Type"]="application/xml; charset=utf-8";var r,i='<?xml version="1.0"?>\n<d:propertyupdate ';for(r in this.xmlNamespaces)i+=" xmlns:"+this.xmlNamespaces[r]+'="'+r+'"';return i+=">\n"+this._renderPropSet(e),i+="</d:propertyupdate>",this.request("PROPPATCH",t,n,i).then(function(t){return{status:t.status,body:t.body,xhr:t.xhr}}.bind(this))},mkcol:function(t,e,n){var r="";if((n=n||{})["Content-Type"]="application/xml; charset=utf-8",e){var i;for(i in r='<?xml version="1.0"?>\n<d:mkcol',this.xmlNamespaces)r+=" xmlns:"+this.xmlNamespaces[i]+'="'+i+'"';r+=">\n"+this._renderPropSet(e),r+="</d:mkcol>"}return this.request("MKCOL",t,n,r).then(function(t){return{status:t.status,body:t.body,xhr:t.xhr}}.bind(this))},request:function(t,e,n,r,i,o){var a,s=this,l=this.xhrProvider();for(a in n=n||{},i=i||"",this.userName&&(n.Authorization="Basic "+btoa(this.userName+":"+this.password)),l.open(t,this.resolveUrl(e),!0),n)l.setRequestHeader(a,n[a]);return l.responseType=i,o&&"function"==typeof o.onProgress&&("PUT"===t||"POST"===t?l.upload.addEventListener("progress",(function(t){o.onProgress(t)}),!1):l.addEventListener("progress",(function(t){o.onProgress(t)}),!1)),void 0===r?l.send():l.send(r),new Promise((function(t,e){l.onreadystatechange=function(){if(4===l.readyState){var e=l.response;207===l.status&&(e=s.parseMultiStatus(l.response)),t({body:e,status:l.status,xhr:l})}},l.ontimeout=function(){e(new Error("Timeout exceeded"))}}))},xhrProvider:function(){return new XMLHttpRequest},_parsePropNode:function(t){var e=null;if(t.childNodes&&t.childNodes.length>0){for(var n=[],r=0;r<t.childNodes.length;r++){var i=t.childNodes[r];1===i.nodeType&&n.push(i)}n.length&&(e=n)}return e||t.textContent||t.text||""},parseMultiStatus:function(t){for(var e=(new DOMParser).parseFromString(t,"application/xml"),n=function(t){var e;for(e in this.xmlNamespaces)if(this.xmlNamespaces[e]===t)return e}.bind(this),r=e.evaluate("/d:multistatus/d:response",e,n,XPathResult.ANY_TYPE,null),i=[],o=r.iterateNext();o;){var a={href:null,propStat:[]};a.href=e.evaluate("string(d:href)",o,n,XPathResult.ANY_TYPE,null).stringValue;for(var s=e.evaluate("d:propstat",o,n,XPathResult.ANY_TYPE,null),l=s.iterateNext();l;){for(var u={status:e.evaluate("string(d:status)",l,n,XPathResult.ANY_TYPE,null).stringValue,properties:{}},c=e.evaluate("d:prop/*",l,n,XPathResult.ANY_TYPE,null),f=c.iterateNext();f;){var d=this._parsePropNode(f);u.properties["{"+f.namespaceURI+"}"+f.localName]=d,f=c.iterateNext()}a.propStat.push(u),l=s.iterateNext()}i.push(a),o=r.iterateNext()}return i},resolveUrl:function(t){if(/^https?:\/\//i.test(t))return t;var e=this.parseUrl(this.baseUrl);return t.charAt("/")?e.root+t:(e.root,-1!==e.path.lastIndexOf("/")&&e.path.subString(0,e.path.lastIndexOf("/")),t)},parseUrl:function(t){var e=t.match(/^(?:([A-Za-z]+):)?(\/{0,3})([0-9.\-A-Za-z]+)(?::(\d+))?(?:\/([^?#]*))?(?:\?([^#]*))?(?:#(.*))?$/),n={url:e[0],scheme:e[1],host:e[3],port:e[4],path:e[5],query:e[6],fragment:e[7]};return n.root=n.scheme+"://"+n.host+(n.port?":"+n.port:""),n},parseClarkNotation:function(t){var e=t.match(/^{([^}]+)}(.*)$/);if(e)return{name:e[2],namespace:e[1]}}},void 0!==t.exports&&(t.exports.Client=dav.Client),t.exports={dav:dav}},10944:function(t,e,n){var r=n(40202);t.exports=(r.default||r).template({1:function(t,e,n,r,i){var o,a=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return null!=(o=a(n,"if").call(null!=e?e:t.nullContext||{},null!=(o=null!=e?a(e,"contact"):e)?a(o,"profileUrl"):o,{name:"if",hash:{},fn:t.program(2,i,0),inverse:t.program(5,i,0),data:i,loc:{start:{line:2,column:1},end:{line:10,column:8}}}))?o:""},2:function(t,e,n,r,i){var o,a=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return null!=(o=a(n,"if").call(null!=e?e:t.nullContext||{},null!=(o=null!=e?a(e,"contact"):e)?a(o,"profileTitle"):o,{name:"if",hash:{},fn:t.program(3,i,0),inverse:t.noop,data:i,loc:{start:{line:3,column:2},end:{line:7,column:9}}}))?o:""},3:function(t,e,n,r,i){var o,a=t.lambda,s=t.escapeExpression,l=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return'\t\t\t<a class="profile-link--avatar" href="'+s(a(null!=(o=null!=e?l(e,"contact"):e)?l(o,"profileUrl"):o,e))+'">\n\t\t\t\t<img src="'+s(a(null!=(o=null!=e?l(e,"contact"):e)?l(o,"avatar"):o,e))+'&size=32" class="avatar" srcset="'+s(a(null!=(o=null!=e?l(e,"contact"):e)?l(o,"avatar"):o,e))+"&size=32 1x, "+s(a(null!=(o=null!=e?l(e,"contact"):e)?l(o,"avatar"):o,e))+"&size=64 2x, "+s(a(null!=(o=null!=e?l(e,"contact"):e)?l(o,"avatar"):o,e))+'&size=128 4x" alt="'+s(a(null!=(o=null!=e?l(e,"contact"):e)?l(o,"avatarLabel"):o,e))+'">\n\t\t\t</a>\n'},5:function(t,e,n,r,i){var o,a=t.lambda,s=t.escapeExpression,l=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return'\t\t<img src="'+s(a(null!=(o=null!=e?l(e,"contact"):e)?l(o,"avatar"):o,e))+'&size=32" class="avatar" srcset="'+s(a(null!=(o=null!=e?l(e,"contact"):e)?l(o,"avatar"):o,e))+"&size=32 1x, "+s(a(null!=(o=null!=e?l(e,"contact"):e)?l(o,"avatar"):o,e))+"&size=64 2x, "+s(a(null!=(o=null!=e?l(e,"contact"):e)?l(o,"avatar"):o,e))+'&size=128 4x" alt="'+s(a(null!=(o=null!=e?l(e,"contact"):e)?l(o,"avatarLabel"):o,e))+'">\n'},7:function(t,e,n,r,i){var o,a=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return null!=(o=a(n,"if").call(null!=e?e:t.nullContext||{},null!=(o=null!=e?a(e,"contact"):e)?a(o,"profileUrl"):o,{name:"if",hash:{},fn:t.program(8,i,0),inverse:t.program(11,i,0),data:i,loc:{start:{line:12,column:1},end:{line:20,column:8}}}))?o:""},8:function(t,e,n,r,i){var o,a=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return null!=(o=a(n,"if").call(null!=e?e:t.nullContext||{},null!=(o=null!=e?a(e,"contact"):e)?a(o,"profileTitle"):o,{name:"if",hash:{},fn:t.program(9,i,0),inverse:t.noop,data:i,loc:{start:{line:13,column:2},end:{line:17,column:9}}}))?o:""},9:function(t,e,n,r,i){var o,a=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return'\t\t\t<a class="profile-link--avatar" href="'+t.escapeExpression(t.lambda(null!=(o=null!=e?a(e,"contact"):e)?a(o,"profileUrl"):o,e))+'">\n\t\t\t\t<div class="avatar"></div>\n\t\t\t</a>\n'},11:function(t,e,n,r,i){return'\t\t<div class="avatar"></div>\n'},13:function(t,e,n,r,i){var o,a=null!=e?e:t.nullContext||{},s=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return(null!=(o=s(n,"if").call(a,null!=(o=null!=e?s(e,"contact"):e)?s(o,"profileTitle"):o,{name:"if",hash:{},fn:t.program(14,i,0),inverse:t.noop,data:i,loc:{start:{line:23,column:1},end:{line:29,column:8}}}))?o:"")+(null!=(o=s(n,"if").call(a,null!=(o=null!=e?s(e,"contact"):e)?s(o,"topAction"):o,{name:"if",hash:{},fn:t.program(16,i,0),inverse:t.noop,data:i,loc:{start:{line:30,column:1},end:{line:34,column:8}}}))?o:"")},14:function(t,e,n,r,i){var o,a=t.lambda,s=t.escapeExpression,l=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return'\t\t<a class="body profile-link--full-name" href="'+s(a(null!=(o=null!=e?l(e,"contact"):e)?l(o,"profileUrl"):o,e))+'">\n\t\t\t<div class="full-name">'+s(a(null!=(o=null!=e?l(e,"contact"):e)?l(o,"fullName"):o,e))+'</div>\n\t\t\t<div class="last-message">'+s(a(null!=(o=null!=e?l(e,"contact"):e)?l(o,"lastMessage"):o,e))+'</div>\n\t\t\t<div class="email-address">'+s(a(null!=(o=null!=e?l(e,"contact"):e)?l(o,"emailAddresses"):o,e))+"</div>\n\t\t</a>\n"},16:function(t,e,n,r,i){var o,a=t.lambda,s=t.escapeExpression,l=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return'\t\t<a class="top-action" href="'+s(a(null!=(o=null!=(o=null!=e?l(e,"contact"):e)?l(o,"topAction"):o)?l(o,"hyperlink"):o,e))+'" title="'+s(a(null!=(o=null!=(o=null!=e?l(e,"contact"):e)?l(o,"topAction"):o)?l(o,"title"):o,e))+'" aria-label="'+s(a(null!=(o=null!=(o=null!=e?l(e,"contact"):e)?l(o,"topAction"):o)?l(o,"title"):o,e))+'">\n\t\t\t<img src="'+s(a(null!=(o=null!=(o=null!=e?l(e,"contact"):e)?l(o,"topAction"):o)?l(o,"icon"):o,e))+'" alt="'+s(a(null!=(o=null!=(o=null!=e?l(e,"contact"):e)?l(o,"topAction"):o)?l(o,"title"):o,e))+'">\n\t\t</a>\n'},18:function(t,e,n,r,i){var o,a=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return null!=(o=a(n,"if").call(null!=e?e:t.nullContext||{},null!=(o=null!=e?a(e,"contact"):e)?a(o,"topAction"):o,{name:"if",hash:{},fn:t.program(19,i,0),inverse:t.program(21,i,0),data:i,loc:{start:{line:35,column:0},end:{line:50,column:0}}}))?o:""},19:function(t,e,n,r,i){var o,a=t.lambda,s=t.escapeExpression,l=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return'\t<a class="body" href="'+s(a(null!=(o=null!=(o=null!=e?l(e,"contact"):e)?l(o,"topAction"):o)?l(o,"hyperlink"):o,e))+'">\n\t\t<div class="full-name">'+s(a(null!=(o=null!=e?l(e,"contact"):e)?l(o,"fullName"):o,e))+'</div>\n\t\t<div class="last-message">'+s(a(null!=(o=null!=e?l(e,"contact"):e)?l(o,"lastMessage"):o,e))+'</div>\n\t\t<div class="email-address">'+s(a(null!=(o=null!=e?l(e,"contact"):e)?l(o,"emailAddresses"):o,e))+'</div>\n\t</a>\n \t<a class="top-action" href="'+s(a(null!=(o=null!=(o=null!=e?l(e,"contact"):e)?l(o,"topAction"):o)?l(o,"hyperlink"):o,e))+'" title="'+s(a(null!=(o=null!=(o=null!=e?l(e,"contact"):e)?l(o,"topAction"):o)?l(o,"title"):o,e))+'">\n \t\t<img src="'+s(a(null!=(o=null!=(o=null!=e?l(e,"contact"):e)?l(o,"topAction"):o)?l(o,"icon"):o,e))+'" alt="'+s(a(null!=(o=null!=(o=null!=e?l(e,"contact"):e)?l(o,"topAction"):o)?l(o,"title"):o,e))+'">\n\t</a>\n'},21:function(t,e,n,r,i){var o,a=t.lambda,s=t.escapeExpression,l=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return'\t<div class="body">\n\t\t<div class="full-name">'+s(a(null!=(o=null!=e?l(e,"contact"):e)?l(o,"fullName"):o,e))+'</div>\n\t\t<div class="last-message">'+s(a(null!=(o=null!=e?l(e,"contact"):e)?l(o,"lastMessage"):o,e))+'</div>\n\t\t<div class="email-address">'+s(a(null!=(o=null!=e?l(e,"contact"):e)?l(o,"emailAddresses"):o,e))+"</div>\n\t</div>\n"},23:function(t,e,n,r,i){var o,a=t.lambda,s=t.escapeExpression,l=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return'<a class="second-action" href="'+s(a(null!=(o=null!=(o=null!=e?l(e,"contact"):e)?l(o,"secondAction"):o)?l(o,"hyperlink"):o,e))+'" aria-label="'+s(a(null!=(o=null!=(o=null!=e?l(e,"contact"):e)?l(o,"secondAction"):o)?l(o,"title"):o,e))+'" title="'+s(a(null!=(o=null!=(o=null!=e?l(e,"contact"):e)?l(o,"secondAction"):o)?l(o,"title"):o,e))+'">\n\t<img src="'+s(a(null!=(o=null!=(o=null!=e?l(e,"contact"):e)?l(o,"secondAction"):o)?l(o,"icon"):o,e))+'" alt="'+s(a(null!=(o=null!=(o=null!=e?l(e,"contact"):e)?l(o,"secondAction"):o)?l(o,"title"):o,e))+'">\n</a>\n'},25:function(t,e,n,r,i){var o,a=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return'\t<button class="other-actions icon-more"></button>\n\t<div class="menu popovermenu">\n\t\t<ul>\n'+(null!=(o=a(n,"each").call(null!=e?e:t.nullContext||{},null!=(o=null!=e?a(e,"contact"):e)?a(o,"actions"):o,{name:"each",hash:{},fn:t.program(26,i,0),inverse:t.noop,data:i,loc:{start:{line:60,column:3},end:{line:67,column:12}}}))?o:"")+"\t\t</ul>\n\t</div>\n"},26:function(t,e,n,r,i){var o,a=null!=e?e:t.nullContext||{},s=t.hooks.helperMissing,l="function",u=t.escapeExpression,c=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return'\t\t\t<li>\n\t\t\t\t<a href="'+u(typeof(o=null!=(o=c(n,"hyperlink")||(null!=e?c(e,"hyperlink"):e))?o:s)===l?o.call(a,{name:"hyperlink",hash:{},data:i,loc:{start:{line:62,column:13},end:{line:62,column:26}}}):o)+'">\n\t\t\t\t\t<img src="'+u(typeof(o=null!=(o=c(n,"icon")||(null!=e?c(e,"icon"):e))?o:s)===l?o.call(a,{name:"icon",hash:{},data:i,loc:{start:{line:63,column:15},end:{line:63,column:23}}}):o)+'" alt="">\n\t\t\t\t\t<span>'+u(typeof(o=null!=(o=c(n,"title")||(null!=e?c(e,"title"):e))?o:s)===l?o.call(a,{name:"title",hash:{},data:i,loc:{start:{line:64,column:11},end:{line:64,column:20}}}):o)+"</span>\n\t\t\t\t</a>\n\t\t\t</li>\n"},compiler:[8,">= 4.3.0"],main:function(t,e,n,r,i){var o,a=null!=e?e:t.nullContext||{},s=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return(null!=(o=s(n,"if").call(a,null!=(o=null!=e?s(e,"contact"):e)?s(o,"avatar"):o,{name:"if",hash:{},fn:t.program(1,i,0),inverse:t.program(7,i,0),data:i,loc:{start:{line:1,column:0},end:{line:21,column:7}}}))?o:"")+(null!=(o=s(n,"if").call(a,null!=(o=null!=e?s(e,"contact"):e)?s(o,"profileUrl"):o,{name:"if",hash:{},fn:t.program(13,i,0),inverse:t.program(18,i,0),data:i,loc:{start:{line:22,column:0},end:{line:50,column:7}}}))?o:"")+(null!=(o=s(n,"if").call(a,null!=(o=null!=e?s(e,"contact"):e)?s(o,"hasTwoActions"):o,{name:"if",hash:{},fn:t.program(23,i,0),inverse:t.noop,data:i,loc:{start:{line:51,column:0},end:{line:55,column:7}}}))?o:"")+(null!=(o=s(n,"if").call(a,null!=(o=null!=e?s(e,"contact"):e)?s(o,"hasManyActions"):o,{name:"if",hash:{},fn:t.program(25,i,0),inverse:t.noop,data:i,loc:{start:{line:56,column:0},end:{line:70,column:7}}}))?o:"")},useData:!0})},20421:function(t,e,n){var r=n(40202);t.exports=(r.default||r).template({compiler:[8,">= 4.3.0"],main:function(t,e,n,r,i){var o,a=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return'<div class="emptycontent">\n\t<div class="icon-search"></div>\n\t<h2>'+t.escapeExpression("function"==typeof(o=null!=(o=a(n,"couldNotLoadText")||(null!=e?a(e,"couldNotLoadText"):e))?o:t.hooks.helperMissing)?o.call(null!=e?e:t.nullContext||{},{name:"couldNotLoadText",hash:{},data:i,loc:{start:{line:3,column:5},end:{line:3,column:25}}}):o)+"</h2>\n</div>\n"},useData:!0})},34083:function(t,e,n){var r=n(40202);t.exports=(r.default||r).template({1:function(t,e,n,r,i){var o,a=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return'<div class="emptycontent">\n\t<div class="icon-search"></div>\n\t<h2>'+t.escapeExpression("function"==typeof(o=null!=(o=a(n,"noContactsFoundText")||(null!=e?a(e,"noContactsFoundText"):e))?o:t.hooks.helperMissing)?o.call(null!=e?e:t.nullContext||{},{name:"noContactsFoundText",hash:{},data:i,loc:{start:{line:4,column:5},end:{line:4,column:28}}}):o)+"</h2>\n</div>\n"},3:function(t,e,n,r,i){var o,a=null!=e?e:t.nullContext||{},s=t.hooks.helperMissing,l="function",u=t.escapeExpression,c=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return'<div class="footer"><a href="'+u(typeof(o=null!=(o=c(n,"contactsAppURL")||(null!=e?c(e,"contactsAppURL"):e))?o:s)===l?o.call(a,{name:"contactsAppURL",hash:{},data:i,loc:{start:{line:9,column:29},end:{line:9,column:47}}}):o)+'">'+u(typeof(o=null!=(o=c(n,"showAllContactsText")||(null!=e?c(e,"showAllContactsText"):e))?o:s)===l?o.call(a,{name:"showAllContactsText",hash:{},data:i,loc:{start:{line:9,column:49},end:{line:9,column:72}}}):o)+"</a></div>\n"},5:function(t,e,n,r,i){var o,a=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return null!=(o=a(n,"if").call(null!=e?e:t.nullContext||{},null!=e?a(e,"canInstallApp"):e,{name:"if",hash:{},fn:t.program(6,i,0),inverse:t.noop,data:i,loc:{start:{line:10,column:0},end:{line:12,column:0}}}))?o:""},6:function(t,e,n,r,i){var o,a=null!=e?e:t.nullContext||{},s=t.hooks.helperMissing,l="function",u=t.escapeExpression,c=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return'<div class="footer"><a href="'+u(typeof(o=null!=(o=c(n,"contactsAppMgmtURL")||(null!=e?c(e,"contactsAppMgmtURL"):e))?o:s)===l?o.call(a,{name:"contactsAppMgmtURL",hash:{},data:i,loc:{start:{line:11,column:29},end:{line:11,column:51}}}):o)+'">'+u(typeof(o=null!=(o=c(n,"contactsAppMgmtText")||(null!=e?c(e,"contactsAppMgmtText"):e))?o:s)===l?o.call(a,{name:"contactsAppMgmtText",hash:{},data:i,loc:{start:{line:11,column:53},end:{line:11,column:76}}}):o)+"</a></div>\n"},compiler:[8,">= 4.3.0"],main:function(t,e,n,r,i){var o,a=null!=e?e:t.nullContext||{},s=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return(null!=(o=s(n,"unless").call(a,null!=(o=null!=e?s(e,"contacts"):e)?s(o,"length"):o,{name:"unless",hash:{},fn:t.program(1,i,0),inverse:t.noop,data:i,loc:{start:{line:1,column:0},end:{line:6,column:11}}}))?o:"")+'<div id="contactsmenu-contacts"></div>\n'+(null!=(o=s(n,"if").call(a,null!=e?s(e,"contactsAppEnabled"):e,{name:"if",hash:{},fn:t.program(3,i,0),inverse:t.program(5,i,0),data:i,loc:{start:{line:8,column:0},end:{line:12,column:7}}}))?o:"")},useData:!0})},95386:function(t,e,n){var r=n(40202);t.exports=(r.default||r).template({compiler:[8,">= 4.3.0"],main:function(t,e,n,r,i){var o,a=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return'<div class="emptycontent">\n\t<div class="icon-loading"></div>\n\t<h2>'+t.escapeExpression("function"==typeof(o=null!=(o=a(n,"loadingText")||(null!=e?a(e,"loadingText"):e))?o:t.hooks.helperMissing)?o.call(null!=e?e:t.nullContext||{},{name:"loadingText",hash:{},data:i,loc:{start:{line:3,column:5},end:{line:3,column:20}}}):o)+"</h2>\n</div>\n"},useData:!0})},66115:function(t,e,n){var r=n(40202);t.exports=(r.default||r).template({compiler:[8,">= 4.3.0"],main:function(t,e,n,r,i){var o,a=null!=e?e:t.nullContext||{},s=t.hooks.helperMissing,l="function",u=t.escapeExpression,c=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return'<label class="hidden-visually" for="contactsmenu-search">'+u(typeof(o=null!=(o=c(n,"searchContactsText")||(null!=e?c(e,"searchContactsText"):e))?o:s)===l?o.call(a,{name:"searchContactsText",hash:{},data:i,loc:{start:{line:1,column:57},end:{line:1,column:79}}}):o)+'</label>\n<input id="contactsmenu-search" type="search" placeholder="'+u(typeof(o=null!=(o=c(n,"searchContactsText")||(null!=e?c(e,"searchContactsText"):e))?o:s)===l?o.call(a,{name:"searchContactsText",hash:{},data:i,loc:{start:{line:2,column:59},end:{line:2,column:81}}}):o)+'" value="'+u(typeof(o=null!=(o=c(n,"searchTerm")||(null!=e?c(e,"searchTerm"):e))?o:s)===l?o.call(a,{name:"searchTerm",hash:{},data:i,loc:{start:{line:2,column:90},end:{line:2,column:104}}}):o)+'">\n<div class="content">\n</div>\n'},useData:!0})},46700:function(t,e,n){var r={"./af":42786,"./af.js":42786,"./ar":30867,"./ar-dz":14130,"./ar-dz.js":14130,"./ar-kw":96135,"./ar-kw.js":96135,"./ar-ly":56440,"./ar-ly.js":56440,"./ar-ma":47702,"./ar-ma.js":47702,"./ar-sa":16040,"./ar-sa.js":16040,"./ar-tn":37100,"./ar-tn.js":37100,"./ar.js":30867,"./az":31083,"./az.js":31083,"./be":9808,"./be.js":9808,"./bg":68338,"./bg.js":68338,"./bm":67438,"./bm.js":67438,"./bn":8905,"./bn-bd":76225,"./bn-bd.js":76225,"./bn.js":8905,"./bo":11560,"./bo.js":11560,"./br":1278,"./br.js":1278,"./bs":80622,"./bs.js":80622,"./ca":2468,"./ca.js":2468,"./cs":5822,"./cs.js":5822,"./cv":50877,"./cv.js":50877,"./cy":47373,"./cy.js":47373,"./da":24780,"./da.js":24780,"./de":59740,"./de-at":60217,"./de-at.js":60217,"./de-ch":60894,"./de-ch.js":60894,"./de.js":59740,"./dv":5300,"./dv.js":5300,"./el":50837,"./el.js":50837,"./en-au":78348,"./en-au.js":78348,"./en-ca":77925,"./en-ca.js":77925,"./en-gb":22243,"./en-gb.js":22243,"./en-ie":46436,"./en-ie.js":46436,"./en-il":47207,"./en-il.js":47207,"./en-in":44175,"./en-in.js":44175,"./en-nz":76319,"./en-nz.js":76319,"./en-sg":31662,"./en-sg.js":31662,"./eo":92915,"./eo.js":92915,"./es":55655,"./es-do":55251,"./es-do.js":55251,"./es-mx":96112,"./es-mx.js":96112,"./es-us":71146,"./es-us.js":71146,"./es.js":55655,"./et":5603,"./et.js":5603,"./eu":77763,"./eu.js":77763,"./fa":76959,"./fa.js":76959,"./fi":11897,"./fi.js":11897,"./fil":42549,"./fil.js":42549,"./fo":94694,"./fo.js":94694,"./fr":94470,"./fr-ca":63049,"./fr-ca.js":63049,"./fr-ch":52330,"./fr-ch.js":52330,"./fr.js":94470,"./fy":5044,"./fy.js":5044,"./ga":29295,"./ga.js":29295,"./gd":2101,"./gd.js":2101,"./gl":38794,"./gl.js":38794,"./gom-deva":27884,"./gom-deva.js":27884,"./gom-latn":23168,"./gom-latn.js":23168,"./gu":95349,"./gu.js":95349,"./he":24206,"./he.js":24206,"./hi":30094,"./hi.js":30094,"./hr":30316,"./hr.js":30316,"./hu":22138,"./hu.js":22138,"./hy-am":11423,"./hy-am.js":11423,"./id":29218,"./id.js":29218,"./is":90135,"./is.js":90135,"./it":90626,"./it-ch":10150,"./it-ch.js":10150,"./it.js":90626,"./ja":39183,"./ja.js":39183,"./jv":24286,"./jv.js":24286,"./ka":12105,"./ka.js":12105,"./kk":47772,"./kk.js":47772,"./km":18758,"./km.js":18758,"./kn":79282,"./kn.js":79282,"./ko":33730,"./ko.js":33730,"./ku":1408,"./ku.js":1408,"./ky":33291,"./ky.js":33291,"./lb":36841,"./lb.js":36841,"./lo":55466,"./lo.js":55466,"./lt":57010,"./lt.js":57010,"./lv":37595,"./lv.js":37595,"./me":39861,"./me.js":39861,"./mi":35493,"./mi.js":35493,"./mk":95966,"./mk.js":95966,"./ml":87341,"./ml.js":87341,"./mn":5115,"./mn.js":5115,"./mr":10370,"./mr.js":10370,"./ms":9847,"./ms-my":41237,"./ms-my.js":41237,"./ms.js":9847,"./mt":72126,"./mt.js":72126,"./my":56165,"./my.js":56165,"./nb":64924,"./nb.js":64924,"./ne":16744,"./ne.js":16744,"./nl":93901,"./nl-be":59814,"./nl-be.js":59814,"./nl.js":93901,"./nn":83877,"./nn.js":83877,"./oc-lnc":92135,"./oc-lnc.js":92135,"./pa-in":15858,"./pa-in.js":15858,"./pl":64495,"./pl.js":64495,"./pt":89520,"./pt-br":57971,"./pt-br.js":57971,"./pt.js":89520,"./ro":96459,"./ro.js":96459,"./ru":21793,"./ru.js":21793,"./sd":40950,"./sd.js":40950,"./se":10490,"./se.js":10490,"./si":90124,"./si.js":90124,"./sk":64249,"./sk.js":64249,"./sl":14985,"./sl.js":14985,"./sq":51104,"./sq.js":51104,"./sr":49131,"./sr-cyrl":79915,"./sr-cyrl.js":79915,"./sr.js":49131,"./ss":85893,"./ss.js":85893,"./sv":98760,"./sv.js":98760,"./sw":91172,"./sw.js":91172,"./ta":27333,"./ta.js":27333,"./te":23110,"./te.js":23110,"./tet":52095,"./tet.js":52095,"./tg":27321,"./tg.js":27321,"./th":9041,"./th.js":9041,"./tk":19005,"./tk.js":19005,"./tl-ph":75768,"./tl-ph.js":75768,"./tlh":89444,"./tlh.js":89444,"./tr":72397,"./tr.js":72397,"./tzl":28254,"./tzl.js":28254,"./tzm":51106,"./tzm-latn":30699,"./tzm-latn.js":30699,"./tzm.js":51106,"./ug-cn":9288,"./ug-cn.js":9288,"./uk":67691,"./uk.js":67691,"./ur":13795,"./ur.js":13795,"./uz":6791,"./uz-latn":60588,"./uz-latn.js":60588,"./uz.js":6791,"./vi":65666,"./vi.js":65666,"./x-pseudo":14378,"./x-pseudo.js":14378,"./yo":75805,"./yo.js":75805,"./zh-cn":83839,"./zh-cn.js":83839,"./zh-hk":55726,"./zh-hk.js":55726,"./zh-mo":99807,"./zh-mo.js":99807,"./zh-tw":74152,"./zh-tw.js":74152};function i(t){var e=o(t);return n(e)}function o(t){if(!n.o(r,t)){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e}return r[t]}i.keys=function(){return Object.keys(r)},i.resolve=o,t.exports=i,i.id=46700},24654:function(){},52361:function(){},94616:function(){},59050:function(t,e,n){"use strict";n.r(e),n.d(e,{VERSION:function(){return i},after:function(){return Ie},all:function(){return tn},allKeys:function(){return gt},any:function(){return en},assign:function(){return It},before:function(){return Fe},bind:function(){return Ae},bindAll:function(){return ke},chain:function(){return ye},chunk:function(){return Un},clone:function(){return Ut},collect:function(){return Ke},compact:function(){return En},compose:function(){return Le},constant:function(){return X},contains:function(){return nn},countBy:function(){return vn},create:function(){return Rt},debounce:function(){return Te},default:function(){return Hn},defaults:function(){return Ft},defer:function(){return Oe},delay:function(){return Ee},detect:function(){return Ve},difference:function(){return jn},drop:function(){return kn},each:function(){return Ge},escape:function(){return ae},every:function(){return tn},extend:function(){return Lt},extendOwn:function(){return It},filter:function(){return Xe},find:function(){return Ve},findIndex:function(){return Me},findKey:function(){return Re},findLastIndex:function(){return Be},findWhere:function(){return Ye},first:function(){return Cn},flatten:function(){return On},foldl:function(){return We},foldr:function(){return Je},forEach:function(){return Ge},functions:function(){return Nt},get:function(){return Ht},groupBy:function(){return mn},has:function(){return qt},head:function(){return Cn},identity:function(){return Vt},include:function(){return nn},includes:function(){return nn},indexBy:function(){return gn},indexOf:function(){return He},initial:function(){return _n},inject:function(){return We},intersection:function(){return Ln},invert:function(){return Tt},invoke:function(){return rn},isArguments:function(){return Z},isArray:function(){return Y},isArrayBuffer:function(){return R},isBoolean:function(){return O},isDataView:function(){return V},isDate:function(){return L},isElement:function(){return j},isEmpty:function(){return lt},isEqual:function(){return mt},isError:function(){return F},isFinite:function(){return W},isFunction:function(){return B},isMap:function(){return Ct},isMatch:function(){return ut},isNaN:function(){return J},isNull:function(){return P},isNumber:function(){return S},isObject:function(){return k},isRegExp:function(){return I},isSet:function(){return Pt},isString:function(){return N},isSymbol:function(){return $},isTypedArray:function(){return it},isUndefined:function(){return E},isWeakMap:function(){return kt},isWeakSet:function(){return Et},iteratee:function(){return Wt},keys:function(){return st},last:function(){return Pn},lastIndexOf:function(){return qe},map:function(){return Ke},mapObject:function(){return Xt},matcher:function(){return Yt},matches:function(){return Yt},max:function(){return sn},memoize:function(){return Pe},methods:function(){return Nt},min:function(){return ln},mixin:function(){return Bn},negate:function(){return Se},noop:function(){return Qt},now:function(){return re},object:function(){return $n},omit:function(){return An},once:function(){return $e},pairs:function(){return jt},partial:function(){return xe},partition:function(){return yn},pick:function(){return xn},pluck:function(){return on},property:function(){return Gt},propertyOf:function(){return te},random:function(){return ne},range:function(){return Rn},reduce:function(){return We},reduceRight:function(){return Je},reject:function(){return Qe},rest:function(){return kn},restArguments:function(){return C},result:function(){return me},sample:function(){return fn},select:function(){return Xe},shuffle:function(){return dn},size:function(){return bn},some:function(){return en},sortBy:function(){return hn},sortedIndex:function(){return ze},tail:function(){return kn},take:function(){return Cn},tap:function(){return Mt},template:function(){return pe},templateSettings:function(){return le},throttle:function(){return je},times:function(){return ee},toArray:function(){return cn},toPath:function(){return Bt},transpose:function(){return In},unescape:function(){return se},union:function(){return Sn},uniq:function(){return Nn},unique:function(){return Nn},uniqueId:function(){return ve},unzip:function(){return In},values:function(){return Ot},where:function(){return an},without:function(){return Tn},wrap:function(){return Ne},zip:function(){return Fn}});var r={};n.r(r),n.d(r,{VERSION:function(){return i},after:function(){return Ie},all:function(){return tn},allKeys:function(){return gt},any:function(){return en},assign:function(){return It},before:function(){return Fe},bind:function(){return Ae},bindAll:function(){return ke},chain:function(){return ye},chunk:function(){return Un},clone:function(){return Ut},collect:function(){return Ke},compact:function(){return En},compose:function(){return Le},constant:function(){return X},contains:function(){return nn},countBy:function(){return vn},create:function(){return Rt},debounce:function(){return Te},default:function(){return zn},defaults:function(){return Ft},defer:function(){return Oe},delay:function(){return Ee},detect:function(){return Ve},difference:function(){return jn},drop:function(){return kn},each:function(){return Ge},escape:function(){return ae},every:function(){return tn},extend:function(){return Lt},extendOwn:function(){return It},filter:function(){return Xe},find:function(){return Ve},findIndex:function(){return Me},findKey:function(){return Re},findLastIndex:function(){return Be},findWhere:function(){return Ye},first:function(){return Cn},flatten:function(){return On},foldl:function(){return We},foldr:function(){return Je},forEach:function(){return Ge},functions:function(){return Nt},get:function(){return Ht},groupBy:function(){return mn},has:function(){return qt},head:function(){return Cn},identity:function(){return Vt},include:function(){return nn},includes:function(){return nn},indexBy:function(){return gn},indexOf:function(){return He},initial:function(){return _n},inject:function(){return We},intersection:function(){return Ln},invert:function(){return Tt},invoke:function(){return rn},isArguments:function(){return Z},isArray:function(){return Y},isArrayBuffer:function(){return R},isBoolean:function(){return O},isDataView:function(){return V},isDate:function(){return L},isElement:function(){return j},isEmpty:function(){return lt},isEqual:function(){return mt},isError:function(){return F},isFinite:function(){return W},isFunction:function(){return B},isMap:function(){return Ct},isMatch:function(){return ut},isNaN:function(){return J},isNull:function(){return P},isNumber:function(){return S},isObject:function(){return k},isRegExp:function(){return I},isSet:function(){return Pt},isString:function(){return N},isSymbol:function(){return $},isTypedArray:function(){return it},isUndefined:function(){return E},isWeakMap:function(){return kt},isWeakSet:function(){return Et},iteratee:function(){return Wt},keys:function(){return st},last:function(){return Pn},lastIndexOf:function(){return qe},map:function(){return Ke},mapObject:function(){return Xt},matcher:function(){return Yt},matches:function(){return Yt},max:function(){return sn},memoize:function(){return Pe},methods:function(){return Nt},min:function(){return ln},mixin:function(){return Bn},negate:function(){return Se},noop:function(){return Qt},now:function(){return re},object:function(){return $n},omit:function(){return An},once:function(){return $e},pairs:function(){return jt},partial:function(){return xe},partition:function(){return yn},pick:function(){return xn},pluck:function(){return on},property:function(){return Gt},propertyOf:function(){return te},random:function(){return ne},range:function(){return Rn},reduce:function(){return We},reduceRight:function(){return Je},reject:function(){return Qe},rest:function(){return kn},restArguments:function(){return C},result:function(){return me},sample:function(){return fn},select:function(){return Xe},shuffle:function(){return dn},size:function(){return bn},some:function(){return en},sortBy:function(){return hn},sortedIndex:function(){return ze},tail:function(){return kn},take:function(){return Cn},tap:function(){return Mt},template:function(){return pe},templateSettings:function(){return le},throttle:function(){return je},times:function(){return ee},toArray:function(){return cn},toPath:function(){return Bt},transpose:function(){return In},unescape:function(){return se},union:function(){return Sn},uniq:function(){return Nn},unique:function(){return Nn},uniqueId:function(){return ve},unzip:function(){return In},values:function(){return Ot},where:function(){return an},without:function(){return Tn},wrap:function(){return Ne},zip:function(){return Fn}});var i="1.13.6",o="object"==typeof self&&self.self===self&&self||"object"==typeof global&&global.global===global&&global||Function("return this")()||{},a=Array.prototype,s=Object.prototype,l="undefined"!=typeof Symbol?Symbol.prototype:null,u=a.push,c=a.slice,f=s.toString,d=s.hasOwnProperty,h="undefined"!=typeof ArrayBuffer,p="undefined"!=typeof DataView,m=Array.isArray,g=Object.keys,v=Object.create,y=h&&ArrayBuffer.isView,b=isNaN,w=isFinite,x=!{toString:null}.propertyIsEnumerable("toString"),A=["valueOf","isPrototypeOf","toString","propertyIsEnumerable","hasOwnProperty","toLocaleString"],_=Math.pow(2,53)-1;function C(t,e){return e=null==e?t.length-1:+e,function(){for(var n=Math.max(arguments.length-e,0),r=Array(n),i=0;i<n;i++)r[i]=arguments[i+e];switch(e){case 0:return t.call(this,r);case 1:return t.call(this,arguments[0],r);case 2:return t.call(this,arguments[0],arguments[1],r)}var o=Array(e+1);for(i=0;i<e;i++)o[i]=arguments[i];return o[e]=r,t.apply(this,o)}}function k(t){var e=typeof t;return"function"===e||"object"===e&&!!t}function P(t){return null===t}function E(t){return void 0===t}function O(t){return!0===t||!1===t||"[object Boolean]"===f.call(t)}function j(t){return!(!t||1!==t.nodeType)}function T(t){var e="[object "+t+"]";return function(t){return f.call(t)===e}}var N=T("String"),S=T("Number"),L=T("Date"),I=T("RegExp"),F=T("Error"),$=T("Symbol"),R=T("ArrayBuffer"),U=T("Function"),M=o.document&&o.document.childNodes;"object"!=typeof Int8Array&&"function"!=typeof M&&(U=function(t){return"function"==typeof t||!1});var B=U,z=T("Object"),D=p&&z(new DataView(new ArrayBuffer(8))),H="undefined"!=typeof Map&&z(new Map),q=T("DataView"),V=D?function(t){return null!=t&&B(t.getInt8)&&R(t.buffer)}:q,Y=m||T("Array");function G(t,e){return null!=t&&d.call(t,e)}var K=T("Arguments");!function(){K(arguments)||(K=function(t){return G(t,"callee")})}();var Z=K;function W(t){return!$(t)&&w(t)&&!isNaN(parseFloat(t))}function J(t){return S(t)&&b(t)}function X(t){return function(){return t}}function Q(t){return function(e){var n=t(e);return"number"==typeof n&&n>=0&&n<=_}}function tt(t){return function(e){return null==e?void 0:e[t]}}var et=tt("byteLength"),nt=Q(et),rt=/\[object ((I|Ui)nt(8|16|32)|Float(32|64)|Uint8Clamped|Big(I|Ui)nt64)Array\]/,it=h?function(t){return y?y(t)&&!V(t):nt(t)&&rt.test(f.call(t))}:X(!1),ot=tt("length");function at(t,e){e=function(t){for(var e={},n=t.length,r=0;r<n;++r)e[t[r]]=!0;return{contains:function(t){return!0===e[t]},push:function(n){return e[n]=!0,t.push(n)}}}(e);var n=A.length,r=t.constructor,i=B(r)&&r.prototype||s,o="constructor";for(G(t,o)&&!e.contains(o)&&e.push(o);n--;)(o=A[n])in t&&t[o]!==i[o]&&!e.contains(o)&&e.push(o)}function st(t){if(!k(t))return[];if(g)return g(t);var e=[];for(var n in t)G(t,n)&&e.push(n);return x&&at(t,e),e}function lt(t){if(null==t)return!0;var e=ot(t);return"number"==typeof e&&(Y(t)||N(t)||Z(t))?0===e:0===ot(st(t))}function ut(t,e){var n=st(e),r=n.length;if(null==t)return!r;for(var i=Object(t),o=0;o<r;o++){var a=n[o];if(e[a]!==i[a]||!(a in i))return!1}return!0}function ct(t){return t instanceof ct?t:this instanceof ct?void(this._wrapped=t):new ct(t)}function ft(t){return new Uint8Array(t.buffer||t,t.byteOffset||0,et(t))}ct.VERSION=i,ct.prototype.value=function(){return this._wrapped},ct.prototype.valueOf=ct.prototype.toJSON=ct.prototype.value,ct.prototype.toString=function(){return String(this._wrapped)};var dt="[object DataView]";function ht(t,e,n,r){if(t===e)return 0!==t||1/t==1/e;if(null==t||null==e)return!1;if(t!=t)return e!=e;var i=typeof t;return("function"===i||"object"===i||"object"==typeof e)&&pt(t,e,n,r)}function pt(t,e,n,r){t instanceof ct&&(t=t._wrapped),e instanceof ct&&(e=e._wrapped);var i=f.call(t);if(i!==f.call(e))return!1;if(D&&"[object Object]"==i&&V(t)){if(!V(e))return!1;i=dt}switch(i){case"[object RegExp]":case"[object String]":return""+t==""+e;case"[object Number]":return+t!=+t?+e!=+e:0==+t?1/+t==1/e:+t==+e;case"[object Date]":case"[object Boolean]":return+t==+e;case"[object Symbol]":return l.valueOf.call(t)===l.valueOf.call(e);case"[object ArrayBuffer]":case dt:return pt(ft(t),ft(e),n,r)}var o="[object Array]"===i;if(!o&&it(t)){if(et(t)!==et(e))return!1;if(t.buffer===e.buffer&&t.byteOffset===e.byteOffset)return!0;o=!0}if(!o){if("object"!=typeof t||"object"!=typeof e)return!1;var a=t.constructor,s=e.constructor;if(a!==s&&!(B(a)&&a instanceof a&&B(s)&&s instanceof s)&&"constructor"in t&&"constructor"in e)return!1}r=r||[];for(var u=(n=n||[]).length;u--;)if(n[u]===t)return r[u]===e;if(n.push(t),r.push(e),o){if((u=t.length)!==e.length)return!1;for(;u--;)if(!ht(t[u],e[u],n,r))return!1}else{var c,d=st(t);if(u=d.length,st(e).length!==u)return!1;for(;u--;)if(!G(e,c=d[u])||!ht(t[c],e[c],n,r))return!1}return n.pop(),r.pop(),!0}function mt(t,e){return ht(t,e)}function gt(t){if(!k(t))return[];var e=[];for(var n in t)e.push(n);return x&&at(t,e),e}function vt(t){var e=ot(t);return function(n){if(null==n)return!1;var r=gt(n);if(ot(r))return!1;for(var i=0;i<e;i++)if(!B(n[t[i]]))return!1;return t!==At||!B(n[yt])}}var yt="forEach",bt=["clear","delete"],wt=["get","has","set"],xt=bt.concat(yt,wt),At=bt.concat(wt),_t=["add"].concat(bt,yt,"has"),Ct=H?vt(xt):T("Map"),kt=H?vt(At):T("WeakMap"),Pt=H?vt(_t):T("Set"),Et=T("WeakSet");function Ot(t){for(var e=st(t),n=e.length,r=Array(n),i=0;i<n;i++)r[i]=t[e[i]];return r}function jt(t){for(var e=st(t),n=e.length,r=Array(n),i=0;i<n;i++)r[i]=[e[i],t[e[i]]];return r}function Tt(t){for(var e={},n=st(t),r=0,i=n.length;r<i;r++)e[t[n[r]]]=n[r];return e}function Nt(t){var e=[];for(var n in t)B(t[n])&&e.push(n);return e.sort()}function St(t,e){return function(n){var r=arguments.length;if(e&&(n=Object(n)),r<2||null==n)return n;for(var i=1;i<r;i++)for(var o=arguments[i],a=t(o),s=a.length,l=0;l<s;l++){var u=a[l];e&&void 0!==n[u]||(n[u]=o[u])}return n}}var Lt=St(gt),It=St(st),Ft=St(gt,!0);function $t(t){if(!k(t))return{};if(v)return v(t);var e=function(){};e.prototype=t;var n=new e;return e.prototype=null,n}function Rt(t,e){var n=$t(t);return e&&It(n,e),n}function Ut(t){return k(t)?Y(t)?t.slice():Lt({},t):t}function Mt(t,e){return e(t),t}function Bt(t){return Y(t)?t:[t]}function zt(t){return ct.toPath(t)}function Dt(t,e){for(var n=e.length,r=0;r<n;r++){if(null==t)return;t=t[e[r]]}return n?t:void 0}function Ht(t,e,n){var r=Dt(t,zt(e));return E(r)?n:r}function qt(t,e){for(var n=(e=zt(e)).length,r=0;r<n;r++){var i=e[r];if(!G(t,i))return!1;t=t[i]}return!!n}function Vt(t){return t}function Yt(t){return t=It({},t),function(e){return ut(e,t)}}function Gt(t){return t=zt(t),function(e){return Dt(e,t)}}function Kt(t,e,n){if(void 0===e)return t;switch(null==n?3:n){case 1:return function(n){return t.call(e,n)};case 3:return function(n,r,i){return t.call(e,n,r,i)};case 4:return function(n,r,i,o){return t.call(e,n,r,i,o)}}return function(){return t.apply(e,arguments)}}function Zt(t,e,n){return null==t?Vt:B(t)?Kt(t,e,n):k(t)&&!Y(t)?Yt(t):Gt(t)}function Wt(t,e){return Zt(t,e,1/0)}function Jt(t,e,n){return ct.iteratee!==Wt?ct.iteratee(t,e):Zt(t,e,n)}function Xt(t,e,n){e=Jt(e,n);for(var r=st(t),i=r.length,o={},a=0;a<i;a++){var s=r[a];o[s]=e(t[s],s,t)}return o}function Qt(){}function te(t){return null==t?Qt:function(e){return Ht(t,e)}}function ee(t,e,n){var r=Array(Math.max(0,t));e=Kt(e,n,1);for(var i=0;i<t;i++)r[i]=e(i);return r}function ne(t,e){return null==e&&(e=t,t=0),t+Math.floor(Math.random()*(e-t+1))}ct.toPath=Bt,ct.iteratee=Wt;var re=Date.now||function(){return(new Date).getTime()};function ie(t){var e=function(e){return t[e]},n="(?:"+st(t).join("|")+")",r=RegExp(n),i=RegExp(n,"g");return function(t){return t=null==t?"":""+t,r.test(t)?t.replace(i,e):t}}var oe={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;","`":"&#x60;"},ae=ie(oe),se=ie(Tt(oe)),le=ct.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g},ue=/(.)^/,ce={"'":"'","\\":"\\","\r":"r","\n":"n","\u2028":"u2028","\u2029":"u2029"},fe=/\\|'|\r|\n|\u2028|\u2029/g;function de(t){return"\\"+ce[t]}var he=/^\s*(\w|\$)+\s*$/;function pe(t,e,n){!e&&n&&(e=n),e=Ft({},e,ct.templateSettings);var r=RegExp([(e.escape||ue).source,(e.interpolate||ue).source,(e.evaluate||ue).source].join("|")+"|$","g"),i=0,o="__p+='";t.replace(r,(function(e,n,r,a,s){return o+=t.slice(i,s).replace(fe,de),i=s+e.length,n?o+="'+\n((__t=("+n+"))==null?'':_.escape(__t))+\n'":r?o+="'+\n((__t=("+r+"))==null?'':__t)+\n'":a&&(o+="';\n"+a+"\n__p+='"),e})),o+="';\n";var a,s=e.variable;if(s){if(!he.test(s))throw new Error("variable is not a bare identifier: "+s)}else o="with(obj||{}){\n"+o+"}\n",s="obj";o="var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');};\n"+o+"return __p;\n";try{a=new Function(s,"_",o)}catch(t){throw t.source=o,t}var l=function(t){return a.call(this,t,ct)};return l.source="function("+s+"){\n"+o+"}",l}function me(t,e,n){var r=(e=zt(e)).length;if(!r)return B(n)?n.call(t):n;for(var i=0;i<r;i++){var o=null==t?void 0:t[e[i]];void 0===o&&(o=n,i=r),t=B(o)?o.call(t):o}return t}var ge=0;function ve(t){var e=++ge+"";return t?t+e:e}function ye(t){var e=ct(t);return e._chain=!0,e}function be(t,e,n,r,i){if(!(r instanceof e))return t.apply(n,i);var o=$t(t.prototype),a=t.apply(o,i);return k(a)?a:o}var we=C((function(t,e){var n=we.placeholder,r=function(){for(var i=0,o=e.length,a=Array(o),s=0;s<o;s++)a[s]=e[s]===n?arguments[i++]:e[s];for(;i<arguments.length;)a.push(arguments[i++]);return be(t,r,this,this,a)};return r}));we.placeholder=ct;var xe=we,Ae=C((function(t,e,n){if(!B(t))throw new TypeError("Bind must be called on a function");var r=C((function(i){return be(t,r,e,this,n.concat(i))}));return r})),_e=Q(ot);function Ce(t,e,n,r){if(r=r||[],e||0===e){if(e<=0)return r.concat(t)}else e=1/0;for(var i=r.length,o=0,a=ot(t);o<a;o++){var s=t[o];if(_e(s)&&(Y(s)||Z(s)))if(e>1)Ce(s,e-1,n,r),i=r.length;else for(var l=0,u=s.length;l<u;)r[i++]=s[l++];else n||(r[i++]=s)}return r}var ke=C((function(t,e){var n=(e=Ce(e,!1,!1)).length;if(n<1)throw new Error("bindAll must be passed function names");for(;n--;){var r=e[n];t[r]=Ae(t[r],t)}return t}));function Pe(t,e){var n=function(r){var i=n.cache,o=""+(e?e.apply(this,arguments):r);return G(i,o)||(i[o]=t.apply(this,arguments)),i[o]};return n.cache={},n}var Ee=C((function(t,e,n){return setTimeout((function(){return t.apply(null,n)}),e)})),Oe=xe(Ee,ct,1);function je(t,e,n){var r,i,o,a,s=0;n||(n={});var l=function(){s=!1===n.leading?0:re(),r=null,a=t.apply(i,o),r||(i=o=null)},u=function(){var u=re();s||!1!==n.leading||(s=u);var c=e-(u-s);return i=this,o=arguments,c<=0||c>e?(r&&(clearTimeout(r),r=null),s=u,a=t.apply(i,o),r||(i=o=null)):r||!1===n.trailing||(r=setTimeout(l,c)),a};return u.cancel=function(){clearTimeout(r),s=0,r=i=o=null},u}function Te(t,e,n){var r,i,o,a,s,l=function(){var u=re()-i;e>u?r=setTimeout(l,e-u):(r=null,n||(a=t.apply(s,o)),r||(o=s=null))},u=C((function(u){return s=this,o=u,i=re(),r||(r=setTimeout(l,e),n&&(a=t.apply(s,o))),a}));return u.cancel=function(){clearTimeout(r),r=o=s=null},u}function Ne(t,e){return xe(e,t)}function Se(t){return function(){return!t.apply(this,arguments)}}function Le(){var t=arguments,e=t.length-1;return function(){for(var n=e,r=t[e].apply(this,arguments);n--;)r=t[n].call(this,r);return r}}function Ie(t,e){return function(){if(--t<1)return e.apply(this,arguments)}}function Fe(t,e){var n;return function(){return--t>0&&(n=e.apply(this,arguments)),t<=1&&(e=null),n}}var $e=xe(Fe,2);function Re(t,e,n){e=Jt(e,n);for(var r,i=st(t),o=0,a=i.length;o<a;o++)if(e(t[r=i[o]],r,t))return r}function Ue(t){return function(e,n,r){n=Jt(n,r);for(var i=ot(e),o=t>0?0:i-1;o>=0&&o<i;o+=t)if(n(e[o],o,e))return o;return-1}}var Me=Ue(1),Be=Ue(-1);function ze(t,e,n,r){for(var i=(n=Jt(n,r,1))(e),o=0,a=ot(t);o<a;){var s=Math.floor((o+a)/2);n(t[s])<i?o=s+1:a=s}return o}function De(t,e,n){return function(r,i,o){var a=0,s=ot(r);if("number"==typeof o)t>0?a=o>=0?o:Math.max(o+s,a):s=o>=0?Math.min(o+1,s):o+s+1;else if(n&&o&&s)return r[o=n(r,i)]===i?o:-1;if(i!=i)return(o=e(c.call(r,a,s),J))>=0?o+a:-1;for(o=t>0?a:s-1;o>=0&&o<s;o+=t)if(r[o]===i)return o;return-1}}var He=De(1,Me,ze),qe=De(-1,Be);function Ve(t,e,n){var r=(_e(t)?Me:Re)(t,e,n);if(void 0!==r&&-1!==r)return t[r]}function Ye(t,e){return Ve(t,Yt(e))}function Ge(t,e,n){var r,i;if(e=Kt(e,n),_e(t))for(r=0,i=t.length;r<i;r++)e(t[r],r,t);else{var o=st(t);for(r=0,i=o.length;r<i;r++)e(t[o[r]],o[r],t)}return t}function Ke(t,e,n){e=Jt(e,n);for(var r=!_e(t)&&st(t),i=(r||t).length,o=Array(i),a=0;a<i;a++){var s=r?r[a]:a;o[a]=e(t[s],s,t)}return o}function Ze(t){return function(e,n,r,i){var o=arguments.length>=3;return function(e,n,r,i){var o=!_e(e)&&st(e),a=(o||e).length,s=t>0?0:a-1;for(i||(r=e[o?o[s]:s],s+=t);s>=0&&s<a;s+=t){var l=o?o[s]:s;r=n(r,e[l],l,e)}return r}(e,Kt(n,i,4),r,o)}}var We=Ze(1),Je=Ze(-1);function Xe(t,e,n){var r=[];return e=Jt(e,n),Ge(t,(function(t,n,i){e(t,n,i)&&r.push(t)})),r}function Qe(t,e,n){return Xe(t,Se(Jt(e)),n)}function tn(t,e,n){e=Jt(e,n);for(var r=!_e(t)&&st(t),i=(r||t).length,o=0;o<i;o++){var a=r?r[o]:o;if(!e(t[a],a,t))return!1}return!0}function en(t,e,n){e=Jt(e,n);for(var r=!_e(t)&&st(t),i=(r||t).length,o=0;o<i;o++){var a=r?r[o]:o;if(e(t[a],a,t))return!0}return!1}function nn(t,e,n,r){return _e(t)||(t=Ot(t)),("number"!=typeof n||r)&&(n=0),He(t,e,n)>=0}var rn=C((function(t,e,n){var r,i;return B(e)?i=e:(e=zt(e),r=e.slice(0,-1),e=e[e.length-1]),Ke(t,(function(t){var o=i;if(!o){if(r&&r.length&&(t=Dt(t,r)),null==t)return;o=t[e]}return null==o?o:o.apply(t,n)}))}));function on(t,e){return Ke(t,Gt(e))}function an(t,e){return Xe(t,Yt(e))}function sn(t,e,n){var r,i,o=-1/0,a=-1/0;if(null==e||"number"==typeof e&&"object"!=typeof t[0]&&null!=t)for(var s=0,l=(t=_e(t)?t:Ot(t)).length;s<l;s++)null!=(r=t[s])&&r>o&&(o=r);else e=Jt(e,n),Ge(t,(function(t,n,r){((i=e(t,n,r))>a||i===-1/0&&o===-1/0)&&(o=t,a=i)}));return o}function ln(t,e,n){var r,i,o=1/0,a=1/0;if(null==e||"number"==typeof e&&"object"!=typeof t[0]&&null!=t)for(var s=0,l=(t=_e(t)?t:Ot(t)).length;s<l;s++)null!=(r=t[s])&&r<o&&(o=r);else e=Jt(e,n),Ge(t,(function(t,n,r){((i=e(t,n,r))<a||i===1/0&&o===1/0)&&(o=t,a=i)}));return o}var un=/[^\ud800-\udfff]|[\ud800-\udbff][\udc00-\udfff]|[\ud800-\udfff]/g;function cn(t){return t?Y(t)?c.call(t):N(t)?t.match(un):_e(t)?Ke(t,Vt):Ot(t):[]}function fn(t,e,n){if(null==e||n)return _e(t)||(t=Ot(t)),t[ne(t.length-1)];var r=cn(t),i=ot(r);e=Math.max(Math.min(e,i),0);for(var o=i-1,a=0;a<e;a++){var s=ne(a,o),l=r[a];r[a]=r[s],r[s]=l}return r.slice(0,e)}function dn(t){return fn(t,1/0)}function hn(t,e,n){var r=0;return e=Jt(e,n),on(Ke(t,(function(t,n,i){return{value:t,index:r++,criteria:e(t,n,i)}})).sort((function(t,e){var n=t.criteria,r=e.criteria;if(n!==r){if(n>r||void 0===n)return 1;if(n<r||void 0===r)return-1}return t.index-e.index})),"value")}function pn(t,e){return function(n,r,i){var o=e?[[],[]]:{};return r=Jt(r,i),Ge(n,(function(e,i){var a=r(e,i,n);t(o,e,a)})),o}}var mn=pn((function(t,e,n){G(t,n)?t[n].push(e):t[n]=[e]})),gn=pn((function(t,e,n){t[n]=e})),vn=pn((function(t,e,n){G(t,n)?t[n]++:t[n]=1})),yn=pn((function(t,e,n){t[n?0:1].push(e)}),!0);function bn(t){return null==t?0:_e(t)?t.length:st(t).length}function wn(t,e,n){return e in n}var xn=C((function(t,e){var n={},r=e[0];if(null==t)return n;B(r)?(e.length>1&&(r=Kt(r,e[1])),e=gt(t)):(r=wn,e=Ce(e,!1,!1),t=Object(t));for(var i=0,o=e.length;i<o;i++){var a=e[i],s=t[a];r(s,a,t)&&(n[a]=s)}return n})),An=C((function(t,e){var n,r=e[0];return B(r)?(r=Se(r),e.length>1&&(n=e[1])):(e=Ke(Ce(e,!1,!1),String),r=function(t,n){return!nn(e,n)}),xn(t,r,n)}));function _n(t,e,n){return c.call(t,0,Math.max(0,t.length-(null==e||n?1:e)))}function Cn(t,e,n){return null==t||t.length<1?null==e||n?void 0:[]:null==e||n?t[0]:_n(t,t.length-e)}function kn(t,e,n){return c.call(t,null==e||n?1:e)}function Pn(t,e,n){return null==t||t.length<1?null==e||n?void 0:[]:null==e||n?t[t.length-1]:kn(t,Math.max(0,t.length-e))}function En(t){return Xe(t,Boolean)}function On(t,e){return Ce(t,e,!1)}var jn=C((function(t,e){return e=Ce(e,!0,!0),Xe(t,(function(t){return!nn(e,t)}))})),Tn=C((function(t,e){return jn(t,e)}));function Nn(t,e,n,r){O(e)||(r=n,n=e,e=!1),null!=n&&(n=Jt(n,r));for(var i=[],o=[],a=0,s=ot(t);a<s;a++){var l=t[a],u=n?n(l,a,t):l;e&&!n?(a&&o===u||i.push(l),o=u):n?nn(o,u)||(o.push(u),i.push(l)):nn(i,l)||i.push(l)}return i}var Sn=C((function(t){return Nn(Ce(t,!0,!0))}));function Ln(t){for(var e=[],n=arguments.length,r=0,i=ot(t);r<i;r++){var o=t[r];if(!nn(e,o)){var a;for(a=1;a<n&&nn(arguments[a],o);a++);a===n&&e.push(o)}}return e}function In(t){for(var e=t&&sn(t,ot).length||0,n=Array(e),r=0;r<e;r++)n[r]=on(t,r);return n}var Fn=C(In);function $n(t,e){for(var n={},r=0,i=ot(t);r<i;r++)e?n[t[r]]=e[r]:n[t[r][0]]=t[r][1];return n}function Rn(t,e,n){null==e&&(e=t||0,t=0),n||(n=e<t?-1:1);for(var r=Math.max(Math.ceil((e-t)/n),0),i=Array(r),o=0;o<r;o++,t+=n)i[o]=t;return i}function Un(t,e){if(null==e||e<1)return[];for(var n=[],r=0,i=t.length;r<i;)n.push(c.call(t,r,r+=e));return n}function Mn(t,e){return t._chain?ct(e).chain():e}function Bn(t){return Ge(Nt(t),(function(e){var n=ct[e]=t[e];ct.prototype[e]=function(){var t=[this._wrapped];return u.apply(t,arguments),Mn(this,n.apply(ct,t))}})),ct}Ge(["pop","push","reverse","shift","sort","splice","unshift"],(function(t){var e=a[t];ct.prototype[t]=function(){var n=this._wrapped;return null!=n&&(e.apply(n,arguments),"shift"!==t&&"splice"!==t||0!==n.length||delete n[0]),Mn(this,n)}})),Ge(["concat","join","slice"],(function(t){var e=a[t];ct.prototype[t]=function(){var t=this._wrapped;return null!=t&&(t=e.apply(t,arguments)),Mn(this,t)}}));var zn=ct,Dn=Bn(r);Dn._=Dn;var Hn=Dn}},i={};function o(t){var e=i[t];if(void 0!==e)return e.exports;var n=i[t]={id:t,loaded:!1,exports:{}};return r[t].call(n.exports,n,n.exports,o),n.loaded=!0,n.exports}o.m=r,e=[],o.O=function(t,n,r,i){if(!n){var a=1/0;for(c=0;c<e.length;c++){n=e[c][0],r=e[c][1],i=e[c][2];for(var s=!0,l=0;l<n.length;l++)(!1&i||a>=i)&&Object.keys(o.O).every((function(t){return o.O[t](n[l])}))?n.splice(l--,1):(s=!1,i<a&&(a=i));if(s){e.splice(c--,1);var u=r();void 0!==u&&(t=u)}}return t}i=i||0;for(var c=e.length;c>0&&e[c-1][2]>i;c--)e[c]=e[c-1];e[c]=[n,r,i]},o.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return o.d(e,{a:e}),e},o.d=function(t,e){for(var n in e)o.o(e,n)&&!o.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:e[n]})},o.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),o.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},o.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},o.nmd=function(t){return t.paths=[],t.children||(t.children=[]),t},o.j=4577,function(){o.b=document.baseURI||self.location.href;var t={4577:0};o.O.j=function(e){return 0===t[e]};var e=function(e,n){var r,i,a=n[0],s=n[1],l=n[2],u=0;if(a.some((function(e){return 0!==t[e]}))){for(r in s)o.o(s,r)&&(o.m[r]=s[r]);if(l)var c=l(o)}for(e&&e(n);u<a.length;u++)i=a[u],o.o(t,i)&&t[i]&&t[i][0](),t[i]=0;return o.O(c)},n=self.webpackChunknextcloud=self.webpackChunknextcloud||[];n.forEach(e.bind(null,0)),n.push=e.bind(null,n.push.bind(n))}(),o.nc=void 0;var a=o.O(void 0,[7874],(function(){return o(55654)}));a=o.O(a)}();
+//# sourceMappingURL=core-login.js.map?v=5288e31baa4d6bb65bc1 \ No newline at end of file