prayercircle/dist/bundle.js
2021-03-03 12:41:21 +01:00

171 lines
29 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // 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 });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 0);
/******/ })
/************************************************************************/
/******/ ({
/***/ "./node_modules/js-helper/dist/client/ViewHelper.js":
/*!**********************************************************!*\
!*** ./node_modules/js-helper/dist/client/ViewHelper.js ***!
\**********************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
eval("\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ViewHelper = void 0;\nclass ViewHelper {\n /**\n * Entfernt alle Children eines Elements\n *\n * @param element\n * @returns {Node}\n */\n static removeAllChildren(element) {\n if (element instanceof Node) {\n while (element.firstChild) {\n element.removeChild(element.firstChild);\n }\n }\n return element;\n }\n /**\n * Moves the child-Nodes from one element to another\n * @param from\n * @param to\n * @returns {*}\n */\n static moveChildren(from, to) {\n let children = [];\n //Zwischenspeichern der Children, da removeChild die forEach-Schleife durcheinander bringt\n from.childNodes.forEach(child => {\n children.push(child);\n });\n children.forEach(child => {\n from.removeChild(child);\n to.appendChild(child);\n });\n return to;\n }\n static insertAfter(newChild, referenceChild) {\n const parent = referenceChild.parentNode;\n if (parent) {\n if (parent.lastChild === referenceChild) {\n parent.appendChild(newChild);\n }\n else {\n parent.insertBefore(newChild, referenceChild.nextSibling);\n }\n return true;\n }\n return false;\n }\n}\nexports.ViewHelper = ViewHelper;\n//# sourceMappingURL=ViewHelper.js.map\n\n//# sourceURL=webpack:///./node_modules/js-helper/dist/client/ViewHelper.js?");
/***/ }),
/***/ "./node_modules/js-helper/dist/shared/Helper.js":
/*!******************************************************!*\
!*** ./node_modules/js-helper/dist/shared/Helper.js ***!
\******************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
eval("\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Helper = void 0;\n/**\n * Eine Klasse mit häufig genutzten, nützlichen Funktionen\n */\nconst JsonHelper_1 = __webpack_require__(/*! ./JsonHelper */ \"./node_modules/js-helper/dist/shared/JsonHelper.js\");\nclass Helper {\n /**\n * Testet, ob eine Variable null oder Undefined ist\n *\n * @param variable\n * @returns {boolean}\n */\n static isNull(variable, ...args) {\n return Helper.isAllNull(...arguments);\n }\n static isAllNull(...args) {\n for (let i = 0; i < args.length; i++) {\n if (!(args[i] === null || args[i] === undefined)) {\n return false;\n }\n }\n return true;\n }\n static isAtLeastOneNull(...args) {\n return !Helper.isAllNull(...args);\n }\n /**\n * Testet, ob eine Variable nicht (null oder undefined) ist\n *\n * @param variable\n * @returns {boolean}\n */\n static isNotNull(variable, ...args) {\n return Helper.isAllNotNull(...arguments);\n }\n static isAllNotNull(...args) {\n for (let i = 0; i < args.length; i++) {\n if ((args[i] === null || args[i] === undefined)) {\n return false;\n }\n }\n return true;\n }\n static isAtLeastOneNotNull(...args) {\n return !Helper.isAllNull(...args);\n }\n /**\n * Gibt den ersten übergebenen Wert, der nicht (null oder undefined) ist, zurück\n *\n * @param val1\n * @param val2\n * @param args\n * @returns {*}\n */\n static nonNull(val1, val2, ...args) {\n for (let i = 0; i < arguments.length; i++) {\n if (Helper.isNotNull(arguments[i])) {\n return arguments[i];\n }\n }\n return null;\n }\n /**\n * Testet, ob der übergebene Index am Objekt gesetzt ist. Werden mehrere Indexes übergeben, so wird getestet,\n * ob die \"Index-Kette\" gesetzt ist.\n * Bsp.:\n * Helper.isSet({\"index1\":{\"index2\":value}}, \"index1\", \"index2\") ist wahr\n *\n * @param object\n * @param indexes\n * @returns {*}\n */\n static isSet(object, ...indexes) {\n if (Helper.isNotNull(object)) {\n if (indexes.length === 0) {\n return true;\n }\n return (Helper.isSet.apply(null, [object[indexes[0]]].concat(indexes.slice(1))));\n }\n return false;\n }\n /**\n * Testet, ob ein Wert null oder Leerstring, bzw nur aus leerzeichend bestehender String ist\n *\n * @param value\n * @returns {boolean}\n */\n static empty(value) {\n return (Helper.isNull(value) || (typeof value === 'string' && value.trim() === \"\"));\n }\n /**\n * Testet, ob ein Wert NICHT (null oder Leerstring, bzw nur aus leerzeichend bestehender String ist)\n *\n * @param value\n * @returns {boolean}\n */\n static notEmpty(value) {\n return !Helper.empty(value);\n }\n static arrayToObject(array, indexFunction) {\n let obj = {};\n array.forEach(val => {\n obj[indexFunction(val)] = val;\n });\n return obj;\n }\n /**\n * Deepcopies JSON\n *\n * @param obj\n * @returns {*}\n */\n static cloneJson(obj) {\n return JsonHelper_1.JsonHelper.deepCopy(obj);\n }\n /**\n * Erstellt ein FormData-Object von JSON-Data. Nützlich für fetch\n *\n * @param obj\n * @returns {FormData}\n */\n static formDataFromObject(obj) {\n let formData = new FormData();\n for (let k in obj) {\n formData.set(k, obj[k]);\n }\n return formData;\n }\n static shuffleArray(array) {\n let currentIndex = array.length, temporaryValue, randomIndex;\n // While there remain elements to shuffle...\n while (0 !== currentIndex) {\n // Pick a remaining element...\n randomIndex = Math.floor(Math.random() * currentIndex);\n currentIndex -= 1;\n // And swap it with the current element.\n temporaryValue = array[currentIndex];\n array[currentIndex] = array[randomIndex];\n array[randomIndex] = temporaryValue;\n }\n return array;\n }\n static padZero(n, width, z) {\n z = Helper.nonNull(z, '0');\n n = n + '';\n width = Helper.nonNull(width, 1);\n return n.length >= width ? n : new Array(width - n.length + 1).join(z) + n;\n }\n static deepEqual(a, b) {\n if (a === b) {\n return true;\n }\n if (typeof a === \"object\" && typeof b === \"object\") {\n let keysOfB = Object.keys(b);\n let childrenDeepEqual = Object.keys(a).every((key) => {\n let index = keysOfB.indexOf(key);\n if (index < 0) {\n return false;\n }\n keysOfB.splice(index, 1);\n return Helper.deepEqual(a[key], b[key]);\n });\n return (childrenDeepEqual && keysOfB.length === 0);\n }\n return false;\n }\n //Ältere evtl nützliche Funktionen\n static htmlspecialcharsDecode(text) {\n const map = {\n '&amp;': '&',\n '&#038;': \"&\",\n '&lt;': '<',\n '&gt;': '>',\n '&quot;': '\"',\n '&#039;': \"'\",\n '&#8217;': \"\",\n '&#8216;': \"\",\n '&#8211;': \"\",\n '&#8212;': \"—\",\n '&#8230;': \"…\",\n '&#8221;': '”'\n };\n if (Helper.isNotNull(text) && typeof text.replace === \"function\") {\n return text.replace(/\\&[\\w\\d\\#]{2,5}\\;/g, function (m) {\n return map[m];\n });\n }\n return text;\n }\n /**\n * Inverts the key-Values for an object\n * @param obj\n * @return {*}\n */\n static invertKeyValues(obj) {\n let new_obj = {};\n for (let prop in obj) {\n if (obj.hasOwnProperty(prop)) {\n new_obj[obj[prop]] = prop;\n }\n }\n return new_obj;\n }\n static asyncForEach(array, callback, runAsyncronous) {\n return __awaiter(this, void 0, void 0, function* () {\n runAsyncronous = Helper.nonNull(runAsyncronous, false);\n let validPromises = [];\n for (let i = 0; i < array.length; i++) {\n let index = i;\n let currentPromise = Promise.resolve(callback(array[index], index, array));\n if (!runAsyncronous) {\n yield currentPromise;\n }\n validPromises.push(currentPromise);\n }\n return Promise.all(validPromises);\n });\n }\n static escapeRegExp(str) {\n return str.replace(/[.*+?^${}()|[\\]\\\\]/g, \"\\\\$&\"); // $& means the whole matched string\n }\n static objectForEach(object, callback) {\n Object.keys(object).forEach(key => {\n callback(object[key], key, object);\n });\n }\n static toArray(object) {\n let res = [];\n for (let k in object) {\n res.push(object[k]);\n }\n return res;\n }\n static imageUrlIsEmpty(url) {\n return (Helper.isNull(url) || url.trim() === \"\" || url.trim() === \"data:\");\n }\n static newPromiseWithResolve() {\n let resolver = null;\n let rejecter = null;\n let promise = new Promise((resolve, reject) => {\n resolver = resolve;\n rejecter = reject;\n });\n promise[\"resolve\"] = resolver;\n promise[\"reject\"] = rejecter;\n return promise;\n }\n static isMobileApp() {\n return (typeof device !== \"undefined\" && device.platform !== \"browser\");\n }\n static toSnakeCase(camelCase) {\n return camelCase.replace(/([A-Z])/g, function (find, something, position) { return ((position > 0) ? \"_\" : \"\") + find[0].toLowerCase(); });\n }\n static wait(timeout, result) {\n return __awaiter(this, void 0, void 0, function* () {\n return new Promise(r => {\n setTimeout(() => {\n r(result);\n }, timeout);\n });\n });\n }\n static timeout(time, otherPromise, timeoutResult) {\n return __awaiter(this, void 0, void 0, function* () {\n return Promise.race([otherPromise, Helper.wait(time).then(() => {\n if (timeoutResult === undefined) {\n return Promise.reject();\n }\n else {\n return timeoutResult;\n }\n })]);\n });\n }\n}\nexports.Helper = Helper;\n//# sourceMappingURL=Helper.js.map\n\n//# sourceURL=webpack:///./node_modules/js-helper/dist/shared/Helper.js?");
/***/ }),
/***/ "./node_modules/js-helper/dist/shared/JsonHelper.js":
/*!**********************************************************!*\
!*** ./node_modules/js-helper/dist/shared/JsonHelper.js ***!
\**********************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
eval("\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.JsonHelper = void 0;\nconst Helper_1 = __webpack_require__(/*! ./Helper */ \"./node_modules/js-helper/dist/shared/Helper.js\");\nclass JsonHelper {\n static deepEqual(a, b) {\n if (a === b) {\n return true;\n }\n if (a === null || b === null) {\n return false;\n }\n // array deepEqual\n if (a instanceof Array && b instanceof Array && a.length === b.length) {\n return a[\"every\"]((obj, i) => {\n return JsonHelper.deepEqual(obj, b[i]);\n });\n }\n //date deepEqual\n if (a instanceof Date && b instanceof Date) {\n return a.getTime() === b.getTime();\n }\n // object deep copy\n if (typeof a === \"object\" && typeof b === \"object\") {\n let aKeys = Object.keys(a);\n let bKeys = Object.keys(b);\n return aKeys.length === bKeys.length && aKeys[\"every\"]((key) => {\n return Helper_1.Helper.isNotNull(b[key]) && JsonHelper.deepEqual(a[key], b[key]);\n });\n }\n //else is false (or not handled)\n return false;\n }\n /**\n * Deepcopies JSON\n *\n * @param obj\n * @returns {*}\n */\n static deepCopy(obj) {\n // https://stackoverflow.com/questions/4120475/how-to-create-and-clone-a-json-object/17502990#17502990\n let i;\n // basic type deep copy\n if (Helper_1.Helper.isNull(obj) || typeof obj !== 'object') {\n return obj;\n }\n // array deep copy\n if (obj instanceof Array) {\n let cloneA = [];\n for (i = 0; i < obj.length; ++i) {\n cloneA[i] = JsonHelper.deepCopy(obj[i]);\n }\n return cloneA;\n }\n if (obj instanceof Date) {\n return new Date(obj.getTime());\n }\n // object deep copy\n let cloneO = {};\n for (i in obj) {\n cloneO[i] = JsonHelper.deepCopy(obj[i]);\n }\n return cloneO;\n }\n static deepAssign(...objects) {\n if (objects.length > 0 && Array.isArray(objects)) {\n const result = [];\n objects.forEach(arr => result.push(...arr));\n return result;\n }\n const resultObj = {};\n objects.forEach(obj => {\n for (let i in obj) {\n if (resultObj[i] && typeof obj[i] === \"object\" && typeof resultObj[i] === \"object\") {\n resultObj[i] = JsonHelper.deepAssign(resultObj[i], obj[i]);\n }\n else {\n resultObj[i] = obj[i];\n }\n }\n });\n return resultObj;\n }\n static getDiff(a, b) {\n const result = {\n changed: {},\n added: {},\n removed: [],\n };\n // if (Array.isArray(a) && Array.isArray(b)){\n // const lengthA = a.length;\n // const lengthB = b.length;\n //\n // const minLength = Math.min(lengthA, lengthB);\n // for (let i = 0; i < minLength; i++){\n // const\n // }\n // }\n if ((typeof a !== \"object\" || typeof b !== \"object\")\n && (!Array.isArray(a) && !Array.isArray(b))) {\n if (a === b) {\n return null;\n }\n else {\n return { value: b };\n }\n }\n let hasChanged = false;\n let hasRemoved = false;\n let hasAdded = false;\n for (let i in a) {\n if (i in b) {\n const newVal = JsonHelper.getDiff(a[i], b[i]);\n if (newVal !== null) {\n result.changed[i] = newVal;\n hasChanged = true;\n }\n }\n else {\n result.removed.push(i);\n hasRemoved = true;\n }\n }\n for (let i in b) {\n if (!(i in a)) {\n result.added[i] = b[i];\n hasAdded = true;\n }\n }\n if (hasRemoved || hasAdded || hasChanged) {\n return result;\n }\n else {\n return null;\n }\n }\n static applyDiff(obj, diff) {\n if (!Array.isArray(diff.removed)) {\n debugger;\n }\n Object.keys(diff.changed).forEach(key => {\n if (\"value\" in diff.changed[key]) {\n obj[key] = diff.changed[key].value;\n }\n else {\n obj[key] = JsonHelper.applyDiff(obj[key], diff.changed[key]);\n }\n });\n diff.removed.forEach(rem => delete obj[rem]);\n Object.keys(diff.added).forEach(key => obj[key] = diff.added[key]);\n return obj;\n }\n}\nexports.JsonHelper = JsonHelper;\n//# sourceMappingURL=JsonHelper.js.map\n\n//# sourceURL=webpack:///./node_modules/js-helper/dist/shared/JsonHelper.js?");
/***/ }),
/***/ "./src/client/js/CircleManager.js":
/*!****************************************!*\
!*** ./src/client/js/CircleManager.js ***!
\****************************************/
/*! exports provided: CircleManager */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"CircleManager\", function() { return CircleManager; });\n/* harmony import */ var js_helper_dist_client_ViewHelper__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! js-helper/dist/client/ViewHelper */ \"./node_modules/js-helper/dist/client/ViewHelper.js\");\n/* harmony import */ var js_helper_dist_client_ViewHelper__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(js_helper_dist_client_ViewHelper__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var js_helper_dist_shared_Helper__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! js-helper/dist/shared/Helper */ \"./node_modules/js-helper/dist/shared/Helper.js\");\n/* harmony import */ var js_helper_dist_shared_Helper__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(js_helper_dist_shared_Helper__WEBPACK_IMPORTED_MODULE_1__);\n\n\n\nclass CircleManager {\n\n constructor(listSection, tableSection) {\n this._members = [];\n this._week = 0;\n\n this._inputTemplate = listSection.querySelector(\"#input-template\");\n this._inputTemplate.remove();\n this._inputTemplate.removeAttribute(\"id\");\n this._listContainer = listSection.querySelector(\"#list-container\");\n listSection.querySelector(\"#add-button\").addEventListener(\"click\", () => this.addMember());\n\n this._tableTemplate = tableSection.querySelector(\"#table-template\");\n this._tableTemplate.remove();\n this._tableTemplate.removeAttribute(\"id\");\n this._tableContainer = tableSection.querySelector(\"#table-container\");\n\n this._weekInput = tableSection.querySelector(\"#week-input\");\n tableSection.querySelector(\"#next-week\").addEventListener(\"click\", () => this.setWeek(this._week + 1));\n tableSection.querySelector(\"#previous-week\").addEventListener(\"click\", () => this.setWeek(this._week - 1));\n // this._weekInput.addEventListener(\"change\", this.setWeek(this._weekInput.value));\n this.load();\n this.setWeek(this._week);\n }\n\n setWeek(newWeek) {\n newWeek = parseInt(newWeek);\n if (!isNaN(newWeek)) {\n newWeek = Math.max(newWeek, 0);\n this._week = newWeek;\n this._weekInput.innerText = (this._week + 1);\n this.updateTables();\n this.save();\n }\n }\n\n save(){\n console.log(\"saving...\");\n localStorage.setItem(\"list\", JSON.stringify({\"week\": this._week, \"members\": this._members}));\n }\n\n load(){\n const jsonSavedata = localStorage.getItem(\"list\");\n console.log(\"liste\", jsonSavedata);\n if (jsonSavedata){\n const data = JSON.parse(jsonSavedata);\n this._week = data.week;\n this._members = data.members;\n this.updateList();\n this.updateTables();\n }\n }\n\n updateList() {\n js_helper_dist_client_ViewHelper__WEBPACK_IMPORTED_MODULE_0__[\"ViewHelper\"].removeAllChildren(this._listContainer);\n this._members.forEach((member, id) => {\n const memberElement = this._inputTemplate.cloneNode(true);\n memberElement.querySelector(\".delete-button\").addEventListener(\"click\", () => this.deleteMember(id))\n\n const inputElem =\n memberElement.querySelector(\".name\");\n inputElem.value = member;\n inputElem.addEventListener(\"input\", () => {\n this._members[id] = inputElem.value;\n this.updateTables();\n this.save();\n });\n this._listContainer.appendChild(memberElement);\n })\n }\n\n deleteMember(index) {\n if (index >= 0 && index < this._members.length) {\n this._members.splice(index, 1);\n this.updateList();\n this.updateTables();\n this.save();\n }\n }\n\n addMember(name) {\n name = js_helper_dist_shared_Helper__WEBPACK_IMPORTED_MODULE_1__[\"Helper\"].nonNull(name, \"\");\n this._members.push(name);\n this.updateList();\n this.updateTables();\n this.save();\n }\n\n updateTables() {\n if (this._members.length < 2) {\n return;\n }\n const tables = {};\n this._members.forEach((member, index) => {\n const listPrayers = [];\n const listPrayedBy = [];\n\n const otherMembers = this._members.filter((v, i) => i !== index);\n\n let prayersIndex = index - 1;\n let prayedIndex = index;\n\n const weekOffset = this._week * 7;\n prayersIndex += weekOffset;\n prayedIndex -= weekOffset;\n if (prayedIndex < 0) {\n prayedIndex += otherMembers.length * Math.floor(weekOffset / otherMembers.length);\n }\n\n for (let i = 0; i < 7; i++) {\n prayersIndex = (prayersIndex + 1) % otherMembers.length\n prayedIndex = (prayedIndex - 1 + otherMembers.length) % otherMembers.length;\n\n listPrayers.push(otherMembers[prayersIndex]);\n listPrayedBy.push(otherMembers[prayedIndex]);\n }\n\n tables[index] = {\"for\": listPrayers, \"by\": listPrayedBy}\n });\n\n js_helper_dist_client_ViewHelper__WEBPACK_IMPORTED_MODULE_0__[\"ViewHelper\"].removeAllChildren(this._tableContainer);\n Object.keys(tables).forEach(memberIndex => {\n const tableElement = this._tableTemplate.cloneNode(true);\n tableElement.querySelector(\".name\").innerText = this._members[memberIndex];\n tables[memberIndex].for.forEach((otherMember, index) => {\n tableElement.querySelector(\".for-\" + index).innerText = otherMember;\n });\n tables[memberIndex].by.forEach((otherMember, index) => {\n tableElement.querySelector(\".by-\" + index).innerText = otherMember;\n });\n\n this._tableContainer.appendChild(tableElement);\n });\n }\n}\n\n\n//# sourceURL=webpack:///./src/client/js/CircleManager.js?");
/***/ }),
/***/ "./src/client/js/index.js":
/*!********************************!*\
!*** ./src/client/js/index.js ***!
\********************************/
/*! no exports provided */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _sass_index_scss__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../sass/index.scss */ \"./src/client/sass/index.scss\");\n/* harmony import */ var _sass_index_scss__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_sass_index_scss__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _CircleManager__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./CircleManager */ \"./src/client/js/CircleManager.js\");\n\n\n\nconst listSegment = document.getElementById(\"list-section\");\nconst tableSegment = document.getElementById(\"table-section\");\n\nnew _CircleManager__WEBPACK_IMPORTED_MODULE_1__[\"CircleManager\"](listSegment, tableSegment);\n\n\n//# sourceURL=webpack:///./src/client/js/index.js?");
/***/ }),
/***/ "./src/client/sass/index.scss":
/*!************************************!*\
!*** ./src/client/sass/index.scss ***!
\************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
eval("// extracted by mini-css-extract-plugin\n\n//# sourceURL=webpack:///./src/client/sass/index.scss?");
/***/ }),
/***/ 0:
/*!**************************************!*\
!*** multi ./src/client/js/index.js ***!
\**************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
eval("module.exports = __webpack_require__(/*! /home/silas/Projekte/web/prayercircle/src/client/js/index.js */\"./src/client/js/index.js\");\n\n\n//# sourceURL=webpack:///multi_./src/client/js/index.js?");
/***/ })
/******/ });